本书系统介绍嵌入式系统的基本原理和主要技术,以ARM和Linux为重点,详细讨论其硬件结构和软件体系。全书共15章,内容包括:嵌入式系统概述,单片机及其开发应用,DSP芯片及其开发应用,ARM微处理器及其开发应用,嵌入式系统的操作系统及软件开发,Linux操作系统,ARM嵌入式系统开发环境,嵌入式系统的基本外设,嵌入式系统中的接口技术,嵌入式系统内核的相关技术,嵌入式系统图形界面和网络通信,嵌入式蓝牙电话网关及其终端设备,基于蓝牙技术的局域网接入点设备,嵌入式系统在信息家电中的应用,智能车辆管控系统。为了理论联系实际,全书给出了14个典型实验。给出的多个产品开发实例都是作者及其同事近年来承担的国家“863”和攻关计划等科研项目的成果。本书既是一本理论联系实际的教科书,又是一本可作为指导实验和开发应用的参考书。
本书有完善的实验和开发设备与之配套,可作为高等院校通信类、信息类、电子类和理工科其他学科本科生的教材,也可供研究生和有关科学研究与产品开发人员使用。
第1章 嵌入式系统概述
1.1 嵌入式系统的定义
1.2 嵌入式系统的基本组成
1.3 嵌入式系统的特点
1.4 嵌入式系统的主要应用领域
1.5 嵌入式系统的发展趋势
思考题
第2章 单片机及其开发应用
2.1 单片机分类及应用领域
2.2 Philips系列单片机
2.2.1 Philips 12 Clock 80C51和6 Clock 80C51系列单片机
2.2.2 Philips LPC700系列OTP单片机
2.2.3 Philips LPC900系列Flash单片机
2.3 PIC系列单片机
2.3.1 PIC12CXXX单片机
2.3.2 PIC16CXXX单片机
2.3.3 PIC17CXXX单片机
2.4 Motorola系列单片机
2.4.1 M68HC05系列单片机
2.4.2 56800/E系列单片机
2.5 单片机开发应用举例
思考题
第3章 DSP芯片及其开发应用
3.1 DSP芯片概述
3.2 定点式DSP芯片
3.3 浮点式DSP芯片
3.4 多处理器DSP芯片TMS320C8X
3.5 DSP芯片开发举例
思考题
第4章 ARM微处理器及其开发应用
4.1 ARM微处理器概述
4.1.1 ARM微处理器的特点及应用领域
4.1.2 ARM微处理器系列
4.1.3 ARM微处理器结构
4.1.4 ARM微处理器的应用选型
4.2 ARM微处理器的指令系统
4.2.1 ARM微处理器的指令分类与格式
4.2.2 指令的条件域
4.2.3 ARM指令的寻址方式
4.2.4 ARM指令集
4.2.5 Thumb指令及应用
4.3 ARM汇编程序设计基础
4.3.1 ARM汇编器所支持的伪指令
4.3.2 汇编语言的语句格式
4.3.3 汇编语言的程序结构
4.4 ARM微处理器的编程模型
4.4.1 ARM微处理器的工作状态
4.4.2 ARM体系结构的存储器格式
4.4.3 处理器模式
4.4.4 寄存器组织
4.4.5 异常
4.5 ARM存储器设计
4.6 基于ARM的嵌入式系统开发
思考题
第5章 嵌入式系统的操作系统及软件开发
5.1 嵌入式系统对操作系统的要求
5.2 嵌入式实时操作系统
5.2.1 嵌入式实时操作系统的概念
5.2.2 实时操作系统的发展过程
5.2.3 RTOS的几个评价指标
5.2.4 嵌入式操作系统与通用操作系统的区别
5.3 实时操作系统的选择
5.4 嵌入式系统高级语言开发流程
5.5 开发调试方法
5.5.1 嵌入式系统开发时需要的工具
5.5.2 嵌入式系统的开发调试过程
思考题
第6章 Linux操作系统
6.1 Linux概论
6.1.1 Linux的起源
6.1.2 Linux与GNU
6.1.3 Linux内核概况
6.1.4 Linux内核的微型化
6.2 嵌入式Linux
6.2.1 Linux应用于嵌入式系统的优势和不足
6.2.2 嵌入式Linux的应用举例
6.3 UClinux操作系统及其开发环境
6.3.1 uClinux操作系统
6.3.2 uClinux的应用开发环境
6.3.3 uClinux操作系统的一些说明
6.4 嵌入式实时操作系统和实时Linux
6.5 Linux常见术语和常用命令
6.5.1 Linux常见术语
6.5.2 Linux常用命令
6.6 gcc编译器和Makefile
6.6.1 gcc编译器
6.6.2 Makefile
思考题
第7章 ARM嵌入式系统开发环境
7.1 基本原理
7.1.1 实验开发环境
7.1.2 uClinux系统的目录结构
7.1.3 uClinux系统的编译过程
7.1.4 uClinux系统的烧写
7.1.5 uClinux系统的地址空间分布
7.1.6 在开发板上开发应用程序
7.1.7 应用程序调试方法
7.2 实验及其要求
思考题
第8章 嵌入式系统的基本外设
8.1 嵌入式系统中的LCD及其实验
8.1.1 嵌入式系统中LCD的工作原理
8.1.2 实验及其要求
8.2 嵌入式系统中的触摸屏及其实验
8.2.1 触摸屏的工作原理
8.2.2 实验及其要求
8.3 嵌入式系统中的LED和键盘控制
8.3.1 基本原理
8.3.2 实验及其要求
思考题
附录 有关的寄存器、函数及源代码
A8.1 LCD控制器的部分寄存器设置和图形界面接口函数
A8.2 触摸屏程序开发中使用的函数和SIO接口专用寄存器
A8.3 CPLD程序VHDL源代码
第9章 嵌入式系统中的接口技术
9.1 A/D接口及其实验
9.1.1 基本原理
9.1.2 实验及其要求
9.2 串口通信及其实验
9.2.1 串口通信的工作原理
9.2.2 实验及其要求
思考题
第10章 嵌入式系统内核的相关技术
10.1 嵌入式系统进程间通信的原理与实验
10.1.1 嵌入式系统进程间通信的基本原理
10.1.2 实验及其要求
10.2 嵌入式系统中断和驱动的原理及实验
10.2.1 嵌入式系统中断和驱动的工作原理
10.2.2 实验及其要求
思考题
第11章 嵌入式系统图形界面和网络通信
11.1 图形用户界面的工作原理及实验
11.1.1 图形用户界面的基本原理
11.1.2 实验及其要求
11.2 TCP/IP的基本原理及其实验
11.2.1 TCP/IP的基本原理
11.2.2 实验及其要求
11.3 Web服务器CGI的基本原理及实验
11.3.1 Web服务器CGI的基本原理
11.3.2 实验及其要求
思考题
附录 有关的算法描述及实例
A11.1 时钟绘制流程图及关键算法描述
A11.2 创建子进程方式的并发TCP服务器实例
第12章 嵌入式蓝牙电话网关及其终端设备
12.1 嵌入式实时操作系统及微处理器简介
12.2 嵌入式PSTN网关及其终端的设计与实现
12.2.1 嵌入式PSTN网关及其终端的开发环境
12.2.2 嵌入式PSTN网关的实现
12.2.3 嵌入式语音终端的实现
12.2.4 互连互通及抗干扰测试
12.3 支持多用户的嵌入式PSTN网关设计
12.3.1 TCS协议和无绳电话应用模型中的相关规定
12.3.2 支持多用户的PSTN网关的工作流程
12.3.3 支持多用户的PSTN网关设计
12.4 蓝牙“三合一”电话
12.4.1 蓝牙“三合一”电话的实现方式
12.4.2 开发平台介绍
12.4.3 蓝牙“三合一”电话的设计和实现
12.4.4 对讲机应用分析
思考题
第13章 基于蓝牙技术的局域网接入点设备
13.1 蓝牙局域网接入系统的结构体系
13.1.1 应用模型
13.1.2 应用场景
13.1.3 系统结构
13.1.4 基本流程
13.1.5 LAP的参数配置
13.2 MCF5272硬件平台简介
13.2.1 MCF5272微处理器的特点和性能
13.2.2 蓝牙局域网接入点硬件设计
13.2.3 软件总体结构
13.3 蓝牙LAP的设计实现
13.3.1 主控制模块
13.3.2 虚拟串口驱动模块
13.3.3 串口驱动模块
13.3.4 基于日志文件系统的配置管理工具
思考题
第14章 嵌入式系统在信息家电中的应用
14.1 家庭网络标准及关键技术
14.1.1 家庭网络概述
14.1.2 家庭网络标准及其规范
14.1.3 基于有线传输技术的家庭网络标准
14.1.4 基于无线传输技术的家庭网络标准
14.2 蓝牙在家庭网络中的技术实现
14.2.1 基于家庭网关的家庭网络体系结构
14.2.2 模块实现
14.3 家庭信息化网络总体结构
14.4 基于蓝牙技术的嵌入式信息家电网络系统的设计
14.4.1 家庭主网
14.4.2 家庭控制子网
14.5 主网网关软件的设计与实现
14.5.1 嵌入式Web服务器boa
14.5.2 Web服务器上家电控制功能的实现
14.6 子网网关软件的设计与实现
14.6.1 子网网关数据结构和算法流程
14.6.2 子网网关主程序结构
思考题
第15章 智能车辆管控系统
15.1 车辆管控系统概述
15.1.1 应用领域
15.1.2 主要技术比较
15.2 车辆管控系统的设计
15.3 车辆管控系统中的蓝牙技术
15.3.1 RFCOMM协议
15.3.2 串口仿真应用规范
15.3.3 链路监控
15.4 蓝牙智能车载卡的研制
15.4.1 SoC嵌入式微处理器
15.4.2 CSR BlueLab原理及应用
15.5 蓝牙智能车载卡的设计和实现
15.5.1 硬件结构
15.5.2 软件体系结构
15.5.3 关键算法处理
15.5.4 系统改进方案
15.6 蓝牙智能车载卡在邮政车辆管理系统中的应用
思考题
参考文献
嵌入式系统的概念虽然很早就已提出,但它成为最热门的技术之一却是近几年的事情。现在,嵌入式系统已广泛地渗透到科学研究、工程建设、军事、各类产业,甚至商业、文化、艺术及人们日常生活的方方面面。随着国内外各种嵌入式产品的进一步开发和推广,嵌入式技术的重要性日益凸显,这方面人才的需求量与日俱增,高等学校的培养任务迫在眉睫。在这样的背景下,作者结合多年来的科研和教学体会,于2003年春季编写了“嵌入式系统及其开发应用”讲义,作为“嵌入式系统”及其相关课程的教科书或参考书在东南大学无线电工程系和其他兄弟院校试用。本书是在原讲义的基础上,根据两年来的教学实践并综合了广大师生的反馈意见修改而成的,可作为高等院校相关学科本科生的教材或教学参考书,也可供研究生和有关科学研究与产品开发人员使用。本书已有完备的多媒体课件和完善的实验开发设备与之配套,有需要的老师可直接与作者联系(电子邮件:lfshen@seu.esu.cn或songtc@seu. edu.cn)。建议本课程3学分,课堂教学和实验的学时数由任课教师根据实际情况灵活掌握。
本书共分15章,系统地介绍嵌入式系统的基本原理和主要技术,以ARM和Linux为重点,详细讨论其硬件结构和软件体系,内容包括:嵌入式系统概述,单片机及其开发应用,DSP芯片及其开发应用,ARM微处理器及其开发应用,嵌入式系统的操作系统及软件开发,Linux操作系统,ARM嵌入式系统开发环境,嵌入式系统的基本外设,嵌入式系统中的接口技术,嵌入式系统内核的相关技术,嵌入式系统图形界面和网络通信,嵌入式蓝牙电话网关及其终端设备,基于蓝牙技术的局域网接入点设备,嵌入式系统在信息家电中的应用,智能车辆管控系统。其中,第1~6章可以看做基础理论篇,主要给出嵌入式系统的有关概念并详细讨论其硬件和软件的共性问题,重点是ARM微处理器和Linux操作系统;第7~11章为实验应用篇,详细讨论14个典型应用的基本原理,并给出在推荐的实验设备上做的典型实验,让读者理论联系实际;第12~15章为研究开发篇,给出作者及其同事近年来在科研实践中研究开发的多个产品设计实例。
本书的显著特点是其主要内容基于作者及其所在的东南大学移动通信国家重点实验室近年来承担的国家、教育部、江苏省和南京市相关科研项目所取得的成果。这些项目是:国家“863”计划“家庭网络核心SoC平台和整体解决方案”(2003AA1Z1110),国家科技攻关计划“基于Bluetooth技术的无线接入系统”(2001BA102C),国家自然科学基金“WPAN环境下宽带高速跳频系统关键技术的研究”(60072016)和“循环平稳理论在复杂无线通信环境中的若干算法与应用研究”(60472053),教育部科学技术研究重点项目“复杂环境下跳频多媒体通信关键技术的研究”(99176)和“宽带无线个域网共享访问协议及组件开发”(02171),高等学校博士学科点专项科研基金“周期平稳理论在无线通信网络中的分析和研究”(20030286017),江苏省科技攻关重大项目“CDMA无线接入系统”(BG2000008)、“基于多网融合技术的接入设备及其终端产品”(BE2004008),江苏省高技术研究重大项目“家庭网络核心集成电路片上系统平台技术”(BG2004002)、“移动自组织网络关键技术研究与应用”(BG2003004),江苏省基础研究项目“周期平稳理论在复杂无线通信系统中的若干算法的研究”(BK2003055),南京市创新创业人才项目“无线接入系统通信模块的系列化和产业化”(200308002)等。鉴于此,“东南大学出版基金”对本书提供了资助。因此,本书既是一本理论联系实际的教科书,又是指导实验和开发应用的参考书。作者期望它对于提高教学质量,特别是提高学生的创新能力能够发挥良好的作用。
本书由沈连丰、宋铁成、叶芝慧、夏玮玮、黄忠虎等共同编著。初稿的第1~6章、第7~11章和第12~15章分别由黄忠虎、夏玮玮和叶芝慧撰写,全书大纲的确定和修改完善由沈连丰、宋铁成和叶芝慧负责,最后由沈连丰定稿。书中的实验由南京东大移动互联技术有限公司依托东南大学无线电工程系和移动通信国家重点实验室设计与研制。该公司的张宏泽、陈培、张勇、王国峰、刘佳、殷磊、张文凤、洪云、黄慧妍、吴小安、王伟、章欣、王磊等技术人员对每一个实验都进行了精心的调试和测试,使之稳定可靠、功能多样。他们对工作一丝不苟的精神,使实验设备受到众多老师的欢迎;博士生李文峰和硕士生施荣参与了初稿的前期撰写,博士后刘云、张磊和博士生邱晓华、徐智勇、谷金山、顾燕等参与了本书大纲的讨论和部分工作;东南大学无线电工程系教学副系主任孟桥教授对全部书稿进行了仔细阅读,对每一个实验进行了认真研究,提出了非常宝贵的建设性意见,他的大力支持和热情帮助激励作者把本书写好并研制出一流的实验设备,以实现提高学校教学质量、增强学生创新能力之目的;作者的同事钱进、张圣清、张念祖等老师执教本门课程,根据学生的反馈意见和他们的教学实践,对本书的修改完善做了很大贡献;东南大学出版基金委员会、科技处、教务处、研究生院和无线电工程系的领导对作者的工作给予了大力支持和指导,特别是著名集成电路设计专家、“高等学校电子信息科学与电气信息类基础课教学指导分委员会”主任、教育部“长江学者”特聘教授、东南大学射频与光电集成电路研究所所长、博士生导师王志功教授在百忙之中抽出时间担任本书的主审,他以渊博的学识、丰富的经验和严谨的学风,对本书的写作给予了多方面指导;南京信息工程大学、江苏科技大学、南通大学等兄弟院校率先使用了本书的讲义和实验设备,给出了许多改进和修改意见。因此,本书及其推荐的实验系统是集体智慧的结晶,在此谨向支持作者工作和对本书作出贡献的同仁致以最诚挚的感谢!
本书及其推荐的实验系统虽已在多个高等院校应用,并在提高教学质量和学生创新能力方面发挥了一定的作用,但是嵌入式技术的发展方兴未艾,限于水平,本书的编写和推荐的实验系统、给出的设计开发实例一定存在不少缺点或错误,敬请使用本书和实验系统的师生及读者不吝指正。
作 者
2005年5月
于东南大学无线电工程系
移动通信国家重点实验室