1、软件方面
这应该是最大的差异了。引进了操作体系。为什么引进操作体系?有什么优点嘛?
1)便利。首要体现在后期的开发,即在操作体系上直接开发使用程序。不像单片机相同全部都要从头写。前期的操作体系移植作业,仍是要专业人士来做。
2)安全。这是LINUX的一个特征。LINUX的内核与用户空间的内存办理分隔,不会由于用户的单个程序过错而引起体系死掉。这在单片机的软件开发中没见到过。
3)高效。引进进程的办理调度体系,使体系运转愈加高效。在传统的单片机开发中大多是依据中止的前后台技能,对多使命的办理有局限性。
2、硬件方面
现在的8位单片机技能硬件开展的也十分得快,也呈现了许多功用十分强壮的单片机。可是与32arm比较仍是有些距离吧。
arm芯片大多把SDRAM,LCD等控制器集成到片子傍边。在8位机,大多要进行外扩。
总的来说,单片机是个微控制器,arm明显已经是个微处理器了。
引进嵌入式操作体系之后,可以完结许多单片机体系不能完结的功用。比方:嵌入式web服务器,java虚拟机等。也便是说,有许多免费的资源可以使用,上述两种服务便是比如。假设在单片机上开发这些功用可以幻想其间的难度。
初学者怎么挑选ARM开发硬件?
1. 假设你有做硬件和单片机的经历,主张自己做个最小体系板:假设你从没有做过ARM的开发,主张你一开始不要贪大求全,把一切的使用都做好,由于ARM的发动方法和dsp或单片机有所不同,往往会碰到各种问题,所以主张先布一个仅有Flash,SRAM或SDRAM、CPU、JTAG、和复位信号的小体系板,留出扩展接口。使最小体系可以正常运转,你的使命就完结了一半,好在arm的外围接口根本都是标准接口,假设你已有这些硬件的布线经历,这对你来讲是一件很容易的工作。
2. 动手写发动代码,依据硬件地址先写一个可以发动的小代码,包含以下部分:
初始化端口,屏蔽中止,把程序拷贝到SRAM中;完结代码的重映射;装备中止句柄,连接到C言语进口。或许你看到给你的一些示例程序傍边,bootloader会有许多东西,可是不要被这些杂乱的程序所困扰,由于你不是做开发板的,你的使命便是做段小程序,让你的使用程序可以运转下去
3.假设你是作硬件,每个厂家根本上都有针对该芯片的DEMO板原理图。先将原理图消化。这样你今后做设计时,对资源的分配心中有数。器材的DATSHEET一定要好好消化。
4. 细心研讨你所用的芯片的材料,虽然arm在内核上兼容,但每家芯片都有自己的特征,编写程序时有必要考虑这些问题。尤其是女孩子,在这儿千万别有依托心思,总想拿他人的示例程序修改,却越改越乱。
5. 多看一些操作体系程序,在arm的使用开放源代码的程序许多,要想进步自己,就要多看他人的程序,linux,uc/os-II等等这些都是很好的原码。
6.假设做软件最好对操作体系的机理要有所了解。当然这对软件工程师来说是小菜一碟。但假设是硬件身世的就有点费力。
问:做最小体系板是2层仍是4层好?
答:只要AT91可以用两层板,其他的最少4层;44b0的地和电源处理好也可用两层板。