嵌入式系统知识介绍

嵌入式系统是一种专用的计算机系统,作为装置或设备的一部分。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是由单个程序实现整个控制逻辑。

嵌入式系统知识介绍

从应用对象上加以定义,嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。

  嵌入式系统的定义:

以应用为中心,以计算机技术为基础,且软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗的严格要求的专用计算机系统。

  嵌入式系统的特点:

系统内核小:嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以内核较之传统的操作系统要小得多

专用性强:嵌入式系统的个性化很强,其中的.软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植

系统精简:嵌入式系统一般不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于系统安全

实时性操作系统:这是嵌入式软件的基本要求,而且软件要求固化存储,以提高速度,软件代码要求高质量和高可靠性、实时性

专用的开发工具和开发环境。

  嵌入式系统开发流程

裸机开发:对于功能简单仅包括应用程序的嵌入式系统一般不使用操作系统,仅有应用程序和设备驱动程序

带操作系统的开发:当设计较复杂的程序时,可能就需要一个操作系统(OS)来管理控制内存、多任务、周边资源等,现代高 性能嵌入式系统应用越来越广泛,操作系统使用成为必然发展趋势

硬件开发--->启动加载程序--->操作系统内核--->根文件系统--->设备驱动--->应用程序

  通常基于linux系统的嵌入式开发步骤:

开发目标硬件系统:如选择微处理器、Flash及其它外设等

建立交叉开发环境:安装交叉编译工具链、安装开发调试工具

开发Bootloader:移植uboot,vivi

移植linux内核:如linux2.6.31内核

开发根文件系统:CRAMFS,YAFFS

开发相关硬件的驱动程序:led,adc等驱动

开发上层的应用程序:如QT GUI开发