内容简介
作为一种32位高性能、低成本的嵌入式RISC微处理器,ARM目前已经成为应用泛的嵌入式处理器。目前Cortex-A系列处理器已经占据了大部分中高端产品市场。刘洪涛、邹南编写的《ARM处理器开发详解:基于ARM Cortex-A8处理器的开发设计》在全面介绍Cortex-A8处理器的体系结构、编程模型、指令系统及开发环境的同时,以基于Cortex-A8的应用处理器——S5PC100为核心,详细介绍了系统的设计及相关接口技术。接口技术中涵盖了I/O、中断、串口、存储器、PWM、A/D、DMA、IIC、SPI、Camera、LCD等,并提供了大量的实验例程。《ARM处理器开发详解:基于ARM Cortex-A8处理器的开发设计》可以作为高等院校电子、通信、自动化、计算机等专业的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 嵌入式操作系统举例 6
1.3.1 商业版嵌入式操作系统 7
1.3.2 开源版嵌入式操作系统 7
1.4 嵌入式系统开发概述 8
1.5 学好微处理器在嵌入式学习中的重要性 14
1.6 本章小结 16
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 三星S5PC100处理器介绍 46
2.13 FS_S5PC100开发平台介绍 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 Load/Store指令 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章 GP