·2 ·
EPROM、FlashROM 等器件的原理和基本结构,重点介绍国内用得比较多的两种 Nand Flash芯片和 NORFlash芯片。最后介绍常用的外部存储器,如硬盘、光盘、U 盘等。
第4章 基本输入/输出接口:结合国内常用的 ARM 芯片 S3C2410,介绍常用的
第6章 网络接口:主要介绍以太网络、CAN 总线、GPRS接口、ZigBee技术、GPS 接口技术。 90%以上的程序都可以在 ADS开发环境中进行在线调试。针对这些实验我们做了19
个视频供学习者参考,真正做到了手把手教学。
④ 配套光盘,本书 中 用 到 的 学 习 资 料 和 所 有 的 源 程 序 都 在 光 盘 中,利 于 教 学 与 自学。
⑤ 配套的网络资源,读者可以登录 http://jsjpg.jluzh.com/,找到嵌入式系统实 验室教学网,里面提供了一些免费的教学资源。
本书在编写过程中得到了北京航空航 天 大 学 何 立 民 教 授、北京航空航天大学出版 社马广云博士的很多帮助和鼓励,在此表示衷心的感谢。参与本书编写工作的人员如 下:吉林大学珠海学院陈远、朱天元、罗建、纪绪、苗雨、孙奇、陈卓、张荣高、乔瑞芳、孙永
,湖南铁道职业技术学院刘志成副教授,一并表示感谢。同时,感谢康学林副院长、
教学工作部杨文彦主任、王元良教授、庞振平教授、陈守孔教授、姜云飞教授、司玉娟教 授、张立教授、闫维和教授、刘亚松高级工程师等,以及家人的大力支持。
由于时间仓促,加之作者水平有限,错误和不足之处在所难免,敬请读者批评指正。
有兴趣的读 者,可以发送电子邮件到:[email protected],与作者进一步交 流;也可以发送电子邮件到:[email protected],与本书的策划编辑进行交流。
作 者 2009年6月于珠海
目 录
第1章 嵌入式微处理器
1.1 概 述 ………1
1.1.1 嵌入式系统的组成 ………1
1.1.2 嵌入式处理器的分类 ………2
1.1.3 嵌入式处理器的评估指标 ………5
1.2 嵌入式微处理器基础 ………6
1.2.1 微处理器设计中的基本概念 ………6
1.2.2 体系结构 ………9
1.2.3 CISC和 RISC技术 ……… 10
1.2.4 流水线技术……… 11
1.2.5 多核技术………15
1.2.6 嵌入式处理器发展趋势……… 17
1.3 总线概述……… 19
1.3.1 基本概念………19
1.3.2 片内总线………21
1.3.3 芯片总线………22
1.3.4 系统内总线……… 22
1.3.5 外部总线………24
1.4 常见的嵌入式微处理器………25
1.4.1 PowerPC处理器 ………25
1.4.2 68K/ColdFire处理器 ……… 28
1.4.3 MIPS处理器 ……… 28
1.4.4 SPARC处理器 ………29
1.4.5 ARM 处理器 ……… 30
1.5 ARM 处理器 ………35
1.5.1 ARM 内核 ………35
·3 ·
3.4.2 SST39VF160的操作命令 ………124
·5 ·
5.5.2 I2C总线工作原理 ……… 245
·7 ·
习 题………323
第8章 常用接口实验 8.1 嵌入式系统开发环境 ………324
8.2 存储器实验 ………326
8.3 矩阵键盘实验 ……… 333
8.4 A/D 转换实验……… 336
8.5 触摸屏实验 ………338
8.6 LCD 实验……… 342
8.7 串口实验 ……… 343
8.8 SPI实验 ……… 347
8.9 I2C接口实验 ……… 349
8.10 CAN 总线实验 ……… 353
8.11 GPRS总线实验……… 355
8.12 μC/OS Ⅱ实验……… 359
参考文献……… 363
第 1 章
嵌入式微处理器
嵌入式产品的设计是以处理器为 核 心 的 系 统 设 计,以 ARM 为内核的嵌入式处理器得到 了广泛的应用。本章首先介绍嵌入式系统的基本组成结构,然后介绍微处理器的基本知识以 及常用的嵌入式微 处 理 器,最后重点介绍国内几种以 ARM 为内核的嵌入式微处理器以及 ARM 芯片的选型方法。
1. 1 概 述
1.1.1 嵌入式系统的组成
嵌入式系统是软/硬件结合紧密的系统。一般而言,嵌入式系统由嵌入式硬件平台、嵌入 式软件组成。其中,嵌入式系统硬件平台包括各种嵌入式器件,图 1 1下半部分是一个以 ARM 嵌入式处理器为中心,由存储器、I/O 设备、通信模块以及电源等必要辅助接口组成的嵌 入式系统。嵌入式系统的硬件核心是嵌入式微处理器,有时为了提高系统的信息处理能力,常 外接DSP和 DSP协处理器(也可内部集成),以完成高性能信号处理。
嵌入式系统不同于普通计算机,它是为产品量身定做的专用计算机应用系统。在实际应 用中的嵌入式系统硬件配置非常精简,除了微处理器和基本的外围电路以外,其余的电路都可 根据需求和成本进行裁减、定制,非常经济、可靠。随着计算机技术、微电子技术、应用技术的 不断发展及纳米芯片加工工艺技术的发展,以微处理器为核心,集成多功能的 SOC 系统芯片 已成为嵌入式系统的核心。在嵌入式系统设计中,要尽可能地选择满足系统功能接口的 SOC 芯片,这些SOC集成了大量的外围 USB、UART、以太网、ADC/DAC等功能模块。
可编程片上系统SOPC(System OnProgrammableChip)结合了 SOC 和 PLD、FPGA 各 自的技术特点,使得系统具有可编程的功能,是可编程逻辑器件在嵌入式应用中的完美体现, 极大地提高了系统在线升级、换代的能力。以 SOC/SOPC 为核心,用最少的外围部件和连接 部件构成一个应用系统,满足系统的功能需求,这是嵌入式系统发展的一个方向。
嵌入式系统软件一般包含4个方面:设备驱动层、实时操作系统(RTOS)、中间件层、实际 应用程序层,如图1 1上半部分所示。
图1 1 典型的嵌入式系统组成
1.1.2 嵌入式处理器的分类
嵌入式系统的硬件是以嵌入式处理器为核 心,配置必要的外围接口部件。在嵌入式系统 设计中,应尽可能选择适于系统功能接口的 SOC/SOPC 芯片,以最少的外围部件构成一个应 用系统,满足嵌入式系统的特殊需求。
嵌入式处理器可分为4类:嵌入式微处理器(MPU,MicroProcessorUnit)、嵌入式微控制 器(MCU,MicrocontrollerUnit)、嵌入式 DSP(EDSP,EmbeddedDigitalSignalProcessor)、嵌 入式片上系统(System OnChip)。随着嵌入式系统复杂性的提高,控制算法更加复杂。嵌入 式Internet的广泛应用、嵌入式操作系统的引入以及触摸屏等复杂人机接口的使用,使32位 处理器核的应用也日趋广泛。
1.嵌入式微处理器
嵌入式微处 理 器(MPU,MicroProcessorUnit)就是与 通用计算机 的 微 处 理 器 对 应 的 CPU。在应用中它的特征是具有32位以上的处理器,具有较高的性能,当然其价格也相应较 高。但与计算机处理器不同的是,在实际嵌入式应用中只保留和嵌入式应用紧密相关的功能 硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求。和 工业控制计算机相比,嵌入式微处理器具有体积小、质量小、成本低、可靠性高的优点。早期的 嵌入式系统是将微处理器装配在专门设计的电路板上,并在电路板上设计了与嵌入式系统相
·3 · 关的功能模块,这样可以满足嵌入式系统体积小和功耗低的要求。目前,嵌入式处理器主要包 括Am186/88、386EX、PowerPC、Motorola68000、ARM/StrongARM、MIPS 等 系 列。其 中, ARM/StrongARM 是专为手持设备开发的嵌入式微处理器,属于中档价位。
2.嵌入式微控制器
嵌入式微控制器(MCU,MicrocontrollerUnit)将 CPU、存储器(少量的 RAM、ROM 或两 者都有)和其他外设封装在同一片集成电路里。嵌入式微控制器的典型代表是单片机,从20 有代表 性 的 有8051、MCS�251、MCS�96/196/296、P51XA、C166/167、68K 系 列 以 及 MCU 8XC930/931、C540、C541。另 外,还 有 许 多 半 通 用 系 列,如 支 持 USB 接 口 的 MCU8XC930/
931、C540、C54l;支持I2C、CAN(控制器局域网)、LCD 及众多专用 MCU 和兼容系列。目前, MCU 占嵌入式系统约70%的市场份额。
3.嵌入式 DSP处理器
嵌入式DSP专门用来对离散时间信号进行极快地处理计算,提高了编译效率和执行速 度。DSP处理器对系统结构和指令进行了特殊设计,使其适合于执行 DSP算法,编译效率较 高,指令执行速度也较高。在数字滤波、FFT、谱分析等方面,DSP算法正在大量进入嵌入式 领域。
DSP的理论算法在20世纪70年代就已经出现,但是由于专门的 DSP 处理器还未出现, 所以这种理论算法只能通过 MPU 等分立元件实现。MPU 较低的处理速度无法满足 DSP的 算法要求,其应用领域仅仅局限于一些尖端的高科技领域。随着大规模集成电路技术发展, 1982年世界上诞生了首枚 DSP芯片,其运算速度比 MPU 快了几十倍,在语音合成和编码解
码器中得到了广泛应用。至20世纪80年代中期,随着 CMOS技术的进步与发展,第二代基 于CMOS工艺的 DSP 芯片应运而生,其存储容量和运算速度都得到成倍提高,成为语音处 理、图像硬件处理技术的基础。到20世纪80年代后期,DSP的运算速度进一步提高,应用领 域也从上述范围扩大到了通信和计算机方面。20世纪90年代后,DSP发展到了第五代产品, 集成度更高,使用范围也更加广阔。
DSP应用正在从通用微处理器中以普通指令实现 DSP功能过渡到采用嵌入式 DSP处理 器实现DSP功能。嵌入式 DSP处理器有两个发展方向:一是嵌入式 DSP处理器和嵌入式处
理器经过单片化设计,片上增加丰富的外设,从而成为具有高性能 DSP功能的SOC;二是在通 用微处理器、微控制器或 SOC中增加 DSP协处理器,如Intel公司的 MCS 296和 Siemems 公司的TriCore。推动嵌入式 DSP处理器发展的是嵌入式系统的智能化,如各种带有智能逻 辑的消费类产品、生物信息识别终端、带有加解密算法的键盘、ADSL、接入和实时语音压缩解 压系统等。这些应用的智能化算法的运算量一般都较大,特别是矢量运算、指针线性寻址等较 多,而这些正是 DSP处理器的长处所在。而随着嵌入式处理器技术的发展,许多嵌入式微处 理器核已设计、集成了 DSP的主要功能,也留有特殊算法的协处理器接口,这样很容易设计具 有DSP功能的高性能嵌入式SOC。目前,应用最为广泛的 DSP有 TI公司的 TMS320C2000/
C5000系列等,另外如Intel公司的 MCS 296 和 Siemens公司的 TriCore也有各自的应用 范围。 大大缩短,这样 Time to Market给SOC提供了良好的发展空间。随着高性能系统对系统 复杂度、处理速度、功耗、功能多样化的需求,在信息处理与通信系统(如网络、多媒体、移动通
·5 ·
(2) Dhrystone
Dhrystone测试基准是个简单的 C语言程序,它可以编译成大约2000条汇编代码,并且 不使用操作系统提供的服务功能。Dhrystone测试基准也符合古老的 VAX系列标准。目前, Dhrystone是市面上最普遍适用的测试向量,但 EEMBC 验证实验室(EEMBCCertification�
Labs,ECL)的最新研究指出,Dhrystone不仅不适于作为嵌入式系统的测试向量,甚至在其他 大多数场合下都不适合进 行 应 用。Dhrystone有许多漏洞,例如,易被非法利用、人为痕迹明
Labs,ECL)的最新研究指出,Dhrystone不仅不适于作为嵌入式系统的测试向量,甚至在其他 大多数场合下都不适合进 行 应 用。Dhrystone有许多漏洞,例如,易被非法利用、人为痕迹明