《ARM嵌入式系统原理与应用教程》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:徐光宪,赵常松主编;吴显义,杨兴全,郝传永副主编
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2014
  • ISBN:9787512411890
  • 页数:317 页
图书介绍:本书内容主要包含两方面:一、介绍通用ARM处理器的基本架构,基本驱动程序的编程思想和编程方法,重点介绍基于ARM11架构的硬件接口电路的开发流程。二、以北京中芯优电TOP-SEN嵌入式开发实验系统为硬件平台,结合多个综合应用开发实例,详细分析了几个S3C6410处理器案例系统的设计,以使读者加快掌握S3C6410处理器开发的流程。

第1章 ARM微处理器概述 1

1.1 ARM及相关技术简介 1

1.2 ARM微处理器的应用领域及特点 2

1.3 ARM微处理器系列 2

1.4 ARM微处理器结构 13

1.5 ARM微处理器的应用选型 14

1.6 本章小结 16

第2章 ARM微处理器的编程模型 17

2.1 ARM微处理器的工作状态 17

2.2 ARM体系结构的存储器格式 18

2.3 指令长度和数据类型 19

2.4 处理器模式 19

2.5 寄存器组织 19

2.5.1 ARM状态下的寄存器组织 19

2.5.2 Thumb状态下的寄存器组织 22

2.5.3 程序状态寄存器 23

2.6 异常 25

2.7 本章小结 29

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

3.1 ARM微处理器的指令集概述 30

3.2 ARM指令的寻址方式 32

3.3 ARM指令集 34

3.3.1 跳转指令 34

3.3.2 数据处理指令 36

3.3.3 乘法指令与乘加指令 40

3.3.4 程序状态寄存器访问指令 42

3.3.5 加载/存储指令 43

3.3.6 批量数据加载/存储指令 45

3.3.7 数据交换指令 45

3.3.8 移位指令(操作) 46

3.3.9 协处理器指令 47

3.3.10 异常产生指令 49

3.4 Thumb指令及应用 49

3.5 本章小结 50

第4章 ARM程序设计基础 51

4.1 ARM汇编器所支持的伪指令 51

4.1.1 符号定义伪指令 51

4.1.2 数据定义伪指令 53

4.1.3 汇编控制伪指令 56

4.1.4 其他常用的伪指令 57

4.2 汇编语言的语句格式 62

4.2.1 在汇编语言程序中常用的符号 62

4.2.2 汇编语言程序中的表达式和运算符 63

4.3 汇编语言的程序结构 66

4.3.1 汇编语言的程序结构 66

4.3.2 汇编语言的子程序调用 67

4.3.3 汇编语言程序示例 67

4.4 汇编语言模块的结构 70

4.4.1 汇编语言源文件的编排 70

4.4.2 ARM汇编语言模块的示例 71

4.4.3 调用子例程 72

4.4.4 条件执行 73

4.4.5 使用条件执行及其示例 74

4.4.6 Q标记 77

4.4.7 汇编语言与C/C++的混合编程 77

4.5 本章小结 78

第5章 ARM C语言程序设计基础 79

5.1 嵌入式系统中的C语言编程基础 79

5.2 伪指令在嵌入式程序设计中的应用 80

5.3 嵌入式C语言程序设计中的函数及函数库 83

5.4 嵌入式程序设计中常用的C语言语句 83

5.5 汇编语言与C/C++的混合编程 86

5.6 ATPCS规则 90

5.7 本章小结 92

第6章 S3C6410系统设计与调试 93

6.1 系统设计概述 93

6.2 S3C6410概述 94

6.2.1 S3C6410及片内外围简介 94

6.2.2 S3C6410的引脚分布及信号描述 96

6.2.3 外部存储器接口 101

6.2.4 串行通信 103

6.2.5 显示器控制 105

6.3 存储器映射 108

6.4 系统控制器 109

6.4.1 时钟源 110

6.4.2 锁相环 111

6.4.3 ARM和AXI/AHB/APB总线时钟发生器 112

6.4.4 MFC时钟发生器 114

6.4.5 显示时钟发生器(POST,LCD和Scaler) 115

6.4.6 时钟开/关控制 116

6.5 S3C6410复位信号 116

6.5.1 温复位 116

6.5.2 软件复位 119

6.5.3 看门狗复位 120

6.6 寄存器描述 122

