新書推薦:
《
人格阴影 全新修订版,更正旧版多处问题。国际分析心理学协会(IAAP)主席力作
》
售價:NT$
305.0
《
560种野菜野果鉴别与食用手册
》
售價:NT$
305.0
《
中国官僚政治研究(一部洞悉中国政治制度演变的经典之作)
》
售價:NT$
286.0
《
锂电储能产品设计及案例详解
》
售價:NT$
505.0
《
首辅养成手册(全三册)(张晚意、任敏主演古装剧《锦绣安宁》原著小说)
》
售價:NT$
551.0
《
清洁
》
售價:NT$
296.0
《
组队:超级个体时代的协作方式
》
售價:NT$
352.0
《
第十三位陪审员
》
售價:NT$
245.0
|
內容簡介: |
作为一种32位高性能、低成本的嵌入式RISC微处理器,ARM目前已经成为应用最广泛的嵌入式处理器。目前Cortex-A系列处理器已经占据了大部分中高端产品市场。
《ARM处理器开发详解——基于ARM Cortex-A8处理器的开发设计(第2版)》在全面介绍Cortex-A8处理器的体系结构、编程模型、指令系统及开发环境的同时,以基于Cortex-A8的应用处理器——S5PV210为核心,详细介绍了系统的设计及相关接口技术。接口技术涵盖了IO、中断、串口、存储器、PWM、AD、DMA、IIC、SPI、Camera、LCD等,并提供了大量的实验例程。
《ARM处理器开发详解——基于ARM Cortex-A8处理器的开发设计(第2版)》可以作为高等院校电子、通信、自动化、计算机等专业的ARM体系结构、接口技术课程的教材,也可作为嵌入式开发人员的参考书。
|
目錄:
|
第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 嵌入式操作系统举例 7
1.3.1 商业版嵌入式操作系统 7
1.3.2 开源版嵌入式操作系统 7
1.4 嵌入式系统开发概述 8
1.5 学好微处理器在嵌入式学习中的重要性 14
1.6 本章小结 15
1.7 思考题 16
第2章 ARM技术概述 17
2.1 ARM体系结构的技术特征及发展 17
2.1.1 ARM公司简介 17
2.1.2 ARM技术特征 18
2.1.3 ARM体系架构的发展 19
2.2 ARM微处理器简介 20
2.2.1 ARM9 处理器系列 21
2.2.2 ARM9E 处理器系列 22
2.2.3 ARM11 处理器系列 22
2.2.4 SecurCore 处理器系列 23
2.2.5 StrongARM和Xscale 处理器系列 23
2.2.6 MPCore 处理器系列 23
2.2.7 Cortex处理器系列 24
2.2.8 ARM应用处理器的最新发展现状 26
2.3 ARM 微处理器结构 27
2.4 ARM 微处理器的应用选型 27
2.4.1 ARM芯片选择的一般原则 28
2.4.2 选择一款适合ARM教学的CPU 28
2.5 Cortex-A8内部功能及特点 31
2.6 数据类型 32
2.6.1 ARM的基本数据类型 32
2.6.2 浮点数据类型 33
2.6.3 存储器大小端 33
2.7 Cortex-A8内核工作模式 34
2.8 Cortex-A8存储系统 35
2.8.1 协处理器(CP15) 36
2.8.2 存储管理单元(MMU) 37
2.8.3 高速缓冲存储器(Cache) 37
2.9 流水线 37
2.9.1 流水线的概念与原理 37
2.9.2 流水线的分类 38
2.9.3 影响流水线性能的因素 40
2.10 寄存器组织 40
2.11 程序状态寄存器 43
2.12 三星S5PC210处理器介绍 46
2.13 FS_S5PC210开发平台介绍 47
2.14 本章小结 49
2.15 练习题 50
第3章 ARM微处理器的指令系统 51
3.1 ARM处理器的寻址方式 51
3.1.1 数据处理指令寻址方式 51
3.1.2 内存访问指令寻址方式 53
3.2 ARM处理器的指令集 55
3.2.1 数据操作指令 55
3.2.2 乘法指令 62
3.2.3 LoadStore指令 65
3.2.4 跳转指令 71
3.2.5 状态操作指令 74
3.2.6 协处理器指令 76
3.2.7 异常产生指令 80
3.2.8 其他指令介绍 81
3.3 本章小结 83
3.4 思考题 83
第4章 ARM汇编语言程序设计 85
4.1 GNU ARM汇编器支持的伪操作 85
4.1.1 伪操作概述 85
4.1.2 数据定义(Data Definition)伪操作 85
4.1.3 汇编控制伪操作 87
4.1.4 杂项伪操作 89
4.2 ARM汇编器支持的伪指令 89
4.2.1 ADR伪指令 89
4.2.2 ADRL伪指令 90
4.2.3 LDR伪指令 91
4.3 GNU ARM 汇编语言的语句格式 92
4.4 ARM 汇编语言的程序结构 94
4.4.1 汇编语言的程序格式 94
4.4.2 汇编语言子程序调用 95
4.4.3 过程调用标准AAPCS 95
4.4.4 汇编语言程序设计举例 97
4.5 汇编语言与C语言的混合编程 98
4.5.1 GNU ARM内联汇编 98
4.5.2 混合编程调用举例 100
4.6 本章小结 102
4.7 思考题 102
第5章 ARM开发及环境搭建 103
5.1 仿真器简介 103
5.1.1 FS-JTAG仿真器介绍 103
5.1.2 ULINK介绍 104
5.2 开发环境搭建 105
5.3 Eclipse for ARM 使用 108
5.4 编译工程 109
5.5 调试工程 110
5.5.1 配置FS-JTAG 调试工具 110
5.5.2 配置调试工具 111
5.6 本章小结 114
5.7 练习题 114
第6章 GPIO编程 115
6.1 GPIO功能介绍 115
6.2 S5PV210芯片的GPIO控制器详解 115
6.2.1 特性 115
6.2.2 GPIO分组预览 116
6.2.3 S5PV2100的GPIO常用寄存器分类 116
6.2.4 GPIO功能描述 117
6.2.5 S5PV210 IO接口常用寄存器详解 118
6.2.6 GPIO数据寄存器 118
6.3 S5PV210 GPIO的应用 118
6.3.1 电路连接 119
6.3.2 寄存器设置 119
6.3.3 程序编写 119
6.4 本章小结 120
6.5 练习题 120
第7章 ARM异常及中断处理 121
7.1 ARM异常中断处理概述 121
7.2 ARM体系异常种类 122
7.3 ARM异常的优先级 127
7.4 ARM处理器模式和异常 127
7.5 ARM异常响应和处理程序返回 128
7.5.1 中断响应的概念 128
7.5.2 ARM异常响应流程 128
7.5.3 从异常处理程序中返回 129
7.6 ARM的SWI异常中断处理程序设计 131
7.7 FIQ和IRQ中断 133
7.7.1 中断分支 133
7.7.2 S5PV210中断机制分析 135
7.7.3 S5PV210中断处理程序实例 138
7.8 本章小结 141
7.9 练习题 141
第8章 串行通信接口 142
8.1 串行通信概述 142
8.1.1 串行通信与并行通信概念 142
8.1.2 异步串行方式的特点 142
8.1.3 异步串行方式的数据格式 143
8.1.4 同步串行方式的特点 143
8.1.5 同步串行方式的数据格式 143
8.1.6 比特率、比特率因子与位周期 144
8.1.7 RS-232C串口规范 144
8.1.8 RS-232C接线方式 146
8.2 S5PV210异步串行通信 146
8.2.1 S5PV210串口控制器概述 146
8.2.2 UART寄存器详解 148
8.3 接口电路与程序设计 152
8.3.1 电路连接 152
8.3.2 程序编写 153
8.3.3 调试与运行结果 154
8.4 本章小结 155
8.5 练习题 155
第9章 存储器接口 156
9.1 Flash ROM介绍 156
9.2 NAND Flash操作 158
9.2.1 芯片介绍 158
9.2.2 读操作过程 159
9.2.3 擦除操作过程 160
9.2.4 写操作过程 161
9.3 S5PV210中NAND Flash控制器的操作 161
9.3.1 S5PV210 NAND Flash控制器概述 161
9.3.2 S5PV210 NAND Flash控制器寄存器详解 162
9.4 S5PV210 NAND Flash接口电路与程序设计 164
9.4.1 K9F2G080U和S5PV210的接口电路 164
9.4.2 S5PV210控制K9F2G080U的程序设计 164
9.5 本章小结 168
9.6 练习题 168
第10章 定时器与RTC 169
10.1 S5P V210 PWM定时器 169
10.1.1 PWM定时器概述 169
10.1.2 PWM定时器的特点 170
10.1.3 PWM定时器的寄存器 171
10.1.4 PWM定时器操作示例 176
10.2 S5PV210看门狗定时器 177
10.2.1 S5PV210看门狗定时器概述 177
10.2.2 看门狗定时器寄存器 178
10.2.3 看门狗定时器程序编写 179
10.3 RTC 181
10.3.1 RTC介绍 181
10.3.2 RTC控制器 182
10.3.3 RTC控制器寄存器详解 182
10.3.4 RTC测试例子 184
10.4 本章小结 185
10.5 练习题 185
第11章 AD转换器 186
11.1 AD转换器原理 186
11.1.1 AD转换基础 186
11.1.2 AD转换的技术指标 187
11.1.3 AD转换器类型 188
11.1.4 AD转换的一般步骤 192
11.2 S5PV210 AD转换器 192
11.2.1 S5PV210 AD转换器概述 192
11.2.2 S5PV210 AD控制器寄存器 193
11.3 AD转换器应用举例 195
11.3.1 电路连接 195
11.3.2 程序编写 195
11.3.3 调试与运行结果 196
11.4 本章小结 197
11.5 练习题 197
第12章 DMA(PL330)控制器 198
12.1 PL330原理概述 198
12.1.1 DMAC简述 198
12.1.2 S5PV210下的DMAC模型 199
12.1.3 PL330简述 200
12.2 PL330详解 202
12.2.1 PL330指令集 202
12.2.2 相关寄存器详解 207
12.3 S5PV210 PL330测试例子 209
12.4 本章小结 213
12.5 练习题 213
第13章 LCD接口设计 214
13.1 LCD控制器 214
13.1.1 LCD控制器介绍 214
13.1.2 S5PV210的 LCD控制器介绍 215
13.1.3 S5PV210的LCD控制器操作 216
13.1.4 LCD控制器寄存器 218
13.2 LCD控制器实例 223
13.3 本章小结 227
13.4 练习题 227
第14章 CAMIF接口技术 228
14.1 OV9650介绍 228
14.1.1 芯片功能描述 228
14.1.2 OV9650物理参数 229
14.1.3 OV9650寄存器详解 230
14.2 SCCB总线 232
14.2.1 SCCB协议介绍 232
14.2.2 SCCB的总线编程 233
14.3 CAMIF接口详解 234
14.3.1 基于S5PV210的CAMIF接口介绍 234
14.3.2 S5PV210 CAMIF寄存器详解 236
14.3.3 CAMIF操作案例 239
14.4 本章小结 243
14.5 练习题 243
第15章 SPI接口 244
15.1 SPI总线协议理论 244
15.1.1 协议简介 244
15.1.2 协议内容 244
15.2 SPI控制器详解 246
15.2.1 S5PV210的SPI控制器简介 246
15.2.2 时钟源控制 247
15.2.3 寄存器详解 247
15.3 SPI开发例子 249
15.4 本章小结 255
15.5 练习题 255
第16章 I2C接口 256
16.1 I2C总线 256
16.1.1 I2C总线介绍 256
16.1.2 I2C总线术语 256
16.1.3 I2C总线位传输 257
16.1.4 I2C总线数据传输 257
16.1.5 I2C总线寻址方式 258
16.1.6 快速和高速模式 259
16.2 I2C总线控制器 260
16.2.1 S5PV210下的I2C控制器介绍 260
16.2.2 I2C总线控制寄存器详解 260
16.3 I2C总线的实际应用 262
16.3.1 应用分析 262
16.3.2 代码实现 266
16.4 本章小结 267
16.5 练习题 267
参考文献 268
|
內容試閱:
|
随着消费群体对产品要求的日益提高,嵌入式技术在机械器具制造业、电子产品制造业、信息通信业、信息服务业等领域得到了大显身手的机会,并被越来越广泛地应用。ARM作为一种32位的高性能、低成本的嵌入式RISC微处理器,已得到最广泛的应用。目前,Cortex-A系列处理器已经占据了嵌入式处理器大部分的中高端产品市场,尤其是在移动设备市场上,几乎占据了绝对垄断的地位。
伴随着Android系统的发展,ARM也越来越被大家所了解和接受,企业对ARM技术人才的需求也越来越大。各高校也已经认识到了这一点,并设置了相关课程。但建立一套完整的嵌入式教学课程,是一项非常复杂的工作,尤其是如何和企业需求相结合,更是高校所需要面临的重大问题。目前市场上的嵌入式开发相关书籍大多是针对研发人员编写的,并不太适合高校教学使用。北京华清远见科技信息有限公司长期以来致力于嵌入式培训,为市场输送了大量的嵌入式人才。为了普及嵌入式技术,公司计划着手针对高职院校的特点编写一套嵌入式教材。教材的内容涵盖ARM体系结构、接口技术、Linux操作系统、Linux C语言及Linux应用开发实训。本书重点讲解ARM体系结构及接口技术部分。
在学习本书之前,读者需要具有数字电路、C语言等基础知识。通过本书的学习,读者可以掌握ARM体系结构和基于Cortex-A8核心的S5PV210处理器常见硬件接口的开发方法。
本书以S5PV210处理器为平台,介绍了嵌入式系统开发的各个主要环节。本书侧重实践,辅以代码加以讲解,从分析的角度来学习嵌入式开发的各种技术。本书使用的工具是FS-JTAG仿真器。FS-JTAG是华清远见研发中心为了推进ARM Cortex-A8处理器的教学,提高合作企业及合作院校广大技术爱好者和培训学员的学习效率,研发出的低价的可以支持Cortex-A8的ARM仿真器。
本书将嵌入式软硬件理论讲解和嵌入式实验实践融合在一起,全书共16章。其中,第1章为嵌入式系统基础知识,介绍了嵌入式系统的组成及嵌入式开发概述。第2章为ARM技术概述,讲解了ARM体系结构、应用选型及编程模型等。第3章为ARM微处理器的指令系统,重点介绍了ARM指令集。第4章为ARM汇编语言程序设计,主要介绍了GUN ARM汇编伪操作、GNU ARM汇编支持的伪指令、汇编语言与C语言的混合编程。第5章为ARM开发环境搭建,包括Eclipse环境介绍、FS-JTAG仿真器使用等。第6章为GPIO编程,介绍了GPIO的概念及S5PV210的GPIO操作方法。第7章为ARM异常及中断处理,介绍了ARM处理器的异常处理及S5PV210的中断控制器工作原理。第8章为串行通信接口,介绍了串行通信的概念及S5PV210串口的操作方法。第9章为存储器接口,介绍了NAND Flash存储器的操作方法。第10章为定时器与RTC,介绍了定时器的工作原理及S5PV210定时器接口的操作方法。第11章为AD转换器,介绍了AD转换器的工作原理及S5PV210 AD控制器的操作方法。第12章为DMA(PL330)控制器,介绍了ARM公司最新的PL330 DMA控制器的开发方法和PL330指令。第13章为LCD接口设计,介绍了S5PV210的LCD控制器的工作原理。第14章为CAMIF接口技术,结合OV9650摄像头,介绍了S5PV210 CAMIF控制器的开发方法。第15章为SPI接口,结合CAN控制器,介绍了SPI总线协议和S5PV210 SPI控制器开发方法。第16章为I2C接口,结合EEPROM存储器,讲解了I2C协议和S5PV210的I2C控制器开发方法。
本书的出版要感谢华清远见嵌入式培训中心的无私帮助。本书的前期组织和后期审校工作都凝聚了培训中心几位老师的心血,他们认真阅读了书稿,提出了大量中肯的建议,并帮助纠正了书稿中的很多错误。
全书由刘洪涛、邹南承担了书稿的编写及全书的统稿工作,参与本书编写的人员有刘洪涛、包文俊、田雨溪、谭翠君、李福亭、张晓平、王利丽、张志华、蔡蒙、任佳、张丹、甘炜国、杨胜利、季久峰、贾燕枫。
由于作者水平所限,书中不妥之处在所难免,恳请读者批评指正。对于本书的批评和建议,可以发表到www.farsight.com.cn技术论坛。
编 者
2014年2月
|
|