《大学教材 ARM嵌入式体系结构与接口技术 Cortex-A9版 微课版》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:华清远见嵌入式学院,刘洪涛,秦山虎著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2017
  • ISBN:7115449092
  • 页数:224 页
图书介绍:

第1章 嵌入式ARM技术概论 1

1.1 ARM体系结构的技术特征及发展 2

1.1.1 ARM公司简介 2

1.1.2 ARM技术特征 2

1.1.3 ARM体系架构的发展 3

1.2 ARM微处理器简介 4

1.2.1 ARM9处理器系列 5

1.2.2 ARM9E处理器系列 5

1.2.3 ARM11处理器系列 6

1.2.4 SecurCore处理器系列 6

1.2.5 StrongARM和Xscale处理器系列 6

1.2.6 MPCore处理器系列 6

1.2.7 Cortex处理器系列 6

1.2.8 ARM应用处理器发展现状与趋势 8

1.3 ARM微处理器架构 9

1.4 ARM微处理器的应用选型 10

1.4.1 ARM芯片选择的一般原则 10

1.4.2 选择一款适合ARM教学的CPU 10

1.5 Cortex-A9内部功能及特点 12

1.6 数据类型 13

1.6.1 ARM的基本数据类型 13

1.6.2 浮点数据类型 13

1.6.3 存储器大/小端 14

1.7 Cortex-A9内核工作模式 14

1.8 Cortex-A9存储系统 15

1.8.1 协处理器(CP15) 16

1.8.2 存储管理单元(MMU) 17

1.8.3 高速缓冲存储器(Cache) 17

1.9 流水线 17

1.9.1 流水线的概念与原理 17

1.9.2 流水线的分类 18

1.9.3 影响流水线性能的因素 19

1.10 寄存器组织 19

1.11 程序状态寄存器 21

1.12 三星Exynos4412处理器介绍 24

1.13 FS4412开发平台介绍 25

1.14 本章小结 29

1.15 练习题 29

第2章 ARM开发环境搭建 30

2.1 仿真器简介 31

2.2 开发环境搭建 31

2.2.1 Windows XP环境安装FS-JTAG工具 32

2.2.2 Windows 7/Windows 8环境安装FS-JTAG工具 34

2.2.3 Windows8.1环境安装FS-JTAG工具 39

2.2.4 连接硬件平台 42

2.2.5 USB转串口驱动安装 42

2.2.6 Putty串口终端配置 43

2.3 Eclipse for ARM使用 45

2.4 导入一个已有工程 45

2.5 调试工程 49

2.5.1 配置FS-JTAG调试工具 49

2.5.2 配置调试工具 49

2.5.3 查看变量及寄存器的方法 53

2.5.4 断点设置方法 54

2.5.5 查看内存数据信息方法 54

2.5.6 调试结束后的处理 55

2.6 创建一个新工程 56

2.7 编译工程 58

2.8 64位eclipse编译常见问题及解决 60

2.9 本章小结 62

2.10 练习题 62

第3章 ARM指令 63

3.1 ARM指令集 64

3.1.1 数据处理指令寻址方式 64

3.1.2 乘法指令 69

3.1.3 跳转指令 71

3.1.4 Load/Store指令 74

3.1.5 状态寄存器传输指令 79

3.1.6 协处理器指令 81

3.1.7 异常产生指令 82

3.2 ARM指令的寻址方式 84

3.2.1 数据处理指令的操作数的寻址方式 84

3.2.2 字及无符号字节的Load/Store指令的寻址方式 85

3.2.3 批量Load/Store指令的寻址方式 86

3.2.4 相对寻址 88

3.3 本章小结 88

3.4 练习题 88

第4章 ARM汇编程序设计 89

4.1 GNU ARM汇编器的伪操作 90

4.1.1 符号定义伪操作 90

4.1.2 数据定义伪操作 91

4.1.3 汇编控制伪操作 93

4.1.4 杂项伪操作 94

4.2 ARM汇编器支持的伪指令 96

4.2.1 ADR伪指令 96

4.2.2 ADRL伪指令 97

4.2.3 LDR伪指令 97

4.3 ARM汇编语言的程序结构 98

4.3.1 汇编语言的程序格式 98

4.3.2 汇编语言的子程序调用 99

4.3.3 汇编语言程序设计举例 99

4.4 汇编语言与C语言的混合编程 100

4.4.1 GNU内联汇编 100

4.4.2 C和汇编的相互调用 103

4.4.3 过程调用标准AAPCS/ATPCS 104

4.5 本章小结 105

4.6 练习题 105

第5章 GPIO编程 106

5.1 GPIO功能介绍 107

5.2 Exynos4412-GPIO控制器详解 107

5.2.1 GPIO功能描述 107

5.2.2 GPIO特性 107

5.2.3 GPIO分组预览 108

5.2.4 Exynos4412-GPIO常用寄存器分类 108

5.2.5 Exynos4412-GPIO接口常用寄存器详解 109

5.2.6 GPIO寄存器封装 110

5.3 GPIO控制实验 112

5.3.1 实验目的 112

5.3.2 实验原理 112

5.3.3 实验内容 113

5.3.4 实验代码 113

5.3.5 实验现象 114

5.4 本章小结 114

5.5 练习题 114

第6章 ARM异常及中断处理 115

6.1 ARM异常中断处理概述 116

6.2 ARM体系异常种类 116

6.3 ARM异常的优先级 121

6.4 ARM处理器模式和异常 121

6.5 ARM异常响应和处理程序返回 122

