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

  • 购买积分:14 如何计算积分?
  • 作  者:孟祥莲等编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302233602
  • 页数:402 页
图书介绍:本书全面系统地描述了ARM 9微处理器的嵌入式体系结构,以Aamsung公司的S3C240A控制器为例,着重介绍了ARM 9微处理器的结构、开发工具及Linux的程序设计等内容。

第1章 嵌入式系统概述 1

1.1 嵌入式系统定义 1

1.1.1 嵌入式系统的概念 1

1.1.2 嵌入式系统的特点 2

1.2 嵌入式系统的发展概述 3

1.2.1 嵌入式系统的历史与发展 3

1.2.2 嵌入式系统的功能 5

1.3 嵌入式系统的硬件和软件特征 6

1.3.1 嵌入式系统硬件平台 6

1.3.2 硬件抽象层 7

1.3.3 嵌入式操作系统 8

1.4 嵌入式系统的分类 9

1.5 嵌入式系统的应用 10

1.6 本章小结 11

1.7 习题1 11

第2章 ARM微处理器概述与编程模型 12

2.1 ARM微处理器概述 12

2.1.1 ARM微处理器的特点 12

2.1.2 ARM微处理器系列 12

2.2 ARM微处理器结构 18

2.2.1 RISC体系结构 18

2.2.2 ARM微处理器的寄存器结构 20

2.2.3 ARM微处理器的指令结构 20

2.2.4 ARM微处理器的应用选型 20

2.3 ARM微处理器的工作状态 21

2.4 ARM体系结构的存储器格式 21

2.4.1 指令长度及数据类型 22

2.4.2 存储管理单元 22

2.5 处理器模式 27

2.6 寄存器组织 27

2.6.1 ARM状态下的寄存器组织 28

2.6.2 Thumb状态下的寄存器组织 29

2.6.3 程序状态寄存器 31

2.7 异常 33

2.7.1 ARM体系结构所支持的异常类型 33

2.7.2 异常优先级 34

2.7.3 异常的响应及返回 34

2.7.4 应用程序中的异常处理 35

2.8 本章小结 36

2.9 习题2 36

第3章 ARM9指令系统 37

3.1 ARM处理器的寻址方式 37

3.1.1 寄存器寻址 37

3.1.2 立即寻址 37

3.1.3 寄存器间接寻址 37

3.1.4 变址寻址 38

3.1.5 寄存器移位寻址 38

3.1.6 多寄存器寻址 40

3.1.7 堆栈寻址 41

3.1.8 相对寻址 41

3.2 ARM指令集 41

3.2.1 指令格式 41

3.2.2 条件码 42

3.2.3 ARM存储器访问指令 42

3.2.4 ARM数据处理类指令 47

3.2.5 ARM分支指令 53

3.2.6 ARM协处理器指令 55

3.2.7 ARM软件中断指令 56

3.3 Thumb指令集 57

3.4 本章小结 59

3.5 习题3 59

第4章 嵌入式程序设计基础 61

4.1 伪指令 61

4.1.1 通用伪指令 61

4.1.2 与ARM指令相关的伪指令 69

4.1.3 与Thumb指令相关的伪指令 71

4.2 汇编语言的语句格式 72

4.2.1 书写格式 72

4.2.2 汇编语言中表达式和运算符 72

4.3 汇编程序应用 76

4.3.1 汇编程序基本结构 76

4.3.2 子程序调用 76

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

4.4.1 在C/C++程序中内嵌汇编指令的语法格式 79

4.4.2 C/C++与汇编语言的混合编程应用 79

4.5 本章小结 83

4.6 习题4 84

第5章 嵌入式内部可编程模块 85

5.1 存储控制模块 85

5.1.1 存储器控制器 85

5.1.2 NAND Flash控制器 90

5.1.3 存储器实例 96

5.2 GPIO 100

5.2.1 端口功能 101

5.2.2 端口配置寄存器 105

5.2.3 端口其他寄存器 114

5.2.4 I/O应用实例 124

5.3 中断系统 126

5.3.1 中断优先级 128

5.3.2 中断控制寄存器 129

5.3.3 中断编程实例 136

5.4 DMA 137

5.4.1 S3C2440A芯片的DMA方式 137

5.4.2 S3C2440A芯片的DMA寄存器 139

5.4.3 S3C2440A芯片的DMA实例 143

5.5 定时部件 147

5.5.1 看门狗定时器原理及实例 147

5.5.2 RTC部件 149

