第1章 嵌入式系统概论 1
1.1嵌入式系统概述 1
1.1.1嵌入式系统的定义 1
1.1.2嵌入式系统的特征 2
1.2嵌入式系统的应用领域及发展趋势 3
1.2.1嵌入式系统的应用领域 4
1.2.2嵌入式技术的发展趋势 8
1.3嵌入式系统基本组成 10
1.3.1嵌入式系统的组织架构 10
1.3.2嵌入式系统的硬件组成 11
1.3.3嵌入式系统的软件组成 14
习题与思考题 15
第2章 嵌入式系统的基础知识 16
2.1嵌入式系统的硬件基础知识 16
2.1.1硬件系统体系结构原理 16
2.1.2嵌入式系统中采用的先进技术 18
2.1.3存储器系统的基础知识 21
2.2嵌入式系统的软件基础知识 26
2.2.1嵌入式软件系统概述 27
2.2.2嵌入式操作系统简介 30
2.3 ARM微处理器的指令系统和程序设计 39
2.3.1概述 39
2.3.2 ARM指令系统的寻址方式和分类 41
2.3.3基于ARM体系的语言程序设计 47
习题与思考题 50
第3章 基于ARM架构的嵌入式微处理器 51
3.1概述 51
3.1.1 ARM体系结构版本和特种功能介绍 52
3.1.2 ARM微处理器系列产品 54
3.2嵌入式微处理器的组成 59
3.2.1嵌入式微处理器内部结构 60
3.2.2 ARM微处理器结构特征 62
3.3常用的三种ARM微处理器介绍 72
3.3.1 S3C44B0微处理器 72
3.3.2 S3C2410微处理器 80
3.3.3 XScale PXA255/27x系列微处理器 86
习题与思考题 88
第4章 嵌入式系统设计 90
4.1概述 90
4.1.1嵌入式系统的设计步骤 90
4.1.2设计层次和设计架构 93
4.2嵌入式系统的硬件设计 95
4.2.1微处理器芯片选型的原则 95
4.2.2多路时钟电路的设计 96
4.2.3系统复位电路的设计 97
4.2.4电源管理器 98
4.2.5存储系统的设计 98
4.3嵌入式系统接口设计 102
4.3.1通用I/O接口技术 102
4.3.2串口的设计 106
4.3.3 A/D转换接口 111
4.3.4数字音频设备接口 112
4.3.5 SD存储卡接口 113
4.4嵌入式系统人机交互设备接口 113
4.4.1显示器接口 113
4.4.2键盘接口 117
4.4.3触摸屏接口 118
4.5嵌入式系统的总线接口和网络接口设计 121
4.5.1 I2C总线接口设计 121
4.5.2 CAN总线接口设计 123
4.5.3嵌入式以太网接口设计 125
4.5.4嵌入式Internet接口设计 130
4.6嵌入式系统中常用的无线通信技术 131
4.6.1无线局域网Wi-Fi技术 131
4.6.2蓝牙技术 132
4.6.3其他无线通信技术 134
习题与思考题 138
第5章 嵌入式系统开发环境与相关开发技术 139
5.1概述 139
5.2嵌入式系统的开发工具 140
5.2.1在嵌入式系统裸机开发阶段中常用的开发工具 141
5.2.2基于嵌入式操作系统与应用程序开发阶段的常用工具 141
5.3嵌入式系统调试技术 143
5.3.1 ARM调试技术概述 143
5.3.2基于JTAG的调试系统 145
5.3.3基于 Angel的调试系统 147
5.4嵌入式系统开发经验 149
5.5嵌入式系统的Bootloader技术 150
5.5.1 Bootloader的职能 151
5.5.2 Bootloader的操作模式 152
5.5.3 Bootloader的程序结构与调试 153
5.5.4常用Bootloader的简介 154
习题与思考题 155
第6章 嵌入式μC/OS-Ⅱ操作系统及应用 157
6.1 μC/OS-Ⅱ操作系统概述 157
6.1.1 μC/OS-Ⅱ操作系统功能和特点 157
6.1.2 μC/OS-Ⅱ操作系统的内核结构 158
6.1.3 μC/OS-Ⅱ操作系统的主要功能模块 162
6.1.4 μC/OS-Ⅱ操作系统的初始化 165
6.2 ARM ADS开发环境 165
6.2.1代码生成开发工具 166
6.2.2集成开发环境IDE 166
6.2.3调试器 167
6.2.4 ARM应用库和实用程序 167
6.3 μC/OS-Ⅱ操作系统在ARM系统中的移植 168
6.3.1 μC/OS-Ⅱ操作系统的移植条件 168
6.3.2 μC/OS-Ⅱ操作系统的移植步骤 169
6.4基于μC/OS-Ⅱ操作系统的应用开发 175
6.4.1基于μC/OS-Ⅱ操作系统的应用程序结构 175
6.4.2 μC/OS-Ⅱ操作系统的API 176
6.4.3基于μC/OS-Ⅱ操作系统的绘图函数及应用 177
习题与思考题 183
第7章 嵌入式Linux操作系统及应用 184
7.1嵌入式Linux操作系统概述 184
7.1.1嵌入式Linux操作系统分类 184
7.1.2嵌入式Linux内核组成与启动过程 186
7.2嵌入式Linux操作系统的开发工具 188
7.2.1编译器GCC 188
7.2.2编译器Makefile 189
7.2.3调试器gdb 191
7.3嵌入式Linux操作系统的内核编译及驱动程序的开发 192
7.3.1嵌入式Linux操作系统的定制过程 193
7.3.2增加新的内核组件 194
7.3.3配置操作系统内核及内核的生成和装载 196
7.3.4嵌入式系统的文件系统 197
7.3.5嵌入式Linux操作系统的驱动程序开发 197
7.4嵌入式Linux操作系统的应用开发 204
7.4.1概述 204
7.4.2操作系统图形用户接口(GUI) 204
7.4.3 Qt/Embedded开发技术 205
习题与思考题 210
第8章 Windows CE操作系统的应用与开发 211
8.1 Windows CE操作系统概述 211
8.1.1 Windows CE操作系统的发展 211
8.1.2 Windows CE操作系统的特点 211
8.1.3 Windows CE操作系统的体系结构 213
8.2 Windows CE操作系统的开发工具 216
8.2.1 eMbedded Visual C++ 216
8.2.2 Platform Builder 217
8.3 Windows CE操作系统内核编译及驱动程序的开发 218
8.3.1 Windows CE内核的裁剪与编译 218
8.3.2驱动程序的开发 224
8.4基于Windows CE操作系统的应用开发 226
8.4.1 eMbedded Visual C++集成开发环境的应用 227
8.4.2应用程序的创建 228
8.4.3编译生成可执行文件 229
8.4.4应用程序的调试 231
习题与思考题 233
第9章 开发应用实例——物流盘点机 234
9.1概述 234
9.2物流盘点机硬件系统的设计 234
9.2.1系统核心板的组成与工作原理 235
9.2.2系统板的组成与工作原理 237
9.2.3专用键盘的设计 240
9.3物流盘点机软件系统的设计 241
9.3.1操作系统的定制与实现 241
9.3.2系统驱动程序的开发 243
9.3.3用户应用程序的开发 245
参考文献 247