ARM嵌入式应用开发技术白金手册

ARM嵌入式应用开发技术白金手册
作 者: 廖日坤
出版社: 中国电力出版社
丛编项: 研发电子丛书 嵌入式应用开发技术白金手册系列
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 嵌入式计算机
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《ARM嵌入式应用开发技术白金手册》作者简介

内容简介

本书从实用的角度出发,全面系统地介绍了ARM硬件体系结构、16/32位指令系统、开发调试、Linux嵌入式设计等开发ARM处理器的基本操作方法和技巧。全书共分11章,主要内容包括: ARM CPU概述、ARM系统结构、ARM指令系统、Thumb指令系统、ARM汇编语言程序设计、ARM高级语言程序设计、ARM嵌入式设计初步、ARM系统开发、ARM系统调试、ARM外围设备设计和ARM嵌入式Linux应用开发。本书内容丰富,讲解由浅入深、通俗易懂,具有很强的实用性和指导性,适合于ARM编程的初级用户或ARM嵌入式系统设计开发人员使用,同时也可作为高等院校相关专业的理想教材。

图书目录

丛书序

前 言

第1章 ARM CPU概述

1.1 ARM处理器概述 2

1.1.1 ARM Ltd.简介 2

1.1.2 ARM特点 2

1.1.3 ARM应用领域 3

1.2 ARM处理器系列 4

1.3 ARM编程技术 8

1.4 ARM系统开发的软硬件选择 11

1.4.1 开发ARM的硬件选择 11

1.4.2 开发ARM的软件选择 13

1.5 本章小结 15

1.6 习题 15

第2章 ARM系统结构

2.1 ARM内核基本结构 18

2.1.1 ARM内核 18

2.1.2 ARM扩展功能块 19

2.1.3 ARM启动方式 21

2.2 ARM处理器模式 22

2.3 ARM寄存器 22

2.3.1 通用寄存器 23

2.3.2 程序状态寄存器 24

2.3.3 ARM状态下的寄存器 26

2.3.4 Thumb状态下的寄存器 27

2.4 ARM指令寻址方式 28

2.5 ARM存储系统 30

2.5.1 ARM存储方法 30

2.5.2 存储空间管理单元MMU 31

2.6 ARM流水线与时序 32

2.6.1 ARM流水线 32

2.6.2 ARM时序 33

2.7 ARM中断与异常 34

2.7.1 ARM异常类型 34

2.7.2 异常的响应及返回 35

2.7.3 异常的描述 36

2.7.4 异常的处理 38

2.8 本章小结 38

2.9 习题 38

第3章 ARM指令系统

3.1 ARM指令系统概述 40

3.1.1 ARM指令的分类 40

3.1.2 ARM指令的条件域 42

3.2 ARM定点指令集 43

3.2.1 跳转与中断指令 43

3.2.2 数据处理指令 45

3.2.3 寄存器访问指令 54

3.2.4 加载、存储指令 56

3.2.5 协处理器指令 59

3.2.6 伪指令 61

3.3 ARM浮点指令集 64

3.4 ARM 32位指令应用实例 68

3.5 本章小结 69

3.6 习题 69

3.7 上机练习 70

第4章 Thumb指令系统

4.1 Thumb指令系统概述 74

4.1.1 Thumb特点 74

4.1.2 Thumb-2指令集 74

4.2 Thumb指令集 75

4.2.1 Thumb指令与ARM指令的区别 75

4.2.2 Thumb 跳转指令及软中断指令 76

4.2.3 Thumb 数据处理指令 77

4.2.4 Thumb加载、存储指令 83

4.2.5 Thumb 伪指令 86

4.3 Thumb 16位指令应用实例 87

4.4 ARM与Thumb混合编程实例 88

4.5 本章小结 89

4.6 习题 90

4.7 上机练习 90

第5章 ARM汇编语言程序设计

5.1 ARM汇编伪操作 94

5.1.1 ARM伪指令 94

5.1.2 ARM内置变量、预定义寄存器 97

