温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
嵌入式
系统
开发
基础
实践
教程
普通高等教育“十一五”国家级规划教材 电子信息科学与工程类专业规划教材 嵌入式系统 开发基础与实践教程 钱恭斌 肖敦鹤 编著 尹均萍 刘良成 编 内 容 简 介 本书以 Super-ARM(MCU 为 S3C2410)为教学平台,全面详细地介绍了基于 ARM 的软件设计和硬件设计技术、开发工具及仿真调试技术等。本书将复杂的嵌入式系统设计和开发技术分解、细化,形成了包括基于 ARM的嵌入式系统与开发简介、Super-ARM 教学实验系统、软件实验环境介绍、基于 ARM 的嵌入式软件开发基础实验、基本接口实验、人机接口实验、通信和总线接口实验、实时操作系统实验等内容的一套完整的实验体系。本书还提供全部的实验例程,帮助读者系统全面地掌握嵌入式系统设计和开发技术。本书可作为高校计算机、通信或电子工程专业本科生、研究生相关课程的教材,也可以作为基于 ARM 的嵌入式系统开发工程技术人员的参考资料。未经许可,不得以任何方式复制或抄袭本书之部分或全部内容。版权所有,侵权必究。图书在版编目(CIP)数据 嵌入式系统开发基础与实践教程钱恭斌,肖敦鹤编著.北京:电子工业出版社,2011.5 电子信息科学与工程类专业规划教材 ISBN 978-7-121-12080-0.嵌 .钱 肖 .微型计算机系统开发研究生教材 .TP360.21 中国版本图书馆 CIP 数据核字(2010)第 206372 号 策划编辑:王羽佳 责任编辑:冉 哲 印 刷:装 订:出版发行:电子工业出版社 北京市海淀区万寿路 173 信箱 邮编:100036 开 本:7871092 1/16 印张:20.25 字数:518.4 千字 印 次:2010 年 5 月第 1 次印刷 印 数:4 000 册 定价:39.00 元 凡所购买电子工业出版社图书有缺损问题,请向购买书店调换。若书店售缺,请与本社发行部联系,联系及邮购电话:(010)88254888。质量投诉请发邮件至 ,盗版侵权举报请发邮件至 。服务热线:(010)88258888。III 前 言 嵌入式系统在下一代无线设备、数字消费品、成像设备、工业控制、通信和信息系统、军事、航空航天、医疗电子等方面的应用日益广泛,社会对嵌入式系统的开发和应用人才的需求也不断加大。为适应嵌入式技术的迅速发展和产业界对嵌入式人才的需求,各高校纷纷开设有关嵌入式系统开发和应用的课程,并受到本科生和研究生的欢迎。为促进嵌入式系统的开发和应用课程的发展,使学生更好地掌握这一技术,作者编写了这本嵌入式系统开发基础与实践教材。本书的主要内容是在深圳市旋极历通科技有限公司的Super-ARM 嵌入式教学实验系统使用说明和Super-ARM 嵌入式教学实验系统实验教程两本内部技术资料的基础上整理而来的。全书共 8 章,各章节内容安排如下。第 1 章介绍嵌入式系统的基本概念、嵌入式系统的开发环境、当前主流的嵌入式操作系统,同时简单介绍了 ARM 的处理器系列。第 2 章介绍 Super-ARM 教学实验系统的特点、组成及其硬件和软件的使用方法,还介绍了基于 JTAG 的 Flash 下载软件的安装和使用。第 3 章首先介绍几种基于 ARM 的嵌入式开发环境与工具,接着详细介绍 ARM Developer Suite(ADS)的安装与使用,包括 ARM Developer Suite(ADS)的安装、ADS 系统配置、工程项目管理、代码编译与链接、加载调试及实验软件平台与硬件平台的连接。第 4 章重点介绍 ARM 的体系结构和编程模型、ARM 指令集和 Thumb 指令集、C 语言编程、C 语言与汇编语言交互工作等。第 5 章给出了 ARM 启动、I/O 控制及 LED 显示、ARM 中断处理、ARM 定时器及时钟中断、Flash 驱动编程、Nand Flash 驱动编程、CPLD 设计、IIC 驱动编程等实验。通过这些实验,可使读者基本熟悉 ARM 的接口,掌握接口的驱动编程。第 6 章给出矩阵键盘编程、LCD 真彩色显示驱动编程、触摸屏控制、嵌入式汉字显示等实验。该章内容贴近实际应用,部分代码和设计思路可直接用于嵌入式系统开发。第 7 章给出串口通信、USB 协议及 USB Device 实验、以太网通信、IIS 总线驱动音频、GPRS 编程、GPS 编程、蓝牙编程、步进电机驱动编程等实验。通过这些实验,使读者能够了解这些通信协议的编程原理及方法。第 8 章给出 RTOS 基础、Nucleus 移植、Nucleus 应用等实验。通过这些实验,使读者了解RTOS 的内核结构,掌握 Nucleus 的移植过程、Nucleus 启动流程,了解 RTOS 的功能及应用程序的编写。本书融入了嵌入式系统开发设计的最新技术,所有实践内容均源于嵌入式工程项目研发第一线,涉及嵌入式应用的多种关键技术,具有很强的实际意义。所有例程都在 Super ARM 系列教学实验系统上运行通过,并可适当修改后运用在用户的实际系统中。本书免费提供所有例程 IV 和电子课件,请登录华信教育资源网下载(http:/)。本书可作为高校计算机、通信或电子工程专业本科生、研究生相关课程的教材,也可以作为基于 ARM 的嵌入式系统开发工程技术人员的参考资料。本书获得深圳市旋极历通科技有限公司的正式授权,使用了该公司的大量技术资料,并得到大力支持,在此表示衷心感谢!由于水平所限,书中必然存在错误和缺陷,敬请读者原谅并批评指正。作 者 2009 年 4 月 V 目 录 第 1 章 基于 ARM 的嵌入式系统与开发简介1 1.1 嵌入式系统的基本概念1 1.2 嵌入式系统开发环境1 1.3 嵌入式操作系统概述2 1.4 ARM 处理器介绍3 第 2 章 Super-ARM 教学实验系统5 2.1 Super-ARM 教学实验系统的特点5 2.2 Super-ARM 教学实验系统的组成5 2.2.1 模块化设计的实验箱5 2.2.2 完善的编译调试环境6 2.3 Super-ARM 教学实验系统硬件的使用7 2.3.1 主板资源、接口及其配置7 2.3.2 底板资源、接口及其配置17 2.3.3 核心板的使用23 2.3.4 扩展板的使用26 2.4 Super-ARM 教学实验系统软件的使用30 2.4.1 Super-ARM-Demo 的使用30 2.4.2 Linux-Demo 的使用34 2.4.3 Linux-Demo 的基本操作35 2.5 基于 JTAG 的 Flash 下载软件36 2.5.1 JTAG 下载软件的安装36 2.5.2 JTAG 下载软件的使用40 第 3 章 软件实验环境介绍41 3.1 基于 ARM 的嵌入式开发环境与工具41 3.1.1 ARM Developer Suite(ADS)41 3.1.2 RealView Developer Suite(RVDS)42 3.1.3 ARM 硬件仿真器 Multi-ICE 与 Multi-Trace43 3.1.4 ARM 新版硬件仿真套件 RealView-ICE 与 RealView-Trace44 3.1.5 德国 Lauterbach 公司的 TRACE32 开发系统44 3.2 ARM Developer Suite(ADS)的安装与使用45 3.2.1 ARM Developer Suite(ADS)的安装45 3.2.2 ADS 系统配置55 3.2.3 工程项目管理60 3.2.4 代码编译与链接62 3.2.5 加载调试63 3.2.6 实验软件平台与硬件平台的链接69 VI第 4 章 基于 ARM 的嵌入式软件开发基础实验70 4.1 ARM 和 Thumb 指令系统及上机实验70 4.2 C 语言编程及上机实验76 4.3 C 语言与汇编语言交互工作实验80 第 5 章 基本接口实验82 5.1 ARM 启动及工作模式切换实验82 5.2 I/O 控制及 LED 显示实验90 5.3 中断处理编程及实验94 5.4 定时器及时钟中断实验107 5.5 Flash 驱动编程及实验116 5.6 Nand Flash 驱动编程及实验126 5.7 实时时钟实验138 5.8 I2C 驱动编程及实验146 5.9 Altera EPM3032A 编程实验160 第 6 章 人机接口实验168 6.1 矩阵键盘编程及实验168 6.2 LCD 真彩色显示驱动编程及实验177 6.3 触摸屏(TouchPanel)控制实验185 6.4 嵌入式系统汉字显示实验 194 6.5 A/D 转换编程及实验 200 第 7 章 通信和总线接口实验202 7.1 串口通信实验202 7.2 USB1.1 协议及 S3C2410 USB 设备实验213 7.3 以太网通信实验216 7.4 IIS 总线驱动音频实验221 7.5 GPRS 编程与实验239 7.6 GPS 编程与实验248 7.7 蓝牙编程与实验258 7.8 步进电机驱动编程及实验 283 第 8 章 实时操作系统实验300 8.1 RTOS 基础和 Nucleus 移植实验300 8.2 Nucleus 应用实验311 参考文献318 1 第 1 章 基于 ARM 的嵌入式 系统与开发简介 本章主要介绍基于 ARM 的嵌入式系统与开发的一些基本概念。首先介绍嵌入式操作系统的基本概念及嵌入式系统的特点,接着简单介绍嵌入式系统的集成开发环境及常用的调试技术,简述了目前常见的嵌入式操作系统及其特点,最后简单介绍 ARM 的处理器系列。本章内容安排旨在使读者在较短时间内掌握基于 ARM 的嵌入式系统与开发的基本概念和方法,为本书后续章节的学习打下一定的基础。1.1 嵌入式系统的基本概念 嵌入式系统是指基于计算机技术的、集硬件和软件于一体的专用系统。简单地说,就是系统的应用软件(通常还包括嵌入式操作系统)与系统的硬件一体化,类似于 BIOS 的工作方式。它具有软件代码小,集成度高,响应速度快(实时)等特点,适合于应用系统对功能、可靠性、成本、体积和功耗要求严格的、实时的、多任务的体系。嵌入式系统的核心是嵌入式微处理器(MPU)或嵌入式微控制器(MCU)。其地位相当于 PC 机中的 CPU。不同的是,MPU 或 MCU 还集成了各种外围设备,并且在功耗、体积、工作温度等方面做了特别的设计,以适应嵌入式环境的需要。1.2 嵌入式系统开发环境(1)嵌入式系统集成开发环境(IDE)用户开发嵌入式系统时,一套含有编辑软件、编译软件、汇编软件、链接软件、调试软件、项目管理及函数库的集成开发环境(IDE)可以加快开发进度并节省开发成本。编辑、编译、汇编和链接等全部工作可在 PC 机的 IDE 内完成,相应的仿真调试工具则完成程序的下载工作并配合 IDE 进行系统调试。针对 ARM 的常用嵌入式集成开发环境(IDE)有:ARM 公司的 SDT、ADS、RealView等,及 GreenHill 公司的 MULTI 2000 等。(2)嵌入式系统系统仿真调试技术 目前常用的调试技术有指令集模拟器、驻留监控软件、在线调试器和在线仿真器等几种。指令集模拟器可以使用户无须仿真器和目标环境,就可以在 PC 机上实现调试逻辑流程、算法等功能,简单、方便、价廉。其不足是,由于指令集模拟器与真实的硬件环境相差很大,即使用户使用指令集模拟器调试通过的程序也有可能无法在真实的硬件环境下运行。ARM 公司的 ADS 中包含了一个叫做 ARMulator 的指令集模拟器。驻留监控软件(Resident Monitors)是一段运行在目标板上的程序。调试软件通过以太 2网口、并行端口、串行端口等通信端口与驻留监控软件进行交互,由调试软件发布命令通知驻留监控软件控制程序的执行、存储器和寄存器的读/写、断点的设置等。它的优点是,工作时不需要任何其他的硬件和仿真设备。缺点在于,它要求硬件稳定之后才能进行应用软件的开发,同时它占用目标板上的部分资源且程序不能全速运行仿真。ARM 公司的 Ang