《ARM嵌入式体系结构与接口技术 Cortex-A8版》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:华清远见嵌入式学院,杨胜利,刘洪涛主编
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2013
  • ISBN:9787115317414
  • 页数:257 页
图书介绍:本书在全面介绍ARM920T处理器的体系结构、编程模型、指令系统及RealView MDK开发环境的同时,以基于ARM920T的应用处理器S3C2410X为核心,详细介绍了系统的设计及相关接口技术。接口技术中涵盖了I/O、中断、串口、存储器、PWM、A/D、LCD,并提供了大量实验内容,在最后一章还提供了一个综合实例。

第1章 嵌入式系统基础知识 1

1.1嵌入式系统的概述 1

1.1.1嵌入式系统简介 1

1.1.2嵌入式系统的特点 2

1.1.3嵌入式系统的发展 3

1.2嵌入式系统的组成 5

1.2.1嵌入式系统的硬件组成 5

1.2.2嵌入式系统的软件组成 6

1.3嵌入式操作系统举例 6

1.3.1商业版嵌入式操作系统 6

1.3.2开源版嵌入式操作系统 7

1.4嵌入式系统开发概述 8

小结 13

思考与练习 13

第2章 ARM技术概述 14

2.1 ARM体系结构的技术特征及发展 14

2.1.1 ARM公司简介 14

2.1.2 ARM技术特征 15

2.1.3 ARM体系结构的发展 16

2.2 ARM微处理器简介 18

2.2.1 ARM7处理器系列 19

2.2.2 ARM9处理器系列 19

2.2.3 ARM9E处理器系列 20

2.2.4 ARM 11处理器系列 20

2.2.5 SecurCore处理器系列 20

2.2.6 StrongARM和Xscale处理器系列 21

2.2.7 MPCore处理器系列 21

2.2.8 Cortex处理器系列 21

2.3 ARM微处理器结构 23

2.4 ARM微处理器的应用选型 23

2.4.1 ARM芯片选择的一般原则 24

2.4.2选择一款适合教学的ARM芯片 24

2.5 Coreex-A8内部功能及特点 28

2.6数据类型 28

2.6.1 ARM的基本数据类型 28

2.6.2浮点数据类型 29

2.6.3存储器大/小端 29

2.7 Cortex-A8内核工作模式 30

2.8 Cortex-A8存储系统 31

2.8.1协处理器 32

2.8.2存储管理单元 33

2.8.3高速缓冲存储器 33

2.8.4 NEON技术 34

2.8.5安全域(TrustZone) 34

2.9流水线 34

2.9.1流水线的概念与原理 34

2.9.2流水线的分类 35

2.9.3影响流水线性能的因素 36

2.10寄存器组织 37

2.11程序状态寄存器 39

2.12 SAMSUNG S5PC 100处理器介绍 41

小结 43

思考与练习 43

第3章 ARM的指令集合 44

3.1 ARM指令集 44

3.1.1数据操作指令 44

3.1.2乘法指令 51

3.1.3 Load/Store指令 53

3.1.4 跳转指令 59

3.1.5状态操作指令 62

3.1.6协处理器指令 63

3.1.7异常产生指令 65

3.2 ARM指令的寻址方式 67

小结 71

思考与练习 71

第4章 GNU汇编伪指令集 72

4.1 GNU汇编器的平台无关伪指令 72

4.1.1伪指令概念 72

4.1.2符号定义伪指令 73

4.1.3数据定义伪指令 74

4.1.4汇编控制伪操作 76

4.1.5杂项伪操作 78

4.2 GNU汇编器支持的ARM伪指令 80

4.2.1 ADR伪指令 80

4.2.2 ADRL伪指令 80

4.2.3 LDR伪指令 81

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

4.3.1汇编语言的程序格式 82

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

4.3.3过程调用标准AAPCS/ATPCS 83

4.3.4汇编语言程序设计举例 84

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

4.4.1 GNU内联汇编 85

4.4.2 C和汇编的混合编程 87

小结 88

思考与练习 89

第5章 ARM集成开发环境搭建 90

5.1 FS-JTAG仿真器介绍 90

5.2开发环境搭建 91

5.2.1开发工具的安装 91

5.2.2创建一个新工程 93

5.2.3调试工程 95

小结 96

思考与练习 96

第6章 GPIO编程 97

6.1 GPIO功能介绍 97

6.2 S5PC 100芯片的GPIO控制器介绍 98

6.2.1特性 98

6.2.2 GPIO分组预览 98

6.2.3 S5PC 100的GPIO常用寄存器分类 98

6.2.4 S5PC100I/O接口常用寄存器详解 99

6.3 S5PC100的GPIO的实例 100

6.3.1电路原理 101

6.3.2寄存器设置 101

6.3.3程序编写 101

小结 102

思考与练习 102

第7章 ARM系统时钟及编程 103

7.1 S5PC100时钟域的划分 103

7.2 S5PC100时钟的产生过程分析 104

7.2.1时钟的产生 104

7.2.2模块对应的时钟域 105

7.3 S5PC100时钟源的选择 105

7.3.1时钟来自于外部引脚 105

7.3.2时钟来自于时钟管理单元(CMU) 106

7.4 S5PC100时钟的配置 106

7.5 S5PC100时钟配置寄存器描述 108

7.6 S5PC100时钟源配置示例 109

小结 110

思考与练习 110

第8章 ARM异常处理及编程 111

8.1 ARM异常中断处理概述 111

8.2 ARM体系异常种类 112

8.3 ARM异常的优先级 116

8.4 ARM处理器模式和异常 117

8.5 ARM异常响应和处理程序返回 117

8.5.1中断响应的概念 117

8.5.2 ARM异常响应流程 118

8.5.3从异常处理程序中返回 119