5.2 ARM 汇编程序设计规范 99

5.2.1 汇编语句格式 99

5.2.2 标号 100

5.2.3 符号 101

5.2.4 表达式和运算符 102

5.2.5 段定义和宏定义 103

5.3 常用的ARM汇编子程序 105

5.4 ARM汇编程序设计实例 109

5.5 本章小结 112

5.6 习题 112

5.7 上机练习 113

第6章 ARM高级语言程序设计

6.1 ARM C/C++编程设计 116

6.1.1 文件结构 116

6.1.2 数据类型 119

6.1.3 表达式与基本语句 121

6.1.4 函数 124

6.2 ARM C/C++编程实例 126

6.3 ARM C/C++与汇编混合编程 131

6.3.1 ATPCS规则 131

6.3.2 内嵌汇编 133

6.3.3 C与汇编相互调用 138

6.4 ARM C与汇编混合编程实例 140

6.5 本章小结 142

6.6 习题 143

6.7 上机练习 143

第7章 ARM嵌入式设计初步

7.1 ARM嵌入式设计概述 146

7.1.1 嵌入式系统设计要求 146

7.1.2 嵌入式系统开发平台 147

7.2 印刷电路板PCB设计 148

7.2.1 PCB设计的一般原则 148

7.2.2 ARM系统中高频布线 150

7.3 ARM嵌入式软件开发 151

7.3.1 嵌入式软件的启动代码 151

7.3.2 嵌入式操作系统 153

7.4 ARM嵌入式软件开发过程 156

7.4.1 嵌入式软件的开发流程 156

7.4.2 交叉编译环境 157

7.4.3 编译、链接重定位和下载 158

7.4.4 调试 159

7.5 ARM嵌入式设计实例 161

7.6 本章小结 163

7.7 习题 163

7.8 上机练习 163

第8章 ARM系统开发

8.1 ARM开发工具概述 168

8.2 ARM Linux的GNU开发 170

8.2.1 Linux基础知识 170

8.2.2 GNU汇编器 172

8.2.3 GNU编译器 173

8.2.4 GNU make 175

8.2.5 GNU链接器 182

8.3 GNU开发ARM实例 183

8.4 ARM的ADS开发 185

8.4.1 ADS系统组成 185

8.4.2 Code Warrior IDE 187

8.4.3 命令行开发 195

8.4.4 ARM库函数 201

8.5 ADS开发ARM实例 203

8.6 本章小结 207

8.7 习题 207

8.8 上机练习 207

第9章 ARM系统调试

9.1 ARM调试方法概述 212

9.2 基于Linux的gdb调试 213

9.3 基于AXD的调试 218

9.4 辅助调试工具 223

9.5 ARM硬件调试实例 227

9.6 本章小结 231

9.7 习题 232

9.8 上机练习 232

第10章 ARM外围设备设计

10.1 ARM外围设备的设计方法 236

10.2 ARM外围设备编程 237

10.2.1 Flash的工作原理与编程 237

10.2.2 SDRAM的工作原理与编程 245

10.2.3 串口、以太网口的设计 249

10.2.4 其他相关模块设计 250

10.3 ARM外围设备设计实例 254

10.4 本章小结 261

10.5 习题 262

10.6 上机练习 262

第11章 ARM嵌入式Linux应用开发

11.1 嵌入式Linux开发流程 268

11.2 ARM嵌入式Linux开发 268

11.2.1 构造Linux下的ARM开发环境 269

11.2.2 安装Boot Loader 271

11.2.3 配置ARM Linux内核 284

11.2.4 创建根文件系统 288

11.2.5 构建嵌入式Linux系统的GUI环境 292

11.2.6 编写嵌入式Linux的设备驱动程序 294

11.3 ARM Linux开发实例 297

11.4 本章小结 300

11.5 习题 300

11.6 上机练习 301

附录A ARM芯片的应用选择

附录B ARM硬件原理图

附录C 术语汇编

附录D 部分思考练习题答案

参考文献