21天学通Linux嵌入式开发
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 嵌入式系统的开发过程

嵌入式系统不同于一般的单片机系统的开发,其涉及多个方面,比较复杂。典型的嵌入式系统的开发过程,如图1-2所示。下面逐个介绍每一步所涉及的内容。

图1-2 嵌入式系统的开发过程

1.3.1 芯片选择

目前,嵌入式处理器种类繁多。按照类型大致可以分为嵌入式微处理器EMPU、嵌入式微控制器MCU、嵌入式数字信号处理器EDSP和片上可编程系统SOPC。不同的处理器具有不同的功能特点,适合于不同的应用场合。嵌入式开发人员应该对各类嵌入式处理器的特性比较清楚,这样便于进行比较,从中选中合适的处理器。选择合适的嵌入式处理器的基本原则是功能够用且留有一定的升级余地,另外还需要考虑开放难度及性价比问题。

1.3.2 配置硬件平台

当选择了嵌入式处理器后,往往还需要根据产品的功能来确定硬件的配置和功能。嵌入式处理器相当于大脑的作用,还需要外围的功能模块来扩展功能。例如显示屏幕的大小和类型、各种人机接口、电源等。在这个过程中,涉及数字电路、模拟电路等各方面的知识。设计者应该根据系统的需要来选择各种外围接口。有时,还需要根据需求剪裁或重构硬件平台。

1.3.3 BootLoader移植

BootLoader就是在操作系统内核运行前执行的一小段程序,用于引导加载程序及系统内核。BootLoader是依赖于硬件平台的,不同的嵌入式处理器和嵌入式系统需要不同的BootLoader来引导。而且,设计者也需要根据硬件平台配置的不同来修改相应的BootLoader,以便于移植和调试。

1.3.4 操作系统裁减

硬件平台配置完成后,便需要进行操作系统的选择和剪裁。目前,嵌入式的操作系统也丰富多彩。有免费的嵌入式系统,有开源的嵌入式系统,也有收费的嵌入式系统。不同的嵌入式系统具有不同的特色和应用场合。用户应该从系统功能、运行场合、用户群、开发难度及成本等角度来考虑。

当选定了嵌入式操作系统后,往往还需要根据具体的硬件平台进行修改和裁减。操作系统裁减的目的是减少操作系统的体积,适应系统的硬件平台。操作系统的裁减是嵌入式系统设计的重要内容。

1.3.5 系统移植

嵌入式操作系统选定和裁减完成后,便可以移植到硬件平台中。设计者应该反复测试经过裁减的嵌入式系统的可靠性,如果发现问题,应及时解决。

1.3.6 应用程序开发

当硬件平台和操作系统完成后,设计者还需要根据具体的应用开发相应的上层应用程序。这期间也会用到硬件驱动程序的开发。这些应用程序是与特定的操作系统和硬件平台有关的。

另外,有些嵌入式系统也还需要提供二次开发的SDK。这样便于用户根据需要开发自己的应用程序,丰富系统的功能。