在进行嵌入式系统的开发时,首先面临的难题就是如何挑选一个适合自己的开发平台。ARM系列处理器是专门针对嵌入式设备设计的,是目前构造嵌入式系统硬件平台的首选。本文将介绍如何挑选适合实际需要的嵌入式开发平台,如何构建实用的开发环境,以及如何迈出嵌入式Linux系统开发的第一步。
选用指南
在进行嵌入式系统的开发之前,首先必须要选择恰当的开发平台。对于经验丰富的开发者来说,当然可以自己动手组装硬件,然后挑选合适的嵌入式Linux系统,将其移植到开发平台上。但对于初学者来说,可能更好的办法是购买硬件厂商已经做好的开发板控制工程网版权所有,将精力集中在应用程序的开发上。
虽然ARM微处理器有多达十几种的内核结构、几十个芯片生产厂家和众多的功能组合,但这也给广大嵌入式开发人员在确定方案时带来了一定的困难。客观上讲控制工程网版权所有,嵌入式系统一般都是量身打造的。开发人员必须依据客户需求选择合适的软硬件平台,否则的话要么无法完成所要求的功能,要么就会造成资源的浪费,挑选出一个合适的方案确实很不容易。初学者在做决定时不妨借鉴下面的一些经
ARM公司设计了一系列的微处理器内核结构,以适应不同应用领域的需要。如果用户希望使用Windows CE或标准Linux等操作系统来减少软件开发时间,就需要选用ARM720T以上带有内存管理单元(MMU)的ARM芯片,如ARM720T、ARM920T、ARM922T、ARM946T等。但对于ARM7TDMI这类没有MMU的微处理器来说,只能运行像UcLinux那样不需要MMU支持的操作系统,而无法运行标准的Linux。
微处理器的工作频率在很大程度上决定了其运算能力的高低。ARM7系列微处理器的典型处理速度为0.9MIPS/MHz,常见的ARM7芯片的系统主时钟为20MHz到133MHz;ARM9系列微处理器的典型处理速度为1.1MIPS/MHz,常见的ARM9芯片的系统主时钟为100MHz到233MHz;ARM10系列微处理器的典型处理速度为1.25MIPS/MHz,其时钟频率则可以高达400MHz。不同ARM芯片对时钟的处理各不相同。有些芯片只有一个主时钟频率,而有些芯片的内部时钟控制器则可以分别为ARM核、USB、UART和DSP等功能部件提供不同频率。
大多数ARM微处理器片内存储器的容量都不大,需要用户在设计嵌入式系统时扩充外部存储器。
除了ARM微处理器核之外,几乎所有的ARM芯片都根据各自不同的应用领域扩展了相应的功能模块,并集成在芯片之中CONTROL ENGINEERING China版权所有,从而形成了片内外围电路,如USB接口、I/O接口、RTC和LCD控制器等。嵌入式系统的开发人员应该尽可能运用这些外围电路,来实现系统所要求的功能。这样既可以简化系统的设计,同时又能够提高系统的可靠性。
为嵌入式系统挑选合适的硬件平台是一件很复杂的工作。以上给出的只是一些基本的原则,实际应用当中还要根据情况灵活确定。笔者在展开对嵌入式Linux的研究和开发之时,经过比较和鉴别,选用了一款基于S3C4510B处理器的开发板。它是由三星公司推出的一款具有很高性价比的16/32位RISC微控制器www.cechina.cn,采用的是ARM公司提供的ARM7TDMI RISC处理器核。由于它具有高性能、低功耗等优点www.cechina.cn,因此特别适合于对价格和功耗比较敏感的应用场合,如手持设备、网络通信和工业控制等。
S3C4510B整个开发板的结构大致如图1所示。
图1 基于S3C4510B的开发板框图
快速入门
下面就来一睹嵌入式Linux的芳容。如果用户的开发板是由专门的硬件厂商提供的,一般来说都会预装一个嵌入式操作系统,如Windows CE、Palm OS或Linux等。此处介绍的S3C4510B开发板预装的是嵌入式Linux。我们不妨借用它来感受一下嵌入式Linux的开发方法。如果用户的开发板是自己组装的,或者买来时预装的是其它的嵌入式操作系统,那么就需要自己动手来重新构建系统了。
正如前面介绍过的,在开发嵌入式系统时需要用到两个平台:一个是开发平台(Host),另一个是目标平台(Target)。开发平台通常用普通的PC机充当。它可以通过串行端口、并行端口和以太网等方式与目标平台相连,从而共同构成一个嵌入式系统的基本开发环境。对于嵌入式Linu