6.6.1 部分SFR寄存器 122

6.6.2 PLL控制寄存器 124

6.6.3 时钟源控制寄存器 126

6.7 系统的硬件选型与单元电路设计 128

6.7.1 电源电路 128

6.7.2 晶振电路与复位电路 128

6.7.3 Flash存储器接口电路 129

6.7.4 SDRAM接口电路 131

6.7.5 串行接口电路 135

6.7.6 I2C接口电路 136

6.7.7 JTAG接口电路 137

6.7.8 S3C6410与LCD接口设计 138

6.8 硬件系统的调试 143

6.8.1 电源、晶振及复位电路 144

6.8.2 S3C6410及JTAG接口电路 144

6.8.3 SDRAM接口电路的调试 145

6.8.4 Flash接口电路的调试 146

6.9 印刷电路板的设计注意事项 147

6.9.1 电源质量与分配 147

6.9.2 同类型信号线的分布 147

6.10 本章小结 148

第7章 通用GPIO编程 149

7.1 GPIO功能介绍 149

7.2 S3C6410芯片的GPIO控制器详解 149

7.2.1 S3C6410 GPIO常用寄存器分类 149

7.2.2 S3C6410 I/O口常用寄存器详解 151

7.3 S3C6410 GPIO的应用 171

7.4 本章小结 173

第8章 部件工作原理与编程示例 174

8.1 嵌入式系统的程序设计方法 174

8.2 UART控制器 175

8.2.1 UART的工作方式 176

8.2.2 相关寄存器 179

8.3 UART接口应用举例 187

8.4 矢量中断控制器 192

8.5 中断调用方法 202

8.6 PWM定时器 204

8.6.1 PWM的操作方式 206

8.6.2 S3C6410中的特殊功能寄存器 211

8.6.3 TINT CSTAT 215

8.7 RTC实时时钟 216

8.7.1 RTC寄存器描述 218

8.7.2 RTC寄存器编程举例 222

8.8 I2C总线接口 223

8.8.1 I2C总线接口概述 223

8.8.2 I2C总线接口操作模式 224

8.8.3 多主控器I2C总线控制寄存器(IICCON) 228

8.8.4 I2C总线寄存器编程举例 229

8.9 DMA控制器 231

8.9.1 DMA控制器的特性 232

8.9.2 DMA源 233

8.9.3 DMA接口 234

8.9.4 程序员的模式 237

8.9.5 DMA寄存器描述 238

8.10 SPI控制器 246

8.10.1 概述 246

8.10.2 SPI的操作 247

8.10.3 SPI传输格式 249

8.10.4 SPI接口编程示例 253

8.11 BootLoader简介 259

8.11.1 BootLoader…简介 259

8.11.2 启动方法 261

8.11.3 检测系统的内存映射 264

8.12 本章小结 266

第9章 S3C6410综合应用设计实例 267

9.1 基于S3C6410光敏传感器系统设计实例 267

9.1.1 基本原理 267

9.1.2 协调器程序下载方法 270

9.1.3 节点程序烧写和节点测试 272

9.1.4 硬件电路原理图和部分程序代码 273

9.2 基于S3C6410温湿度传感器系统设计实例 277

9.2.1 基本原理 277

9.2.2 节点程序烧写和节点测试 280

9.2.3 硬件电路原理图和部分程序代码 282

9.3 基于S3C6410电机和灯光传感器系统设计实例 290

9.3.1 基本原理 290

9.3.2 节点程序烧写和节点测试 290

9.2.3 硬件电路原理图和部分程序代码 292

9.4 基于S3C6410烟雾传感器系统设计实例 294

9.4.1 基本原理 294

9.4.2 节点程序烧写和节点测试 294

9.4.3 硬件电路原理图和部分程序代码 296

9.5 基于S3C6410干簧管传感器系统实例 298

9.5.1 基本原理 298

9.5.2 节点程序烧写和节点测试 299

9.5.3 硬件电路原理图和部分程序代码 300

9.6 本章小结 302

第10章 RealView MDK集成开发环境的使用 303

10.1 RealView MIDK集成开发环境组成介绍 303

10.2 RealView MDK使用方法 306

10.2.1 创建一个工程 306

10.2.2 编译、链接工程 308

10.3 程序调试 310

10.4 程序调试举例 312

10.5 本章小结 316

参考文献 317