5.5.3 Timer部件 154

5.5.4 定时部件应用实例 162

5.6 UART 169

5.6.1 UART的操作 170

5.6.2 UART接口寄存器 173

5.6.3 UART实例 177

5.7 ADC及触摸屏接口 178

5.7.1 功能描述 179

5.7.2 ADC及触摸屏接口特殊寄存器 180

5.7.3 A/D转换实例 182

5.8 本章小结 184

5.9 习题5 184

第6章 嵌入式接口技术应用 185

6.1 LCD显示器接口 185

6.1.1 LCD的控制器 185

6.1.2 S3C2440A芯片的LCD专用寄存器 189

6.1.3 S3C2440A芯片LCD寄存器的设置 195

6.2 I2C总线 196

6.2.1 S3C2440A的I2C接口 196

6.2.2 I2C总线接口特殊寄存器 198

6.2.3 I2C编程举例 200

6.3 I2S总线 204

6.3.1 发送接收模式 204

6.3.2 音频串行接口格式 204

6.3.3 I2S总线接口特殊寄存器 205

6.3.4 I2S编程实例 207

6.4 AC97控制器 210

6.4.1 AC97控制器操作 211

6.4.2 AC97控制器特殊寄存器 213

6.4.3 AC97应用实例 215

6.5 S3C2440A的摄像头 219

6.5.1 S3C2440A的摄像头接口 219

6.5.2 摄像头接口特殊寄存器 223

6.5.3 摄像头接口应用实例 232

6.6 本章小结 233

6.7 习题6 233

第7章 软件开发环境 234

7.1 ADS1.2集成开发环境 234

7.1.1 使用ADS创建工程 234

7.1.2 用AXD进行代码调试 240

7.2 嵌入式Linux的软件开发环境 244

7.2.1 安装交叉编译环境 245

7.2.2 嵌入式Linux程序开发工程管理 251

7.3 本章小结 260

7.4 习题7 261

第8章 嵌入式系统Boot Loader技术 262

8.1 Boot Loader的基本概念 262

8.1.1 Boot Loader的相关设备和机制 262

8.1.2 Boot Loader的启动过程 263

8.1.3 Boot Loader的操作模式 263

8.1.4 Boot Loader的总体设计 264

8.2 Boot Loader(vivi)的代码分析 271

8.3 本章小结 279

8.4 习题8 280

第9章 嵌入式Linux操作系统移植 281

9.1 嵌入式Linux基本概念 281

9.2 嵌入式Linux内核移植 285

9.2.1 内核修改 285

9.2.2 内核配置 288

9.2.3 内核编译 300

9.3 建立Linux根文件系统 304

9.4 下载目标文件 308

9.5 本章小结 309

9.6 习题9 309

第10章 嵌入式Linux设备驱动程序开发 310

10.1 嵌入式Linux驱动程序开发基础 310

10.1.1 嵌入式Linux设备驱动程序分类 310

10.1.2 最简单的内核模块 311

10.2 嵌入式Linux设备驱动重要技术 315

10.2.1 内存与I/O端口 315

10.2.2 同步机制 320

10.2.3 阻塞与非阻塞 328

10.2.4 时间问题 330

10.2.5 中断处理 335

10.3 字符设备驱动程序 336

10.3.1 字符设备驱动结构 336

10.3.2 字符设备驱动实例——LED驱动 342

10.4 网络设备驱动程序 347

10.4.1 Linux网络设备简介 347

10.4.2 网络驱动核心数据结构 349

10.4.3 网络驱动程序分析 353

10.5 设备驱动实例 364

10.5.1 ADC设备驱动实例 364

10.5.2 PWM设备驱动实例 366

10.5.3 触摸屏设备驱动实例 368

10.6 本章小结 376

10.7 习题10 376

第11章 嵌入式Linux应用程序设计 377

11.1 嵌入式Linux C语言应用程序开发基础 377

11.1.1 编写源程序 377

11.1.2 交叉编译程序 380

11.1.3 调试程序 380

11.2 文件I/O编程 382

11.2.1 文件I/O操作例程 382

11.2.2 文件I/O操作API 383

11.3 网络编程 388

11.3.1 网络通信基础及例程 388

11.3.2 网络通信API 391

11.4 应用实例 397

11.4.1 ADC应用实例 397

11.4.2 PWM蜂鸣器控制应用实例 397

11.4.3 触摸屏应用实例 399

11.5 本章小结 401

11.6 习题11 401

参考文献 402