第1章 嵌入式系统概论1.1 嵌入式系统1.1.1 嵌入式系统概述1.1.2 嵌入式系统的定义1.2 嵌入式系统的发展1.3 嵌入式系统的特点1.4 嵌入式系统的基本分类1.5 嵌入式系统的组成结构1.6 嵌入式处理器1.7 嵌入式系统的发展趋势1.7.1 嵌入式系统的现状1.7.2 嵌入式系统的发展方向1.8 嵌入式系统的相关研究领域1.8.1 嵌入式系统的主干学科领域1.8.2 与嵌入式系统关系密切的技术领域本章小结习题与思考题第2章 ARM核及ARM处理器的体系结构2.1 ARM的发展历史2.2 ARM系列处理器概述2.2.1 ARM处理器家族2.2.2 ARM核与体系结构版本2.2.3 ARM体系结构版本的变种2.2.4 ARM体系结构版本的命名规则2.3 ARM芯片选型2.4 ARM处理器的结构2.4.1 ARM处理器的RSIC特征2.4.2 流水线2.4.3 ARM的工作模式和工作状态2.4.4 ARM寄存器的组织2.5 ARM存储器的组织2.5.1 ARM存储器的数据类型和存储格式2.5.2 ARM的存储体系2.5.3 片内存储器的用法2.5.4 协处理器CP152.6 存储管理单元2.7 ARM处理器的Cache2.8 快速上下文切换扩展2.9 写缓存区2.10 哈佛结构2.11 桶型移位器2.12 看门狗定时器2.13 边界对准与端序2.14 地址重映射2.15 ARM处理器的片上总线标准AMBA2.16 AMBA2.0片上总线的主控单元和从动单元2.17 AMBA2.0总线的时序2.18 ARM7处理器核的S3C4510B2.18.1 复位2.18.2 总线周期2.18.3 ARM7TDMI处理器的总线优先级2.19 I/O端口统一编址与特殊功能寄存器本章小结习题与思考题第3章 ARM指令集与程序设计3.1 ARM体系结构指令集3.2 ARM处理器的寻址方式和指令系统3.2.1 ARM指令集的编码格式和语法3.2.2 ARM处理器的寻址方式3.2.3 ARM指令的分类说明3.3 ARM的异常中断处理3.3.1 ARM的异常中断响应过程3.3.2 从异常中断处理程序返回3.4 ARM汇编语言程序设计3.4.1 ARM汇编语言程序的格式3.4.2 ARM汇编语言程序编写规范3.4.3 ARM汇编语言指示符3.4.4 ARM过程调用标准ATPCS和AAPCS3.5 典型ARM汇编语言程序举例3.5.1 入门的范例3.5.2 基本结构3.6 ARM汇编、C和C++混合编程3.6.1 内嵌汇编3.6.2 C/C++与汇编程序的相互调用3.6.3 软中断和半主机方式ARM汇编程序设计3.7 GNU格式的ARM汇编语言程序设计3.7.1 GNU格式的ARM汇编语言程序的设计要点3.7.2 GNU格式ARM汇编语言程序举例本章小结习题与思考题第4章 嵌入式系统外部设备4.1 嵌入式系统的半导体存储器4.1.1 静态存储器和同步动态存储器4.1.2 嵌入式处理器上配接SDRAM4.2 闪速存储器4.3 嵌入式系统总线4.3.1 I2C总线4.3.2 SPI总线接口4.3.3 CAN总线4.3.4 PCI04总线4.4 嵌入式系统接口4.4.1 UART接口4.4.2 通用输入/输出接口4.4.3 USB接口4.4.4 以太网接口4.5 嵌入式系统的外部设备4.5.1 键盘4.5.2 液晶显示器4.5.3 触摸屏本章小结习题与思考题第5章 嵌入式系统开发工具5.1 基于ARM的嵌入式开发工具概述5.1.1 交叉开发5.1.2 指令集模拟器5.1.3 ROM仿真器5.1.4 片上调试技术与背景调试模式(BDM)5.1.5 半主机调试方式5.1.6 评估电路板5.2 各种ARM开发工具简介5.2.1 ARMSDT5.2.2 ARMADS5.2.3 RealViewMDK5.2.4 ARM的Multi-ICE仿真器5.2.5 ULINK2.0仿真器5.3 基于ARM的嵌入式系统开发方法5.4 EmbestARM实验教学系统5.4.1 教学系统介绍5.4.2 uVisionIDE集成开发环境5.4.3 ULINKUSB-JTAG仿真器5.4.4 EmbestEdukit-Ⅲ嵌入式教学实验平台5.4.5 教学系统的安装5.5 集成开发环境使用说明5.5.1 μVisionIDE主框架窗口5.5.2 工程管理5.5.3 工程基本配置5.5.4 工程的编译链接5.5.5 加载调试5.5.6 Flash编程工具本章小结第6章 嵌入式操作系统概论6.1 嵌入式操作系统概述6.1.1 基本特点6.1.2 抢占式内核6.2 嵌入式操作系统分类6.3 实时系统6.3.1 概念6.3.2 实时系统的属性和指标6.3.3 实时系统的分类6.3.4 实时调度6.4 嵌入式系统启动程序BootLoader6.4.1 嵌入式系统的启动方式6.4.2 BootLoader的程序结构与调试6.4.3 BootLoader人机交互接口设计6.5 嵌入式实时操作系统内核6.5.1 实时操作系统内核6.5.2 网络支持6.5.3 用户交互环境界面6.6 嵌入式Linux系统6.6.1 基于Linux的嵌入式系统6.6.2 μCLinux6.6.3 实时RTLinux6.6.4 嵌入式RTLinux的创建本章小结第7章 嵌入式Linux系统开发环境7.1 Linux的历史和现状7.2 协同开发模式7.3 基于Edukit-Ⅲ开发板的开发环境介绍7.3.1 交叉编译工具链的创建7.3.2 Linux宿主机环境设置及项目空间建立7.3.3 Windows工作机环境设置7.4 嵌入式系统移植7.4.1 系统移植概述7.4.2 基于Edukit-Ⅲ开发板的BootLoader实现7.4.3 嵌入式Linux内核移植7.4.4 嵌入式根文件系统创建7.4.5 系统烧写过程7.4.6 系统测试结果7.5 触摸屏驱动程序设计7.5.1 嵌入式Linux驱动程序7.5.2 触摸屏硬件原理7.5.3 触摸屏驱动流程设计7.5.4 触摸屏驱动设计分析7.5.5 配置和编译驱动程序7.5.6 测试触摸屏驱动程序本章小结参考文献参考网站