单片机与arm有何异同?arm和单片机的区别

1、软件方面

这应该是最大的区别了。引入了操作系统。为什么引入操作系统?有什么好处嘛?

1)方便。主要体现在后期的开发,即在操作系统上直接开发应用程序。不像单片机一样一切都要重新写。前期的操作系统移植工作,还是要专业人士来做。

2)安全。这是LINUX的一个特点。LINUX的内核与用户空间的内存管理分开,不会因为用户的单个程序错误而引起系统死掉。这在单片机的软件开发中没见到过。

3)高效。引入进程的管理调度系统,使系统运行更加高效。在传统的单片机开发中大多是基于中断的前后台技术,对多任务的管理有局限性。

2、硬件方面

现在的8位单片机技术硬件发展的也非常得快,也出现了许多功能非常强大的单片机。但是与32arm相比还是有些差距吧。

arm芯片大多把SDRAM,LCD等控制器集成到片子当中。在8位机,大多要进行外扩。

总的来说,单片机是个微控制器,arm显然已经是个微处理器了。

单片机的字面意义就是单芯片微型计算机,是把处理器,存储器和必要的外部设备集成在一块半导体芯片上构成的一个微型计算机系统。单片机在实际应用中多用于控制,所以称为微控制器(Microcontroller Unit, MCU)更合适。

单片机中处理器通常只包含一个中央处理器(CPU)即可满足需求。一些高性能或有特别需求的单片机还可能包含数字信号处理器(DSP)或其它处理器核。

单片机的存储器包括只读存储器ROM和随机存储器RAM。ROM现在基本用的都是闪存(FLASH),许多单片机都提供了擦写FLASH的方法,供用户在程序中使用,FLASH已不再是传统意义中的ROM了,而更像是单片机的“固态硬盘”。

单片机的外部设备通常有定时器(timer,T,TIM),串行通信口(UART),数模转换器(ADC)和模数转换器(DAC),脉宽调制器(PWM)……等许多,是根据需要定制在芯片中的。毕竟外设的种类太多,而芯片面积有限,且出于成本考虑也不可能把所有的外设都集成到芯片中,而通常只将最常用的外设集于其上。外设中最常用的是定时器,几乎所有单片机都有。其次是串口(UART),相当多的单片机都有。一些更通用的单片机还会集成更多的设备或接口,比如集成电路内部通信接口(Ⅰ2C),同步串行口(SPⅠ)等。而用于电机类控制的单片机都有ADC和PWM。更高性能或特定需求的单片机还会有视频接口,液晶接口并集成了相应的处理器或控制器。当然,高性能,更通用也会带来高成本。所以选用单片机应根据需求综合考虑,而不可贪多求全。

ARM的英文全称是Advanced RISC Machines,即先进精简指令集处理器,是英国Acom计算机有限公司设计的一系列大名鼎鼎的微处理器的通称。因为业界都叫惯了ARM,所以这一系列微处理器都叫ARM处理器,而它的设计公司大家都叫ARM公司,它的本名知道的反而少了。

ARM公司本身并不生产微处理器,它只是将它设计的处理器以ⅠP核(也就是设计图,文档等知识产权)的形式授权给众多的半导体厂商如英特尔,意法半导体,三星等生产,半导体厂商根据需求和各自的优势等,集成相关的内存,外设等必要部件,生产出单片机或其它芯片进行销售。而ARM从中提取一定的授权费用养活和发展公司。

所以,确切地说,ARM跟单片机没有直接的关系。在单片机领域内,它只是一类单片机中包含的一种优秀的微处理器核。