《嵌入式系统软硬件开发及应用实践》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:杨维剑主编
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2010
  • ISBN:9787512402249
  • 页数:418 页
图书介绍:本书是嵌入式系统软硬件开发与应用实践的理论与实践相联系的专业书籍。本书以ARM系列为核心,完整讲述了嵌入式系统硬件开发技术和软件开发的基础知识。然后结合应用实践,从存储器扩展、I/O口扩展、中断系统、各种接口扩展及应用,到软件开发、系统移植等系统讲述了嵌入式系统中的硬件和软件开发技术。针对开发具有自主产权的实时操作系统的观点讲述了实时操作系统中对中断管理技术、存储器管理技术以及人机接口管理技术。形成了从易到难、相对完整、贴近实际的理论联系实际工程应用的理论体系,结合本书和相应的实验教程,可使读者快速、全面地掌握嵌入式系统开发与应用技术和开发技能。

第1章 嵌入式系统概述 1

1.1 嵌入式系统的基本概念 1

1.2 嵌入式系统的特点 3

1.3 嵌入式系统的应用 6

1.4 嵌入式系统的开发 9

1.4.1 嵌入式系统开发考虑的要素 9

1.4.2 软硬件协同设计 9

1.4.3 嵌入式系统硬件开发 10

1.4.4 嵌入式软件开发的特点和技术挑战 13

1.4.5 嵌入式软件开发环境 14

1.4.6 嵌入式应用软件开发过程 17

1.4.7 嵌入式系统的开发流程 21

习题 23

第2章 嵌入式系统的结构 24

2.1 嵌入式系统的体系结构 24

2.1.1 嵌入式系统体系结构简介 24

2.1.2 嵌入式系统体系结构的重要性 26

2.1.3 嵌入式系统体系结构模型 27

2.2 嵌入式系统的流水线结构 28

2.3 嵌入式系统的存储器结构 31

2.4 嵌入式系统的编程结构 33

习题 35

第3章 嵌入式系统的指令结构及指令系统 35

3.1 嵌入式处理器寻址方式 36

3.2 指令集介绍 38

3.2.1 ARM微处理器的指令的分类与格式 38

3.2.2 指令的条件域 40

3.3 ARM指令集 40

3.3.1 跳转指令 41

3.3.2 数据处理指令 42

3.3.3 乘法指令与乘加指令 47

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

3.3.5 加载/存储指令 51

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

3.3.7 数据交换指令 54

3.3.8 移位指令(操作) 54

3.3.9 协处理器指令 56

3.3.10 异常产生指令 58

3.4 Thumb指令集 58

习题 59

第4章 以ARM为核心的嵌入式系统结构 59

4.1 ARM核概述 61

4.1.1 ARM公司简介 61

4.1.2 ARM核的特点 62

4.2 ARM内核的基本结构 63

4.2.1 ARM内核 63

4.2.2 ARM扩展功能块 64

4.2.3 ARM启动方式 67

4.3 ARM处理器模式 68

4.4 ARM的存储器结构 69

4.4.1 ARM存储方法 69

4.4.2 存储空间管理单元MMU 70

4.5 ARM的编程结构 72

4.5.1 ARM微处理器的工作状态 72

4.5.2 指令长度及数据类型 72

4.6 ARM的寄存器结构 73

4.6.1 ARM状态下的寄存器组织 73

4.6.2 Thumb状态下的寄存器组织 74

4.6.3 ARM寄存器 74

4.7 ARM的流水线及时序 78

4.7.1 ARM流水线 78

4.7.2 ARM时序 79

4.8 ARM的中断与异常 80

4.8.1 ARM异常类型 80

4.8.2 异常的响应及返回 81

4.8.3 异常的描述 82

4.8.4 异常的处理 84

习题 85

第5章 ARM系统中的存储器设计与管理5.1 ARM存储器系统概述 86

5.2 ARM存储器系统结构 86

5.2.1 ARM存储数据类型和存储格式 87

5.2.2 ARM存储器层次简介 88

5.3 ARM存储器配置 88

5.3.1 存储器映射 88

5.3.2 系统初始化 90

5.3.3 地址映射模式 92

5.3.4 其他调试方法 93

5.4 ARM存储器访问与扩展 95

5.4.1 S3C44B0X存储控制器 95

5.4.2 在S3C44B0X中存储器扩展 105

5.5 ARM存储器管理及应用编程 109

5.5.1 S3C44B0X芯片简介 110

5.5.2 S3C44B0X芯片存储空间划分 110

5.5.3 Flash的接口设计 111

5.5.4 SDRAM的接口设计 114

5.5.5 硬件管理软件设计 118

习题 121

第6章 ARM系统中的接口设计与管理6.1 概述 122

6.2 UART接口设计 123

6.3 IIC接口设计 126

6.4 SPI接口设计 126

6.5 USB接口设计 128

6.5.1 USB接口背景 128

6.5.2 USB接口原理 129

6.5.3 USB总线优缺点 130

6.5.4 USB系统拓扑结构 131

6.5.5 USB总线数据传输 132

6.5.6 USB典型设计与应用 132

6.6 RJ45接口设计 134

6.6.1 RJ45接口简介 134

6.6.2 10M/100M以太网接口电路 134