8.6 ARM系统中异常中断处理程序的安装 121

8.7 ARM的SWI异常中断处理程序设计 121

8.8 FIQ和IRQ异常中断程序设计 124

8.9基于Cortex-A8内核的S5PC100异常程序设计 125

8.9.1 S5PC100中断机制分析 125

8.9.2 S5PC100中断处理程序实例 128

小结 132

思考与练习 132

第9章 串行通信接口 133

9.1串行通信 133

9.1.1串行通信与并行通信的概念 133

9.1.2异步串行方式的特点 134

9.1.3异步串行方式的数据格式 134

9.1.4同步串行方式的特点 134

9.1.5同步串行方式的数据格式 134

9.1.6比特率、比特率因子与位周期 135

9.1.7 RS-232C串口规范 135

9.1.8 RS-232C接线方式 137

9.2 S5PC100异步串行通信 137

9.2.1 S5PC100串口控制器概述 137

9.2.2 S5PC100串口控制器寄存器 138

9.3串口发送接收程序示例 142

9.3.1电路连接 142

9.3.2程序的编写 142

9.3.3调试与运行程序 145

小结 145

思考与练习 145

第10章 PWM定时器 146

10.1 S5PC100 PWM定时器 146

10.1.1 PWM定时器概述 146

10.1.2 PWM定时器特点 147

10.1.3 PWM定时器的寄存器 148

10.1.4 PWM定时器示例 152

10.2 S5PC100看门狗定时器 154

10.2.1 S5PC100看门狗定时器概述 154

10.2.2看门狗定时器寄存器 155

10.2.3看门狗定时器程序编写 156

小结 157

思考与练习 157

第11章 A/D转换器 158

11.1 A/D转换器原理 158

11.1.1 A/D转换基础 158

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

11.1.3 A/D转换器类型 160

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

11.2 S5PC 100 A/D转换器 164

11.2.1 S5PC100 A/D转换器概述 164

11.2.2 S5PC100 A/D控制器寄存器 165

11.3 A/D转换器示例 167

11.3.1电路连接 167

11.3.2程序的编写 167

11.3.3调试与运行结果 168

小结 168

思考与练习 168

第12章 实时时钟RTC 169

12.1 RTC介绍 169

12.2 RTC控制器 170

12.3 RTC控制器寄存器详解 170

12.4 RTC应用示例 173

小结 174

思考与练习 174

第13章 I2C总线 175

13.1 I2C总线 175

13.1.1 I2C总线介绍 175

13.1.2 I2C总线术语 176

13.1.3 I2C总线位传输 176

13.1.4 I2C总线数据传输 177

13.1.5 I2C总线寻址方式 177

13.1.6快速和高速模式 178

13.2 I2C总线控制器 179

13.2.1 S5PC100下的I2C控制器介绍 179

13.2.2 I2C总线控制寄存器详解 179

13.3 I2C总线应用示例 180

13.3.1电路原理分析 180

13.3.2代码实现 182

小结 183

思考与练习 183

第14章 存储器接口 184

14.1 Flash ROM介绍 184

14.2 NOR Flash操作 186

14.2.1 AM29LV 160D芯片介绍 186

14.2.2 AM29LV 160D字编程操作 187

14.2.3 AM29LV 160D扇区/块擦除操作 188

14.2.4 AM29LV 160D芯片擦除操作 188

14.2.5 AM29LV 160D与S5PC100的接口电路 189

14.2.6 AM29LV 160D存储器的程序设计 190

14.3 NAND Flash操作 192

14.3.1芯片介绍 192

14.3.2读操作过程 193

14.3.3擦除操作过程 194

14.3.4写操作过程 195

14.4 S5PC100中NAND Flash控制器的操作 195

14.4.1 S5PC100中NAND Flash控制器概述 195

14.4.2 S5PC100中NAND Flash控制器寄存器详解 196

14.5 S5PC100 NAND Flash接口电路与程序设计 198

14.5.1 K9F2G080U和S5PC100的接口电路 198

14.5.2 S5PC100控制K9F2G080U的程序设计 198

小结 202

思考与练习 202

第15章 SPI接口 203

15.1 SPI总线协议理论 203

15.1.1协议简介 203

15.1.2协议内容 203

15.2 SPI控制器详解 205

15.2.1 S5PC 100的SPI控制器简介 205

15.2.2时钟源控制 206

15.2.3寄存器详解 206

15.3 SPI接口应用示例 208

小结 214

思考与练习 214

第16章 DMA控制器 215

16.1 PL330原理概述 215

16.1.1 DMAC简述 215

16.1.2 S5PC100下的DMAC模型 216

16.1.3 PL330简述 217

16.2 PL330详解 219

16.2.1 PL330指令集 219

16.2.2相关寄存器详解 223

16.3 S5PC100 PL330示例 224

小结 228

思考与练习 228

第17章 LCD接口技术 229

17.1 LCD控制器原理概述 229

17.1.1 LCD控制器介绍 229

17.1.2 S5PC 100的LCD控制器介绍 230

17.1.3 S5PC100的LCD控制器操作 231

17.1.4 LCD控制器寄存器 233

17.2 LCD控制器应用示例 237

小结 241

思考与练习 241

第18章 CAMIF接口技术 242

18.1 OV9650介绍 242

18.1.1芯片功能描述 242

18.1.2 OV9650物理参数 243

18.1.3 OV9650寄存器详解 244

18.2 SCCB总线 246

18.2.1 SCCB协议介绍 246

18.2.2 SCCB的总线编程 247

18.3 CAMIF接口详解 248

18.3.1基于S5PC100的CAMIF接口介绍 248

18.3.2 S5PC100 CAMIF寄存器详解 250

18.3.3 CAMIF应用示例 253

小结 256

思考与练习 256

参考文献 257