前 言
第1 章 ARM 嵌入式技术概论 1
1. 1 ARM 处理器的历史及发展 1
1. 2 ARM 处理器简介 2
1. 2. 1 ARM 处理器特征 2
1. 2. 2 ARM 处理器架构 2
1. 2. 3 Cortex 处理器架构 3
1. 3 ARM 处理器系列 3
1. 3. 1 Classic ARM 处理器 3
1. 3. 2 Cortex A 系列处理器 4
1. 3. 3 Cortex M 系列处理器 7
1. 3. 4 Cortex R 系列处理器 8
1. 3. 5 SecurCore 系列处理器 9
1. 4 ARM 处理器的芯片选型 10
本章小结 11
思考题 11
第2 章 ARM 处理器体系结构 12
2. 1 数据类型 12
2. 2 处理器工作模式 12
2. 3 ARM 处理器的存储系统 13
2. 3. 1 存储空间 13
2. 3. 2 存储格式 13
2. 3. 3 存储管理单元 14
2. 3. 4 高速缓冲存储器 14
2. 3. 5 协处理器 15
2. 4 寄存器组织 15
2. 4. 1 ARM 处理器模式下的寄存器分布 15
2. 4. 2 通用寄存器 17
2. 4. 3 程序状态寄存器 18
2. 5 异常处理 21
2. 5. 1 ARM 处理器异常类型 21
2. 5. 2 ARM 异常处理 22
2. 5. 3 异常优先级 27
2. 6 ARM Cortex A9 内核架构 28
2. 6. 1 ARM Cortex A9 架构简介 28
2. 6. 2 ARM Cortex A9 单核技术 28
2. 6. 3 ARM Cortex A9 多核技术 28
本章小结 31
Ⅵ
思考题 31
第3 章 ARM 处理器指令系统 32
3. 1 ARM 指令集概述 32
3. 2 ARM 指令的基本格式 33
3. 2. 1 ARM 指令集编码 33
3. 2. 2 ARM 指令基本语法格式 33
3. 3 ARM 指令的寻址方式 35
3. 4 ARM 存储器访问指令 39
3. 5 ARM 数据处理指令 42
3. 6 ARM 分支指令 49
3. 7 协处理器指令 50
3. 8 杂项指令 52
3. 9 其他指令介绍 54
本章小结 56
思考题 56
第4 章 Exynos4412 处理器简介 57
4. 1 处理器功能介绍 57
4. 2 处理器引脚介绍 59
4. 3 内核单元 64
4. 4 存储器系统 65
4. 5 多媒体处理单元 65
4. 6 外部连接及通信接口 66
4. 7 系统外设单元 66
4. 8 GPIO 单元 66
4. 9 通用中断控制器 67
4. 10 SPI 接口功能单元 68
4. 11 I2C 接口功能单元 69
4. 12 UART 接口功能单元 70
4. 13 ADC 功能单元 70
本章小结 71
思考题 71
第5 章 Exynos4412 实验教学系统设计 72
5. 1 实验教学系统概述 72
5. 2 Exynos4412 存储模块 75
5. 3 Exynos4412 电源管理系统 75
5. 4 LED/ KEY 模块 76
5. 5 UART 模块 77
5. 6 红外信号接收器 78
5. 7 CAN/ RS 485 通信接口模块 79
5. 8 3 AXIS 传感器模块 80
5. 9 温度传感器模块 80
5. 10 音频模块 81
5. 11 ADC 模块 82
5. 12 LCD 模块 82
Ⅶ
5. 13 摄像头接口模块 84
5. 14 TF 卡/ SD 卡存储模块 85
5. 15 USB 模块 85
本章小结 86
思考题 86
第6 章 Exynos4412 部件编程实例 87
6. 1 GPIO 编程 87
6. 1. 1 GPIO 功能描述 87
6. 1. 2 Exynos4412 的GPIO 常用寄存器分类 87
6. 1. 3 Exynos4412 的GPIO 常用寄存器详解 88
6. 1. 4 GPIO 编程实例 90
6. 2 中断控制器编程 94
6. 2. 1 ARM 处理器的中断响应流程 94
6. 2. 2 Exynos4412 中断概述 95
6. 2. 3 中断相关控制寄存器 95
6. 2. 4 ARM 中断编程实例 101
6. 3 异步串行编程 105
6. 3. 1 Exynos4412 串口简述 106
6. 3. 2 UART 通信寄存器详解 106
6. 3. 3 UART 通信编程实例 110
6. 4 PWM 定时器编程 113
6. 4. 1 PWM 定时器的寄存器 114
6. 4. 2 定时器的PWM 输出工作流程 116
6. 4. 3 PWM 的编程实例 116
6. 5 MMU 编程 118
6. 5. 1 MMU 的作用 118
6. 5. 2 MMU 的工作流程 119
6. 5. 3 MMU 编程实例 120
本章小结 123
思考题 123
第7 章 Linux 程序开发 124
7. 1 开发工具GNU 概述 124
7. 1. 1 GCC 编译器 124
7. 1. 2 GNU Make 126
7. 1. 3 makefile 编程实例 130
7. 2 Linux 文件