当前位置:首页 > 工业技术
ARM 9嵌入式系统开发与应用
ARM 9嵌入式系统开发与应用

ARM 9嵌入式系统开发与应用PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:董胡,刘刚,钱盛友著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2015
  • ISBN:9787121260322
  • 页数:276 页
图书介绍:本书对ARM处理器的体系结构、指令系统和开发工具作比较全面的介绍。其中包括ARM体系介绍、ARM汇编语言程序设计、基于ARM芯片LPC2200的硬件结构、嵌入式芯片部件工作原理与编程示例、Boot Loader及移植、嵌入式uCLinux、ARM集成开发环境介绍,并在此基础之上介绍一些典型的基于嵌入式系统应用的开发实例。
《ARM 9嵌入式系统开发与应用》目录

第1章 概述 1

1.1 嵌入式系统 1

1.1.1 嵌入式系统的概念 1

1.1.2 嵌入式系统的特点 1

1.1.3 嵌入式系统的分类 2

1.2 嵌入式系统的组成 2

1.2.1 嵌入式系统的组成结构 2

1.2.2 嵌入式系统的硬件特点 3

1.2.3 嵌入式系统的软件介绍 3

1.3 嵌入式系统的应用领域 4

1.4 嵌入式处理器 5

1.5 嵌入式操作系统 6

1.5.1 嵌入式操作系统的种类 6

1.5.2 几种典型的嵌入式操作系统介绍 7

1.6 嵌入式系统的开发 9

1.7 本章小结 10

思考与练习 10

第2章 ARM体系结构及工作方式 11

2.1 ARM体系结构简介 11

2.1.1 ARM的概念 11

2.1.2 ARM体系结构的演变 11

2.1.3 ARM体系结构的特征 12

2.1.4 ARM系列 13

2.1.5 ARM存储数据类型 14

2.1.6 ARM存储器层次 15

2.2 ARM处理器工作状态 15

2.3 ARM处理器工作模式 15

2.4 ARM处理器寄存器组织 16

2.4.1 ARM状态下的寄存器组织 16

2.4.2 Thumb状态下的寄存器组织 20

2.5 ARM异常 22

2.5.1 ARM异常概述 22

2.5.2 ARM异常响应 22

2.5.3 ARM异常返回 23

2.5.4 ARM异常进入/退出 23

2.5.5 ARM异常描述 24

2.5.6 ARM异常向量表 25

2.5.7 ARM异常优先级 25

2.6 ARM存储器和存储器映射I/O 25

2.6.1 ARM体系的存储空间 26

2.6.2 ARM存储器格式 26

2.6.3 非对齐存储器访问操作 27

2.6.4 存储器映射I/O 28

2.7 协处理器接口 29

2.7.1 可用的协处理器 30

2.7.2 关于未定义的指令 30

2.8 ARM系统调试接口 30

2.8.1 系统信号和调试工具 30

2.8.2 JTAG接口及应用 30

2.8.3 ETM接口 31

2.9 ATPCS介绍 31

2.10 本章小结 32

思考与练习 32

第3章 ARM处理器的指令系统 33

3.1 ARM指令集概述 33

3.1.1 指令分类和指令格式 33

3.1.2 ARM指令的条件码 36

3.2 ARM处理器寻址方式 37

3.2.1 寄存器寻址 37

3.2.2 立即寻址 38

3.2.3 寄存器移位寻址 38

3.2.4 寄存器间接寻址 38

3.2.5 基址寻址 38

3.2.6 多寄存器寻址 38

3.2.7 堆栈寻址 39

3.2.8 块复制寻址 39

3.2.9 相对寻址 39

3.3 ARM指令分类介绍 40

3.3.1 分支指令 40

3.3.2 数据处理指令 41

3.3.3 存储器访问指令 47

3.3.4 协处理器指令 52

3.3.5 杂项指令 54

3.3.6 几个常用的伪指令 57

3.4 Thumb指令分类介绍 59

3.4.1 分支指令 59

3.4.2 数据处理指令 60

3.4.3 存储器访问指令 64

3.4.4 杂项指令 67

3.5 本章小结 67

思考与练习 67

第4章 ARM汇编语言程序设计 70

4.1 ARM汇编伪指令 70

4.1.1 符号定义伪指令 70

4.1.2 数据定义伪指令 71

4.1.3 汇编控制伪指令 74

4.1.4 其他常用的伪指令 75

4.2 ARM汇编语言语句格式 79

4.2.1 ARM汇编语言程序中常见的符号 80

4.2.2 ARM汇编语言程序中的表达式与运算符 80

4.3 ARM汇编语言程序结构 83

4.3.1 ARM汇编语言程序结构 83

4.3.2 ARM汇编语言子程序调用 83

4.3.3 ARM汇编语言和C/C+++的混合编程 84

4.4 ARM汇编语言设计实例 85

4.5 本章小结 87

思考与练习 87

第5章 ARM嵌入式硬件设计基础 89

5.1 元器件封装建立 89

5.1.1 新建封装文件 89

5.1.2 设置库路径 89

5.1.3 画元件封装 90

5.2 原理图绘制 94

5.2.1 添加元件库及放置元件 94

5.2.2 创建电气连接 96

5.2.3 原理图绘制的其他操作 98

5.3 元器件布局 99

5.3.1 建立电路板 99

5.3.2 导入网络表 99

5.3.3 元器件摆放 100

5.4 PCB布线 103

5.4.1 PCB层叠结构 103

5.4.2 布线规则设置 104

