第1章 嵌入式系统概况 1
1.1 嵌入式系统的定义 1
1.2 嵌入式技术的应用领域及发展趋势 1
1.2.1 嵌入式技术的现状 1
1.2.2 嵌入式技术的应用领域 2
1.2.3 嵌入式技术的发展趋势 6
1.3 嵌入式系统组成简介 8
1.3.1 嵌入式系统的重要特征 9
1.3.2 典型嵌入式系统的硬件组成 11
1.3.3 嵌入式系统的软件组成 14
习题 16
第2章 嵌入式系统的基本知识 17
2.1 嵌入式系统的硬件基础 17
2.1.1 基于ARM技术的嵌入式系统硬件架构 18
2.1.2 硬件系统基本体系结构原理 19
2.2 嵌入式系统的软件基础 29
2.2.1 软件基础知识 29
2.2.2 嵌入式实时操作系统简介 32
2.2.3 常用的嵌入式操作系统 35
习题 40
第3章 基于ARM的处理器体系结构 41
3.1 ARM架构的嵌入式微处理器 41
3.1.1 基于ARM指令集体系结构的分类版本 41
3.1.2 ARM微处理器系列产品及性能简介 42
3.1.3 ARM微处理器体系结构 50
3.2 ARM微处理器的指令系统 60
3.2.1 概述 60
3.2.2 ARM指令的寻址方式和指令集的分类方法 62
3.2.3 基于ARM体系的语言程序设计 66
3.3 常用的三种.ARM微处理器 71
3.3.1 Samsung S3C44BOX的内部结构 71
3.3.2 S3C2410微处理器 76
3.3.3 Intel XScale PXA25x/27x系列微处理器 79
习题 83
第4章 基于ARM的硬件结构设计 85
4.1 概述 85
4.1.1 嵌入式系统的设计步骤 85
4.1.2 嵌入式系统开发方法和开发经验 91
4.1.3 嵌入式系统设计的层次和设计架构 93
4.2 微处理器系统的硬件设计 94
4.2.1 微处理器芯片选型的一般原则 94
4.2.2 多路时钟电路的设计 95
4.2.3 系统复位电路的设计 96
4.2.4 电源管理器 97
4.3 存储系统的分析与设计 98
4.3.1 存储系统的工作原理 98
4.3.2 存储系统的构成分析 100
4.3.3 存储器系统的设计 105
4.4 通用I/O接口的设计 106
4.4.1 中断接口概述 107
4.4.2 RS-232-C串行接口 110
4.4.3 USB接口电路的设计 112
4.4.4 JTAG接口与嵌入式系统的在线调试方法 113
4.4.5 A/D转换接口 119
4.5 人机交互接口 120
4.5.1 显示器接口 120
4.5.2 键盘接口 123
4.5.3 触摸屏 125
4.5.4 嵌入式系统中几种常用的接口 127
4.6 常用的嵌入式系统网络接口 129
4.6.1 I2C总线接口设计 129
4.6.2 CAN总线接口设计 130
4.6.3 嵌入式以太网设计 132
4.6.4 嵌入式Internet 135
4.6.5 无线通信技术 137
习题 141
第5章 μC/OS-Ⅱ在ARM系统中的应用与开发 143
5.1 μC/OS-Ⅱ系统的特点及结构 143
5.1.1 μC/OS-Ⅱ系统的特点 143
5.1.2 μC/OS-Ⅱ系统的内核结构 144
5.1.3 主要模块 146
5.1.4 μC/OS-Ⅱ操作系统的初始化 148
5.2 μC/OS-Ⅱ在ARM系统中的移植 149
5.2.1 μC/OS-Ⅱ移植条件 149
5.2.2 μC/OS-Ⅱ移植步骤 151
5.3 基于μC/OS-Ⅱ的应用开发 157
5.3.1 在μC/OS-Ⅱ系统上的应用程序结构 157
5.3.2 μC/OS-Ⅱ的API 158
5.3.3 基于μC/OS-Ⅱ的绘图函数以及开发实例 159
习题 168
第6章 嵌入式Linux操作系统的应用与开发 169
6.1 嵌入式Linux操作系统的组成与版本 169
6.2 嵌入式Linux操作系统的开发工具 172
6.2.1 编译器Gcc的使用 172
6.2.2 Makefile的使用 174
6.2.3 gdb的使用 176
6.3 Linux操作系统内核的配置及编译 177
6.3.1 嵌入式Linux操作系统的定制过程 178
6.3.2 增加新的内核组件 179
6.3.3 配置操作系统内核 180
6.3.4 生成内核及内核的装载 181
6.3.5 嵌入式系统的文件系统 181
6.4 基于Linux操作系统的开发 182
6.4.1 基于Linux操作系统的应用程序开发 182
6.4.2 嵌入式Linux操作系统图形用户接口 183
6.4.3 MiniGUI的应用 184
6.4.4 驱动程序的开发 189
习题 194
第7章 WindowS CE操作系统的应用与开发 195
7.1 Windows CE操作系统的体系结构 195
7.1.1 分层模型 195
7.1.2 组件模型 196
7.2 Windows CE的开发工具 198
7.2.1 Platform Builder的使用 198
7.2.2 eMbedded Visual C++的使用 199
7.3 Windows CE操作系统的开发 200
7.3.1 Windows CE的裁减与编译 200
7.3.2 驱动程序的开发 207
7.4 基于Windows CE操作系统的应用开发 209
习题 216
第8章 系统低功耗设计与提高稳定性的措施 217
8.1 嵌入式系统中的低功耗设计 217
8.2 系统的稳定性和抗干扰措施 218
8.2.1 系统中常见的几种干扰源 218
8.2.2 硬件电路中常采用的抗干扰措施和方法 220
8.2.3 软件系统中常用的抗干扰措施和方法 226
习题 227
第9章 开发应用实例 228
9.1 概述 228
9.2 硬件系统的设计 228
9.2.1 系统核心板的组成与工作原理 228
9.2.2 系统板的组成与工作原理 231
9.2.3 专用键盘的设计 235
9.3 软件系统的设计 235
9.3.1 操作系统的定制与实现 235
9.3.2 盘点机系统驱动程序的开发 238
9.3.3 用户应用程序的开发 240
参考文献 242