《ARM嵌入式应用技术基础》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:刘凯,周志光,张明编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2009
  • ISBN:9787302207528
  • 页数:285 页
图书介绍:本书以ARM7内核处理器和μC/OS-Ⅱ嵌入式操作系统为主线,引导初学者一步一步地登入ARM与嵌入式的应用殿堂。

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

1.1 认识嵌入式系统 1

1.1.1 嵌入式系统的定义 2

1.1.2 嵌入式系统发展的4个阶段 2

1.1.3 嵌入式系统的发展现状 4

1.1.4 嵌入式系统的组成 4

1.1.5 嵌入式系统实例 8

1.2 计算机系统的信息表示方式 10

1.2.1 进位计数制与转换 10

1.2.2 计算机中数的表示 12

1.2.3 基本的逻辑运算 17

1.3 本节附录 19

1.3.1 进制系统详述 19

1.3.2 二进制系统的乘除运算 20

第2章 ARM处理器基础 21

2.1 ARM7处理器概述 21

2.2 ARM处理器的数据格式 24

2.2.1 存储空间格式 24

2.2.2 ARM处理器的程序与数据存储 27

2.3 处理器模式与内部寄存器 28

2.3.1 处理器模式 28

2.3.2 内部寄存器 29

2.3.3 程序状态寄存器 31

2.4 ARM的异常处理 33

2.4.1 进入/退出异常 33

2.4.2 6种异常模式 34

2.4.3 异常中断向量与优先级 36

2.5 本节附录 37

2.5.1 ARM处理器系列 37

2.5.2 Thumb状态下的寄存器集 40

第3章 ARM的指令系统 41

3.1 ARM指令的寻址方式 41

3.1.1 立即寻址 41

3.1.2 寄存器寻址 42

3.1.3 寄存器移位寻址 42

3.1.4 寄存器间接寻址 43

3.1.5 基址寻址 43

3.1.6 多寄存器寻址 44

3.2 ARM指令概述 44

3.2.1 指令格式 44

3.2.2 指令的后缀 45

3.2.3 堆栈概念 48

3.3 ARM指令集 50

3.3.1 数据处理指令 50

3.3.2 存储器访问指令 56

3.3.3 分支跳转指令 59

3.3.4 协处理指令 60

3.3.5 杂项指令 60

3.3.6 ARM伪指令 62

3.4 ARM汇编指令实战 65

3.5 本节附录 69

3.5.1 Thumb状态切换到ARM状态 69

3.5.2 Thumb指令集与ARM指令集的区别 70

第4章 ARM的编程技术 71

4.1 汇编语言 71

4.1.1 ARM汇编程序的格式 71

4.1.2 伪指令语句 74

4.1.3 汇编语言程序设计及举例 84

4.2 C语言程序设计 88

4.2.1 使用Semihosting的服务 89

4.2.2 移植ADS1.2中的C语言函数库 92

4.2.3 编程规范 94

4.3 汇编语言与C/C++语言的混合编程 100

4.3.1 内嵌汇编语言指令 101

4.3.2 汇编与C/C++程序的变量相互访问 104

4.3.3 汇编与C/C++程序的函数相互调用 105

4.4 ARM编程实战 109

4.5 本节附录 116

4.5.1 ARM指令速查表 116

4.5.2 ARM伪指令速查表 118

第5章 操作范例 121

5.1 ADS1.2集成开发环境 121

5.1.1 CodeWarrior IDE简介 121

5.1.2 AXD调试器简介 122

5.2 范例一 汇编语言程序实验 122

5.2.1 工程的编辑 122

5.2.2 工程的调试 126

5.3 范例二 C程序实验 129

5.3.1 实验程序 129

5.3.2 实验步骤 130

5.3.3 实验调试 130

5.4 范例三 C程序与汇编程序实验 131

5.4.1 实验程序 131

5.4.2 实验步骤 132

5.4.3 实验调试 132

5.5 范例四 库文件定义与使用 134

5.5.1 实验程序 134

5.5.2 实验步骤 135

5.6 本节附录 137

5.6.1 集成开发环境 138

5.6.2 调试工具 139

第6章 ADS1.2开发工具的使用 141

6.1 软件开发 141

6.1.1 ADS集成开发工具 142

6.1.2 ADS开发环境的系统资源 144

6.2 程序的编辑 146

6.2.1 工程管理窗口介绍 146

6.2.2 代码编辑窗口介绍 148

6.2.3 编辑画面的设置 150

6.3 程序的汇编与编译 155

6.3.1 汇编与编译 155

6.3.2 ARM汇编器armasm的设置 157

6.3.3 ARM编译器armcc的设置 163

6.4 程序的链接 169

6.4.1 与链接相关的文件 169

6.4.2 ARM映像文件 171

6.4.3 ARM链接器生成的符号 175

6.4.4 链接器armlink的设置 177

6.5 本节附录 182

6.5.1 配置生成目标 182

6.5.2 scatter文件编写 186

6.5.3 工程项目模板 191

第7章 AXD调试工具的使用 192

7.1 AXD调试工具 192

7.1.1 AXD调试介绍 192

7.1.2 AXD调试步骤 194

7.1.3 View菜单介绍 196

7.2 AXD调试方法 203

7.2.1 常用的调试方法 203

7.2.2 单步调试 204

7.2.3 使用断点进行调试 205

第8章 初始化代码研究 208

8.1 初始化代码重点 208

8.2 初始化代码分析 209

8.2.1 中断向量表 209

8.2.2 初始化存储器系统 210

8.2.3 初始化堆栈 211

8.2.4 目标板初始化 212

第9章 LPC2220(ARM7)处理器 215

9.1 LPC2220芯片的功能 215

9.1.1 芯片功能介绍 215

9.1.2 芯片功能框图 216

9.2 LPC2220芯片的引脚 217

9.2.1 引脚描述 217

9.2.2 引脚功能设置 222

9.3 LPC2220芯片的功能模块 225

9.3.1 通用I/O口控制模块 225

9.3.2 12C串行接口模块 227

9.3.3 SPI串行接口模块 234

9.3.4 UART通信接口模块 238

9.3.5 看门狗模块 245

9.3.6 脉宽调制模块 247

9.3.7 A/D转换器模块 254

9.3.8 定时器(计数器)模块 258

9.3.9 实时时钟模块 264

9.4 LPC2220芯片的系统控制模块 272

9.4.1 时钟控制器 272

9.4.2 向量中断控制器 275

9.4.3 外部存储控制器 282

参考文献 285