您的位置:首页 > 其它

嵌入式学习-嵌入式的组成特点,开发流程等

2013-07-27 01:25 274 查看
今天开始对嵌入式学习重新学习一下,虽然有点基础,但是显得很乱,摸不着头绪,现在开始好好整理一下:

(1)嵌入式系统的组成与特点:

总体上嵌入式系统可以划分成硬件和软件两部分

硬件一般由高性能的微处理器和外围的接口电路组成

软件一般由实时操作系统和其上运行的应用软件构成



系统内核小

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

专用性强

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

系统精简

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

实时性操作系统

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

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

嵌入式软件:

应用层:特定的应用程序

文件系统/图形用户应用程序接口

OS层: 实时操作系统

驱动层:设备驱动程序、HAL、BSP

嵌入式开发分类;

硬件开发: 电路设计

驱动开发

系统开发: Linux开发

WINCE开发

软件开发: 应用程序

图形界面

(2) 嵌入式系统与PC的区别:
设备名称
嵌入式系统
PC
CPU
嵌入式处理器(ARM,MIPS,Score+)
CPU(Intel、AMD等)
内存
SDRAM芯片
SDRAM或DDR内存条
存储设备
Flash芯片
硬盘
输入设备
触摸屏,按键
鼠标、键盘、麦克等
输出设备
LCD
显示器
其它设备
音频芯片、USB芯片、网卡芯片等
主板集成或外接卡
名称
嵌入式系统
PC
引导代码
Bootloader引导,针对不同电路进行移植
主板的BIOS引导,无须改动
操作系统
Linux、WinCE、VxWorks等,需要移植
Windows、Linux等,无需移植
驱动程序
每个设备驱动针对电路板进行开发或移植,一般不能直接下载使用
操作系统含有大多数驱动程序,或下载直接使用
开发环境
交叉编译
本机编译
协议栈
需要移植
操作系统或第三方提供
(3)嵌入式开发流程:

1.裸机开发:

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

2. 带操作系统的开发:

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

带操作系统的开发:
ü硬件开发
ü启动加载程序
ü操作系统内核
ü根文件系统
ü设备驱动
ü应用程序





通常基于linux系统的嵌入式开发步骤如下:
ü开发目标硬件系统:

如选择微处理器、Flash及其它外设等
ü建立交叉开发环境:

安装交叉编译工具链、安装开发调试工具
ü开发Bootloader:移植uboot,vivi
ü移植linux内核:如linux2.6.31内核
ü开发根文件系统:CRAMFS,YAFFS
ü开发相关硬件的驱动程序:led,adc等驱动
ü开发上层的应用程序:如QT GUI开发
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: