ARM9嵌入式系统设计直通车

出版日期:2014-1
ISBN:9787121220016
作者:潘念,李立功,葛广一
页数:548页

作者简介

本书由浅入深,全面、系统地介绍ARM9嵌入式开发。本书每章都提供大量有针对性的实例,供读者实战演练。另外,为了帮助读者高效、直观地学习,本书每章配有大量图片和表格。 本书对ARM9嵌入式开发做了全面介绍,全书共23章,分为5篇。基础篇介绍ARM9基础知识、ARM体系结构、ARM指令集、Thumb指令集,同时也介绍S3C2440的GPIO接口、处理器控制器、UART、SPI以及ADC和触摸屏接口等。提高篇介绍ARM9嵌入式开发环境的建立,ARM9嵌入式Linux系统移植。其中,嵌入式开发环境的建立详细介绍Linux操作系统开发环境的搭建和模拟软件SkyEye环境的搭建,系统移植介绍BootLoad移植、内核移植及构建Linux文件系统。实例篇介绍基于Qt的嵌入式GUI开发、基于ARM9与QTE4的数据采集图形界面设计、基于ARM9及QTE4的图像处理。

书籍目录

第1篇  ARM处理器基础知识
第1章 嵌入式系统开发介绍
2
1.1 嵌入式系统介绍
2
1.1.1 嵌入式系统概念
3
1.1.2 重要组成部分
3
1.2 嵌入式系统的组成
4
1.2.1 通用设备接口和I/O接口
6
1.2.2 中间层
7
1.2.3 系统软件层
8
1.3 嵌入式系统的优点及特点
8
1.3.1 嵌入式系统的优点
9
1.3.2 嵌入式系统的特点
9
1.4 嵌入式处理器
10
1.4.1 嵌入式微处理器
10
1.4.2 嵌入式微控制器
11
1.4.3 嵌入式DSP处理器
11
1.4.4 SOC片上系统
11
1.5 嵌入式操作系统
12
1.5.1 操作系统包含的功能
12
1.5.2 嵌入式操作系统的特点
13
1.5.3 嵌入式操作系统的分类
14
1.5.4 嵌入式技术应用及发展趋势
15
1.6 嵌入式技术发展趋势
16
1.7 小结
17
第2章 ARM处理器概述
18
2.1 ARM处理器介绍
18
2.2 ARM体系结构的版本和变量
19
2.2.1 ARM体系结构的版本
19
2.2.2 ARM体系结构的变量
24
2.2.3 ARM/Thumb体系结构版本命名
25
2.3 ARM处理器的命名规则
26
2.4 ARM处理器结构
28
2.4.1 RISC中的关键技术
29
2.4.2 ARM和Thumb状态
30
2.4.3 ARM寄存器
30
2.4.4 ARM指令集概述
31
2.4.5 Thumb指令集概述
31
2.5 ARM处理器系列
32
2.5.1 ARM7系列
32
2.5.2 ARM9系列
33
2.5.3 ARM9E系列
33
2.5.4 ARM10E系列
34
2.5.5 ARM11系列
35
2.5.6 SecurCore系列
35
2.5.7 XScale系列
36
2.5.8 StrongARM系列
37
2.5.9 Cortex系列
38
2.6 小结
39
第3章 ARM9处理器与编程模型
40
3.1 ARM9处理器产品
40
3.1.1 ARM9进步之处
40
3.1.2 操作指令
41
3.1.3 ARM9产品举例
42
3.1.4 ARM9E系列微处理器
44
3.2 ARM9编程模型
45
3.2.1 ARM9数据类型
45
3.2.2 ARM9体系结构的存储器格式
45
3.2.3 ARM9处理器的工作状态
46
3.2.4 ARM9处理器模式
47
3.2.5 ARM寄存器
47
3.2.6 异常
51
3.3 小结
54
第4章 ARM指令集与寻址方式
55
4.1 指令集编码
55
4.2 条件执行
55
4.3 指令分类及指令格式
57
4.3.1 数据处理指令
57
4.3.2 Load/Store指令
61
4.3.3 程序状态寄存器与通用寄存器之间的传送指令
66
4.3.4 转移指令
66
4.3.5 异常中断指令
67
4.3.6 协处理器指令
68
4.3.7 乘法指令
70
4.3.8 伪指令
71
4.4 ARM基本寻址方式
72
4.4.1 立即寻址
72
4.4.2 寄存器寻址
72
4.4.3 寄存器间接寻址
73
4.4.4 基址变址寻址
74
4.4.5 基址加偏址寻址
74
4.4.6 堆栈寻址
74
4.4.7 块复制寻址
75
4.4.8 相对寻址
76
4.5 小结
76
第5章 Thumb指令集
77
5.1 Thumb指令集概述
77
5.2 Thumb寄存器和ARM寄存器之间的关系
78
5.3 Thumb指令集分类介绍
79
5.3.1 存储器指令
79
5.3.2 数据处理指令
82
5.3.3 分支指令
86
5.3.4 中断和断点指令
88
5.4 小结
88
第2篇 S3C2440嵌入式系统基础
第6章 GPIO接口
90
6.1 GPIO硬件介绍
90
6.1.1 GPxCON寄存器
91
6.1.2 GPxDAT寄存器
92
6.1.3 GPxUP寄存器
92
6.2 软件访问硬件
92
6.2.1 访问单个引脚
92
6.2.2 以总线方式访问硬件
92
6.2.3 软件如何读写GPIO
93
6.3 LED的GPIO接口实例
95
6.4 小结
98
第7章 存储器控制器
99
7.1 概述
99
7.2 功能描述
101
7.2.1 bank0总线宽度设置
101
7.2.2 nWAIT引脚操作
102
7.2.3 nXBREQ/nXBACK引脚操作
103
7.3 存储器接口实例
103
7.3.1 ROM存储器接口实例
104
7.3.2 SRAM存储器接口实例
105
7.3.3 SDRAM存储器接口实例
106
7.3.4 可编程存储器访问周期
107
7.4 存储器控制寄存器
108
7.4.1 总线宽度和等待控制寄存器
108
7.4.2 bank控制寄存器
109
7.4.3 刷新控制寄存器
111
7.4.4 banksize寄存器
111
7.4.5 模式寄存器集寄存器
112
7.5 存储器实例
112
7.6 小结
116
第8章 MMC/SD/SDIO控制器
117
8.1 概述
117
8.2 SD操作
118
8.3 特殊寄存器
119
8.4 SD实例
127
8.5 小结
141
第9章 Nand Flash控制器
142
9.1 Nand Flash介绍及其控制器使用
142
9.1.1 Flash
142
9.1.2 Nand Flash的物理结构
144
9.1.3 Nand Flash的访问方法
148
9.2 S3C2440 Nand Flash 控制器
160
9.2.1 操作方法概述
161
9.2.2 寄存器介绍
161
9.3 Nand Flash 控制器实例
162
9.4 小结
182
第10章 系统时钟和定时器
183
10.1 S3C2440时钟体系和电源管理模块
183
10.1.1 功能描述
184
10.1.2 电源管理
189
10.1.3 特殊寄存器
195
10.2 PWM及定时器
200
10.2.1 特点
200
10.2.2 脉宽调制定时器特殊寄存器
206
10.3 实时时钟
211
10.3.1 特点
211
10.3.2 实时时钟操作
212
10.3.3 实时时钟特殊寄存器
213
10.4 看门狗定时器
219
10.4.1 特点
219
10.4.2 看门狗定时器操作
219
10.4.3 看门狗定时器特殊寄存器
220
10.5 小结
222
第11章 中断控制器
223
11.1 概述
223
11.2 中断控制器操作
223
11.3 中断控制器特殊寄存器
227
11.4 中断方式键盘扫描实例
235
11.5 小结
238
第12章 UART
239
12.1 概述
239
12.2 UART操作
241
12.3 特殊寄存器
246
12.4 UART实例
252
12.5 小结
258
第13章 串行外围设备接口
259
13.1 概述
259
13.1.1 SPI相关概念
259
13.1.2 S3C2440A的SPI
260
13.2 SPI操作方法
261
13.2.1 编程步骤
261
13.2.2 传输格式
262
13.3 SPI特殊寄存器
263
13.4 SPI使用实例
265
13.5 小结
276
第14章 ADC和触摸屏接口
277
14.1 概述
277
14.2 特点
277
14.3 ADC及触摸屏接口操作
278
14.4 功能描述
279
14.4.1 AD转换时间
279
14.4.2 触摸屏接口模式
279
14.4.3 编程细节
280
14.5 ADC及触摸屏接口特殊寄存器
281
14.5.1 ADC控制寄存器
281
14.5.2 ADC触摸屏控制寄存器
282
14.5.3 ADC开始延时寄存器
283
14.5.4 ADC转换数据寄存器0
283
14.5.5 ADC转换数据寄存器1
284
14.5.6 ADC触摸屏指针上下中断检测寄存器
284
14.6 ADC驱动程序及测试程序
284
14.6.1 三通道ADC驱动程序
285
14.6.2 三通道ADC采样测试程序
289
14.7 小结
291
第3篇 建立ARM9嵌入式开发环境
第15章 无操作系统的ARM9开发方法
294
15.1 硬件开发
294
15.2 软件开发
295
15.2.1 软件开发基础
295
15.2.2 软件开发方法
298
15.3 使用EWARM进行无操作系统开发
301
15.4 EWARM使用实例
305
15.5 小结
314
第16章 嵌入式Linux开发环境的搭建
315
16.1 嵌入式Linux概述
315
16.2 嵌入式Linux常用工具
319
16.2.1 交叉编译工具
319
16.2.2 vim编辑器
320
16.2.3 Linux编译器gcc及编译工具
322
16.2.4 Makefile和Make命令
324
16.2.5 GNU调试工具
326
16.2.6 Linux内核编译
327
16.3 建立micro2440开发板的Linux开发环境
328
16.3.1 Fedora 9.0安装步骤
329
16.3.2 解压安装源代码及其他工具
344
16.3.3 配置网络文件系统NFS服务
348
16.4 小结
350
第17章 SkyEye环境搭建
351
17.1 SkyEye概述
351
17.1.1 SkyEye的特点
351
17.1.2 SkyEye的配置
352
17.1.3 SkyEye的使用指南
353
17.2 环境搭建
354
17.2.1 Linux操作系统安装和配置
354
17.2.2 交叉编译环境安装
357
17.3 SkyEye测试
359
17.3.1 SkyEye-testsuite-1.3.0_rc1测试包
359
17.3.2 测试U-Boot
359
17.3.3 测试μClinux
361
17.3.4 测试μClinux的网络功能
364
17.3.5 手工编译μClinux内核
364
17.4 小结
371
第4篇 ARM9嵌入式Linux系统移植
第18章 BootLoader移植
374
18.1 BootLoader简介
374
18.1.1 BootLoader概述
375
18.1.2 BootLoader的安装媒介
375
18.1.3 BootLoader支持的体系结构
376
18.1.4 BootLoader的启动过程和操作模式
377
18.1.5 BootLoader的常见种类
378
18.2 U-Boot移植
381
18.2.1 U-Boot简介
381
18.2.2 U-Boot源码结构
381
18.2.3 U-Boot启动过程
382
18.2.4 U-Boot的编译过程
389
18.2.5 U-Boot移植
391
18.2.6 U-Boot移植实例
391
18.2.7 U-Boot常用命令
394
18.2.8 U-Boot命令启动Linux内核
401
18.3 小结
402
第19章 Linux内核移植
403
19.1 Linux内核的基本概念
403
19.1.1 Linux内核版本和分类
403
19.1.2 Linux的体系结构
406
19.2 内核启动
421
19.2.1 BootLoader启动过程
421
19.2.2 Linux启动过程
423
19.2.3 建立目标板Linux的基本步骤
424
19.2.4 Linux内核的配置和编译
426
19.2.5 Linux内核的Kconfig及Makfile分析
428
19.3 Linux内核移植实例
436
19.4 小结
443
第20章 构建Linux文件系统
444
20.1 Linux根文件系统概述
444
20.1.1 Linux文件系统的目录结构
444
20.1.2 嵌入式Linux文件系统的常见类型
453
20.2 BusyBox制作根文件系统
457
20.2.1 BusyBox安装
457
20.2.2 BusyBox工作原理
460
20.2.3 BusyBox制作文件系统
467
20.3 小结
468
第5篇 ARM9嵌入式应用开发实例
第21章 基于Qt的嵌入式GUI开发
470
21.1 嵌入式GUI概述
470
21.1.1 嵌入式GUI的发展状况
470
21.1.2 基于ARM处理器的嵌入式Linux开发方法
471
21.2 Qt程序移植
473
21.2.1 Linux操作系统
473
21.2.2 软件开发环境Qt4
473
21.2.3 软件平台建立
474
21.3 计算器实例
480
21.4 小结
491
第22章 基于ARM9与QTE4的数据采集图形界面设计
492
22.1 micro2440开发板概述
492
22.2 多通道AD驱动
494
22.2.1 Linux设备驱动
494
22.2.2 多通道AD驱动
495
22.2.3 AD驱动编译进内核
498
22.2.4 AD采样程序设计
499
22.3 图形界面设计及移植
500
22.3.1 主界面设计
500
22.3.2 曲线绘制的设计
503
22.3.3 整体工作流程及程序移植
504
22.3.4 测试
506
22.4 主界面控制程序
508
22.5 小结
515
第23章 基于ARM9及QTE4的图像处理
516
23.1 ARM9与图像处理
516
23.2 OpenCV库编译及移植
516
23.2.1 Linux下OpenCV编译安装
517
23.2.2 ARM版OpenCV编译安装
518
23.3 在Qt软件添加OpenCV连接库
522
23.3.1 动态连接库与静态连接库
522
23.3.2 Qt软件添加OpenCV库
523
23.3.3 OpenCV库中的IplImage类型与Qt的QImage类型转换
524
23.4 基于ARM9和OpenCV图像边缘提取实例
529
23.5 小结
531


 ARM9嵌入式系统设计直通车下载



发布书评

 
 


 

农业基础科学,时尚,美术/书法,绘画,软件工程/开发项目管理,研究生/本专科,爱情/情感,动漫学堂PDF下载,。 PDF下载网 

PDF下载网 @ 2024