5.4.3 布线 104

5.5 本章小结 109

思考与练习 109

第6章 基于S3C2440的应用系统设计 110

6.1 S3C2440特性概述 111

6.2 S3 C2440内部结构 114

6.3 S3 C2440引脚描述 116

6.4 特殊功能寄存器 120

6.4.1 存储器控制器 120

6.4.2 时钟与电源管理 123

6.5 系统的硬件选型与单元电路设计 127

6.5.1 电源电路设计 127

6.5.2 晶振电路设计 129

6.5.3 复位电路设计 129

6.5.4 串行接口电路设计 130

6.5.5 JTAG调试接口电路设计 132

6.5.6 Flash接口电路设计 138

6.5.7 SDRAM接口电路设计 143

6.6 本章小结 146

思考与练习 146

第7章 部件工作原理与编程示例 147

7.1 S3 C2440 GPIO口工作原理与编程示例 147

7.1.1 概述 147

7.1.2 端口控制描述 147

7.1.3 GPIO编程实例 155

7.2 S3 C2440中断控制器的工作原理与编程示例 157

7.2.1 概述 157

7.2.2 中断控制器操作 158

7.2.3 中断源 158

7.2.4 中断优先级 160

7.2.5 中断控制器特殊寄存器 161

7.2.6 中断编程实例 169

7.3 S3 C2440定时器的工作原理与编程示例 170

7.3.1 概述 170

7.3.2 定时器内部逻辑控制工作流程 171

7.3.3 脉宽调制PWM实现 171

7.3.4 定时器相关寄存器 171

7.3.5 定时器编程实例 173

7.4 S3C2440 NAND Flash存储器的工作原理与编程示例 174

7.4.1 概述 174

7.4.2 特性 174

7.4.3 软件模式 175

7.4.4 NAND Flash控制器的寄存器 175

7.4.5 NAND Flash编程实例 176

7.5 本章小结 182

思考与练习 182

第8章 Boot Loader及实现 183

8.1 Boot Loader简介 183

8.2 Boot Loader的种类 183

8.3 Boot Loader的操作模式 184

8.4 Boot Loader的启动方式 184

8.4.1 网络启动方式 184

8.4.2 磁盘启动方式 185

8.4.3 Flash启动方式 185

8.5 Boot Loader的启动过程 185

8.5.1 Boot Loader的stage1 185

8.5.2 Boot Loader的stage2 186

8.6 U-Boot编译、移植与调试 187

8.6.1 U-Boot介绍 187

8.6.2 U-Boot编译 187

8.6.3 U-Boot移植 189

8.6.4 U-Boot调试 190

8.7 Boot Loader的实现 199

8.8 本章小结 200

思考与练习 200

第9章 ARM Linux系统移植与驱动开发 201

9.1 Linux操作系统概述 201

9.1.1 Linux操作系统的发展 201

9.1.2 Linux在嵌入式产品中的优点 201

9.1.3 Linux版本 202

9.2 Linux操作系统的内核结构 203

9.2.1 Linux内核结构 203

9.2.2 Linux源码结构 204

9.2.3 Linux内核配置及编译 204

9.3 Linux目录与文件描述 205

9.3.1 Linux目录结构 205

9.3.2 Linux文件类型及文件属性与权限 206

9.3.3 Linux文件系统类型 207

9.4 Linux进程调度与管理 208

9.4.1 Linux进程的定义 208

9.4.2 Linux进程的属性 208

9.4.3 Linux进程调度 208

9.5 Linux系统下多线程 210

9.5.1 Linux线程 210

9.5.2 基于Linux的多线程编程 210

9.5.3 Linux线程属性的修改 212

9.6 Linux开发流程 213

9.7 Linux交叉编译环境 215

9.7.1 Linux交叉编译 215

9.7.2 基于S3C2440的交叉编译环境建立 216

9.8 Linux的移植过程 217

9.8.1 Linux内核要点 217

9.8.2 Linux移植项目 218

9.8.3 制作根文件系统 219

9.9 Linux下硬件接口驱动设计方法 221

9.10 本章小结 223

思考与练习 223

第10章 ARM ADS集成开发环境 225

10.1 ADS 1.2集成开发环境组成 225

10.1.1 CodeWarrior IDE简介 225

10.1.2 AXD调试器简介 226

10.1.3 命令行开发工具 226

10.1.4 ARM运行时库 234

10.1.5 实用程序 236

10.1.6 ADS支持的软件 236

10.2 工程的编辑及调试 236

10.2.1 工程的编辑 237

10.2.2 工程的调试 244

10.3 用AXD进行代码调试 245

10.4 本章小结 247

思考与练习 248

第11章 嵌入式系统应用开发实例 249

11.1 Linux下音/视频文件编程与播放 249

11.1.1 Mplayer简介 249

11.1.2 播放本地与远程音视频文件 252

11.2 Linux下的网络编程 253

11.2.1 TCP/IP协议 253

11.2.2 UDP协议 254

11.2.3 Socket编程 254

11.3 基于Linux的MiniGUI移植与裁剪 263

11.3.1 MiniGUI简介 263

11.3.2 MiniGUI的体系结构 263

11.3.3 在宿主机上安装MiniGUI 264

11.3.4 MiniGUI的移植 265

11.3.5 交叉编译应用程序到开发板 269

11.3.6 IAL引擎的移植 271

11.3.7 MiniGUI的裁剪 275

11.4 本章小结 275

思考与练习 275

参考文献 276

相关图书
作者其它书籍
返回顶部