第1章 嵌入式系统概述 1
1.1嵌入式系统定义的界定 1
1.2常用32位嵌入式处理器 3
1.2.1嵌入式微控制器MCU 3
1.2.2嵌入式微处理器MPU 4
1.2.3专用处理器 4
1.2.4 ARM芯片上微控制器技术、微处理器技术和专用处理器技术的融合 5
1.3嵌入式芯片的SOC化和嵌入式系统的SOPC 7
1.3.1 ARM公司及知识产权(IP)公司 7
1.3.2芯片的IP和SOC化 8
1.3.3 SOPC技术 10
1.4基于ARM的32位嵌入式系统应用领域 11
第2章 ARM嵌入式处理器核和处理器 13
2.1 ARM公司IP产品概述 13
2.1.1一个调查 13
2.1.2 ARM体系结构和CPU的发展 14
2.1.3 ARM公司给出的CPU核分类 21
2.2 ARM编程结构 22
2.2.1 ARM处理器工作状态 22
2.2.2 ARM处理器数据类型和大小端存储模式 22
2.2.3 ARM寄存器组 23
2.2.4 ARM处理器工作模式 25
2.2.5 ARM程序状态寄存器 26
2.2.6 ARM异常 30
2.3 ARM处理器核 35
2.4 ARM处理器 38
2.5指令流水线 45
第3章 常用嵌入式ARM芯片 51
3.1 AMBA总线介绍 52
3.2 Samsung公司的ARM芯片 53
3.2.1芯片介绍 53
3.2.2基于S3C24A0的应用实例 55
3.3 Atmel公司的ARM芯片 58
3.3.1芯片介绍 58
3.3.2基于AT91RM9200的应用实例 66
3.4 NXP(Philips)公司的ARM芯片 69
3.4.1芯片介绍 69
3.4.2基于LPC2119的应用实例 73
3.5 Marvell(Intel)公司的ARM芯片 76
3.5.1芯片介绍 76
3.5.2基于IXP2800/IXP2850的应用实例 85
3.6 Freescale公司的ARM芯片 87
3.6.1芯片介绍 87
3.6.2基于MCIMX31/i.MX31的应用实例 92
3.7 TI公司的ARM芯片 95
3.7.1芯片介绍 95
3.7.2基于OMAP5912的应用实例 103
3.8嵌入式芯片选型 104
第4章 嵌入式ARM开发工具 107
4.1 ARM芯片调试系统原理 108
4.1.1调试部分 108
4.1.2跟踪部分 117
4.2链接/仿真工具 118
4.2.1 JTAG仿真器 118
4.2.2在线仿真器ICE 120
4.2.3集成开发环境自带的仿真软件 120
4.2.4 Multi2000集成开发环境 121
4.2.5 RVDS集成开发环境 122
4.3 ADS集成开发环境 122
4.3.1 ADS介绍 123
4.3.2 ADS应用 124
4.4英蓓特公司的Embest IDE集成开发环境 133
4.4.1概述 133
4.4.2应用 135
第5章 汇编语言 142
5.1集成开发环境汇编程序框架 142
5.2寻址方式 144
5.3 ARM和Thumb指令概述 148
5.4 ARM指令详解 153
5.5 Thumb指令详解 168
5.6伪操作、伪指令和宏指令 169
5.6.1 GNU伪操作和宏指令 170
5.6.2 ARM伪操作和宏操作 172
5.6.3伪指令 175
5.6.4 ARM集成开发环境和GNU集成开发环境程序互移植 176
5.7汇编程序 178
5.7.1 ARM编程模型相关知识汇编语言实现 178
5.7.2源程序分析 184
第6章 ARM嵌入式系统开发 217
6.1 ARM嵌入式系统开发概述 217
6.1.1概述 217
6.1.2 ARM芯片特点 218
6.2 S3C44B0X和S3C2410X芯片概述 221
6.2.1 S3C44B0X芯片概述 221
6.2.2 S3C2410X芯片概述 227
6.3基本ARM嵌入式系统 234
6.3.1概述 234
6.3.2基本ARM嵌入式系统的实现 235
6.4不使用操作系统的嵌入式系统开发 256
6.4.1中断控制器 257
6.4.2看门狗定时器 267
6.4.3 I/O接口/端口 269
6.5使用操作系统的嵌入式系统开发 277
6.5.1嵌入式应用软件 280
6.5.2嵌入式数据库 285
第7章 串口通信工程实践 292
7.1通信基础知识 293
7.2 ARM SOC芯片UART片上扩展控制器 296
7.2.1 S3C44B0X片上扩展控制器UART 296
7.2.2 S3C2410X的UART 306
7.3实际IDE开发环境的工程文件 308
7.3.1嵌入式系统简单初始化 309
7.3.2集成开发环境文件介绍 317
7.4串口通信工程硬件实现 319
7.5串口通信软件实现 321
7.5.1基于GNU集成开发环境的源程序 325
7.5.2源程序程序扩充 342
7.5.3源程序推广 343
7.5.4进一步操作 344
参考文献 349