第1部分 基本理论 3
第1章 嵌入式系统的概述 3
1.1 嵌入式系统 3
1.2 基本概念 4
1.3 嵌入式系统的应用范围 4
第2章 嵌入式系统特点 6
2.1 嵌入式系统的特点综述 6
2.2 交叉编译 7
2.3 建立宿主PC端的开发环境 8
2.4 BootLoader 8
第3章 嵌入式系统的组成及开发 9
3.1 嵌入式系统的组成 9
3.2 嵌入式系统的层次结构 10
3.2.1 嵌入式系统的硬件 11
3.2.2 嵌入式处理器的分类 11
3.2.3 ARM处理器特点 11
3.2.4 嵌入式系统的软件 12
3.3 嵌入式系统开发的基本流程 12
3.4 基于Linux的嵌入式系统开发流程 13
3.5 嵌入式系统的调试 13
3.6 嵌入式软件开发的特点和面临的技术挑战 13
第4章 嵌入式系统的发展机遇与趋势 15
4.1 嵌入式技术是中国IT发展的难得机遇 15
4.2 嵌入式系统的发展趋势 15
第5章 实验预备 17
5.1 ARM7和ARM9的比较 17
5.2 哈佛结构与冯·诺依曼结构比较 20
5.3 ADS实验环境的搭建、配置与实例分析 21
实验1 基于ADS的实验环境的搭建与配置 21
实验2 基于ADS的环境的实例分析 31
第2部分 基础实验 49
第6章 基于ARM7的实验 49
6.1 与硬件资源相关的接口实验 49
6.2 交叉开发环境 49
6.3 系统结构简介 50
实验3 基于ARM的硬件BOOT的基本设计 51
实验4 ARM的I/O接口 53
实验5 ARM的中断过程 56
实验6 基于ARM的DMA实验 58
实验7 ARM的UART通信实验 60
实验8 ARM的A/D接口实验 63
第7章 基于μC/OS-Ⅱ的ARM系统的实验 65
7.1 μC/OS-Ⅱ简介 65
7.2 μC/OS-Ⅱ的特点 65
7.3 μC/OS-Ⅱ的文件结构 66
7.4 任务的状态与转换图 67
7.5 μC/OSⅡ的启动流程 67
7.6 μC/OS-Ⅱ的任务管理 67
7.7 μC/OS-Ⅱ的系统调用 68
实验9 μC/OS-Ⅱ的内核在ARM处理器上的移植 69
实验10 基于μC/OS-Ⅱ的串口驱动的应用 73
实验11 基于μc/OS-Ⅱ的LCD驱动的应用 75
实验12 基于μC/OS-Ⅱ的键盘驱动编写 78
实验13 基于μC/Os-Ⅱ的小型应用程序编写 80
第8章 基于μCLinux ARM系统的实验 83
8.1 Linux 83
8.2 Linux的特点 83
8.3 Linux作为嵌入式操作系统的优点 84
8.4 μCLinux简介 85
实验14 实验环境的搭建与配置 86
实验15 BootLoader引导程序 92
实验16 μCLinux的移植、内核文件的生成与刻录 97
实验17 关于μCLinux驱动程序的编写 101
实验18 μCLinux应用程序的编写 103
第9章 基于ARM9与硬件资源相关的实验 105
9.1 ARM9及其特点 105
9.2 平台简介 105
9.3 性能指标 106
9.4 实验说明 107
实验19 GPIO接口与端口控制 109
实验20 实时时钟实验 114
实验21 基于I2C的EEPROM实验 118
实验22 基于I2C的数码管扫描电路实验 121
实验23 WATCHDOG 123
实验24 触摸屏控制实验 124
实验25 发光二极管点阵(8×8) 129
第3部分 基于ARM&Linux嵌入式系统的开发实验 133
第10章 基于ARM&Linux嵌入式系统的基本实验 133
10.1 Linux作为嵌入式操作系统的优点 133
10.2 实验设备 133
10.3 预备知识 133
10.4 Linux驱动程序的介绍 133
10.5 Linux驱动程序原理 134
10.6 Linux系统下的设备驱动程序简述 135
10.7 Linux系统下的具体实现 136
实验26 基于ARM9+Linux的嵌入式开发的实验准备 137
实验27 简单的驱动程序示例 155
实验28 LCD控制实验 156
实验29 CAN总线通信 160
第4部分 基于ARM自主设计与创新实验 167
附录 嵌入式系统网络资源 167
参考文献 168