6.5.1 中断响应的概念 122

6.5.2 ARM异常响应流程 122

6.5.3 从异常处理程序中返回 123

6.6 ARM的SWI异常中断处理程序设计 124

6.7 ARM中断控制器简介 126

6.7.1 中断软件分支处理(NVIC和GIC) 126

6.7.2 硬件支持的分支处理(VIC) 127

6.8 通用中断控制器(GIC) 128

6.8.1 GIC功能模块 129

6.8.2 GIC中断控制器中断类型 130

6.8.3 GIC中断控制器中断状态 130

6.8.4 GIC中断处理流程 130

6.9 Exynos4412中断源 131

6.10 Exynos4412-GIC寄存器详解 131

6.11 GIC中断实验 135

6.11.1 实验目的 135

6.11.2 实验原理 135

6.11.3 实验内容 136

6.11.4 实验代码 137

6.11.5 实验现象 140

6.12 本章小结 140

6.13 练习题 140

第7章 串行通信接口 141

7.1 串行通信概述 142

7.1.1 串行通信与并行通信概念 142

7.1.2 异步串行方式的特点 142

7.1.3 异步串行方式的数据格式 142

7.1.4 同步串行方式的特点 142

7.1.5 同步串行方式的数据格式 143

7.1.6 波特率、波特率因子与位周期 143

7.1.7 RS-232C串口规范 143

7.1.8 RS-232C接线方式 145

7.2 Exynos4412异步串行通信 145

7.2.1 Exynos4412串口控制器概述 145

7.2.2 UART寄存器详解 146

7.3 串口通信实验 151

7.3.1 实验目的 151

7.3.2 实验原理 151

7.3.3 实验内容 152

7.3.4 实验代码 152

7.3.5 实验现象 154

7.4 本章小结 155

7.5 练习题 155

第8章 PWM定时器 156

8.1 定时器和PWM简介 157

8.1.1 定时器概述 157

8.1.2 脉冲宽度调制(PWM)概述 157

8.2 Exynos4412-PWM定时器详解 157

8.2.1 PWM定时器概述 157

8.2.2 PWM定时器寄存器详解 158

8.2.3 PWM定时器双缓冲功能 161

8.2.4 PWM定时器PWM信号输出 162

8.3 PWM定时器实验——定时触发 163

8.3.1 实验目的 163

8.3.2 实验原理 163

8.3.3 实验代码 163

8.3.4 实验现象 165

8.4 PWM定时器实验——PWM输出 166

8.4.1 实验目的 166

8.4.2 实验原理 166

8.4.3 实验代码 166

8.4.4 实验现象 167

8.5 本章小结 167

8.6 练习题 167

第9章 看门狗定时器 168

9.1 看门狗简介 169

9.2 Exynos4412看门狗定时器详解 169

9.2.1 看门狗定时器概述 169

9.2.2 看门狗定时器寄存器详解 170

9.3 看门狗定时器实验 171

9.3.1 实验目的 171

9.3.2 实验原理 171

9.3.3 实验内容 171

9.3.4 实验代码 171

9.3.5 实验现象 172

9.4 本章小结 173

9.5 练习题 173

第10章 RTC定时器 174

10.1 RTC简介 175

10.2 Exynos4412-RTC定时器详解 175

10.2.1 RTC定时器概述 175

10.2.2 RTC定时器寄存器详解 175

10.2.3 BCD码 177

10.3 实时时钟RTC实验 177

10.3.1 实验目的 177

10.3.2 实验原理 177

10.3.3 实验内容 178

10.3.4 实验代码 178

10.3.5 实验现象 179

10.4 本章小结 180

10.5 练习题 180

第11章 A/D转换器 181

11.1 A/D转换器原理 182

11.1.1 A/D转换基础 182

11.1.2 A/D转换的技术指标 182

11.1.3 A/D转换器类型 183

11.1.4 A/D转换的一般步骤 186

11.2 Exynos4412-A/D转换器详解 186

11.2.1 Exynos4412-A/D转换器概述 186

11.2.2 Exynos4412-A/D转换器寄存器详解 187

11.3 A/D实验 188

11.3.1 实验目的 188

11.3.2 实验原理 188

11.3.3 实验内容 188

11.3.4 实验代码 189

11.3.5 实验现象 191

11.4 本章小结 191

11.5 练习题 192

第12章 I2C接口 193

12.1 I2C总线协议 194

12.1.1 I2C总线协议简介 194

12.1.2 I2C总线协议内容 194

12.2 Exynos4412-I2C控制器详解 197

12.2.1 I2C总线控制器概述 197

12.2.2 I2C总线控制器寄存器详解 197

12.2.3 I2C控制器操作流程 200

12.3 I2C重力感应/陀螺仪实验 201

12.3.1 实验目的 201

12.3.2 实验原理 201

12.3.3 实验内容 202

12.3.4 实验代码 203

12.3.5 实验现象 206

12.4 本章小结 207

12.5 练习题 207

第13章 SPI接口 208

13.1 SPI总线协议 209

13.1.1 协议简介 209

13.1.2 协议内容 209

13.2 Exynos4412-SPI控制器详解 212

13.2.1 SPI控制器简介 212

13.2.2 SPI控制器时钟源控制 212

13.2.3 SPI控制器寄存器详解 215

13.3 SPI/CAN总线实验 218

13.3.1 实验目的 218

13.3.2 实验原理 218

13.3.3 实验内容 219

13.3.4 实验代码 220

13.3.5 实验现象 223

13.4 本章小结 224

13.5 练习题 224