1、软件方面
这是最大的区别了。引入了操作系统。为什么引入操作系统?有什么好处嘛?
1)方便、主要体现在后期的开发,即在操作系统上直接开发应用程序。不像单片机一样一切都要重新写。前期的操作系统移植工作,还是要专业人士来做。
2)安全、这是LINUX的一个特点。LINUX的内核与用户空间的内存管理分开,不会因为用户的单个程序错误而引起系统死掉。这在单片机的软件开发中没见到过。
3)高效、引入进程的管理调度系统,使系统运行更加高效。在传统的单片机开发中大多是基于中断的前后台技术,对多任务的管理有局限性。
2、硬件方面
现在的8位单片机技术硬件发展的也非常得快,也出现了许多功能非常强大的单片机。但是与32位ARM相比还是有些差距。
ARM芯片大多把SDRAM,LCD等控制器集成到片子当中。在8位机,大多要进行外扩。
总的来说,单片机是个微控制器,ARM显然已经是个微处理器了。
arm是单片机的一种,51也是,但arm的ROM和RAM远大于51,而且IO口功能和处理速度也是两个级别的,arm能上很多操作系统,51只能勉强上极其简单的实时操作系统,所以arm常用来开发手机等多媒体产品,51只能完成有限的实时控制功能,形象一点说,51和arm的等级差别就像手机和个人电脑的等级差别。
arm现在分为A R M三个系列,A面向高端,M主要面向低端,或者说白了就是单片机,现在比较流行的cortex-m3,区别的话,应该在于高端低端,和性能上面 ;stm32(cortex-m3内核)的低端的价格可以低到10块钱以下,价格非常的低廉,性能很强,而且有库函数的支持,开发的流程简化很多,理论上应该会替代,但是其他的单片机也有自己的优势,比如:51也有自己的优势,简单,使用的人多,价格更低,开发工具更多,MSP430的低功耗,各有各的优势,取不取代还要看市场,公司的推广。