6.7 JTAG接口设计 139

6.8 其他总线接口设计 142

6.8.1 寻址空间 142

6.8.2 电源管理设计 143

6.8.3 RESET电路设计 145

6.8.4 频率电路设计 145

习题 146

第7章 ARM系统的I/O端口设计与管理7.1 概述 147

7.2 ARM核I/O端口配置 148

7.2.1 ARM7中的I/O端口配置 148

7.2.2 ARM9中的I/O端口配置 149

7.3 ARM核I/O端口功能描述 154

7.4 ARM核I/O端口寄存器控制 155

7.4.1 ARM7中的S3C4510B I/O端口寄存器控制 155

7.4.2 ARM9中的S3C241X I/O端口寄存器控制 157

7.5 ARM核I/O端口应用编程 175

习题 177

第8章 ARM系统中的中断系统 178

8.1 概述 178

8.2 ARM系统中断控制器 181

8.3 ARM系统中断源 183

8.4 ARM系统中断模式 185

8.5 ARM系统中断控制器的控制寄存器 185

8.5.1 S3C44B0X中断控制器的控制寄存器 186

8.5.2 S3C4510B中断控制器的控制寄存器 191

8.5.3 S3C2410X中断控制器的控制寄存器 193

8.6 ARM系统中断应用编程 201

习题 208

第9章 ARM系统中的人机接口技术 210

9.1 概述 210

9.2 ARM系统中的键盘接口 211

9.2.1 键盘接口 211

9.2.2 常见的键盘接口 214

9.2.3 实例 216

9.3 ARM系统中的LCD接口 220

9.3.1 LCD接口 220

9.3.2 S3C44B0X LCD控制器 222

9.3.3 S3C2410X LCD控制器 230

9.3.4 应用实例 261

9.4 ARM系统中的PS/2接口 268

9.4.1 PS/2接口和协议 268

9.4.2 PS/2接口鼠标的工作模式和协议数据包格式 270

9.4.3 PS/2接口鼠标设计与实现 271

9.5 ARM系统中的人机接口应用 273

习题 278

第10章 ARM系统软件开发环境与开发工具10.1 概述 279

10.1.1 嵌入式系统开发所面临的问题 279

10.1.2 开发环境 280

10.1.3 选择合适的嵌入式系统软硬件调试工具 285

10.2 常用ARM系统软件开发工具介绍 286

10.2.1 开发工具综述 286

10.2.2 如何选择开发工具 294

10.3 常用ARM系统软件开发环境介绍 295

10.3.1 建立ARM系统软件开发环境 295

10.3.2 RealView MDK集成开发环境的使用 297

习题 328

第11章 ARM嵌入式操作系统 329

11.1 概述 329

11.1.1 嵌入式操作系统基本概念及特点 329

11.1.2 嵌入式操作系统解析 331

11.1.3 实时操作系统解析 332

11.1.4 目前最流行的嵌入式操作系统 333

11.2 ARM实时操作系统 337

11.2.1 基本概念 337

11.2.2 ARM实时操作系统特征 339

11.2.3 流行的ARM实时操作系统 340

11.3 μC/OS-Ⅱ操作系统 341

11.3.1 μC/OS-Ⅱ的主要特点 341

11.3.2 μC/OS-Ⅱ内核工作原理 342

11.4 μCLinux操作系统 345

11.4.1 μCLinux简介 345

11.4.2 μCLinux架构 346

11.4.3 μCLinux的设计特征 347

11.5 WinCE 5.0操作系统 349

11.5.1 Windows CE简介 349

11.5.2 Windows CE的结构 350

11.5.3 Windows CE的特点 351

11.5.4 Windows CE实时性 353

11.5.5 Windows CE 5.0的新特性 354

习题 355

第12章 开发具有自主产权的实时操作系统 355

12.1 概述 356

12.2 开发自主产权实时操作系统的必要性 357

12.3 实时操作系统中断管理技术 358

12.3.1 简介 358

12.3.2 中断管理模式 360

12.3.3 嵌入式内核接管中断的处理机制 361

12.3.4 中断管理模型 363

12.4 实时操作系统存储器管理技术 364

12.4.1 对内存分配的要求 365

12.4.2 对内存分配的策略 365

12.4.3 内存动态分配管理 366

12.5 实时操作系统人机接口管理技术 370

12.5.1 键盘的管理策略 370

12.5.2 LED/LCD的管理策略 371

12.6 实时操作系统应用实例 372

习题 385

第13章 系统移植技术 387

13.1 概述 387

13.2 μC/OS-Ⅱ操作系统移植 387

13.2.1 移植的目标系统 388

13.2.2 开发工具 389

13.2.3 μC/OS-Ⅱ移植 390

13.2.4 测试移植代码 401

13.3 μCLinux操作系统移植 402

13.3.1 创建开发环境 402

13.3.2 编译与移植μCLinux 404

13.4 WinCE 5.0操作系统移植 408

13.4.1 Windows CE操作系统简介 408

13.4.2 Windows CE操作系统架构 409

13.4.3 Windows CE Boot Loader开发 411

13.4.4 Windows CE的OAL 412

13.4.5 Windows CE操作系统的创建和调试 415

习题 417

参考文献 418