《嵌入式系统原理与设计》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:王勇编著
  • 出 版 社:杭州:浙江大学出版社
  • 出版年份:2007
  • ISBN:7308050092
  • 页数:292 页
图书介绍:本书主要讲述嵌入式系统的原理及其设计方法,对嵌入式系统的开发过程,主要开发方法及开发工具进行了完整的介绍。

第1章 绪论 1

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

1.2 嵌入式系统的特征 2

1.2.1 嵌入式系统的基本特征 2

1.2.2 嵌入式系统特征的模糊化 4

1.3 嵌入式系统的组成要素 4

1.3.1 嵌入式处理器 5

1.3.2 嵌入式操作系统 11

第2章 嵌入式系统的设计方法 14

2.1 嵌入式系统设计的基本流程 14

2.1.1 需求分析 15

2.1.3 结构设计 17

2.1.2 详细说明 17

2.1.4 组件设计 18

2.1.5 系统集成 19

2.2 嵌入式系统设计的流程模型 20

2.2.1 瀑布模型 20

2.2.2 逐步求精模型 21

2.2.3 螺旋模型 23

2.2.4 分层设计模型 24

2.2.5 其他流程模型 24

第3章 嵌入式系统的基础知识 27

3.1 基本概念 27

3.1.1 存储器结构 27

3.1.2 流水线技术 29

3.1.3 CISC RISC 31

3.1.4 大端存储和小端存储 32

3.1.5 存储器管理单元MMU 34

3.1.6 BSP 36

3.1.7 BootLoader和OSLoader 36

3.1.8 进程和线程 37

3.2 开发相关知识 37

3.2.1 ICE和ICD 37

3.2.2 其他硬件调试工具 38

3.2.3 JTAG 38

3.2.4 编译器和交叉编译器 40

3.2.5 模拟器和仿真器 41

4.1.1 适用情况 45

4.1.3 开发场景 45

4.1.2 需要的工具 45

4.1 面向硬件的开发模式 45

第4章 嵌入式系统的开发模式 45

4.2 面向操作系统的开发模式 46

4.2.1 适用情况 46

4.2.2 需要的工具 46

4.2.3 开发场景 46

4.3 开发模式的控制 47

第5章 ARM处理器概述 48

5.1 ARM处理器概述 48

5.1.1 ARM的发展历史 48

5.1.2 ARM处理器的特点 48

5.1.3 ARM微处理器系列 49

5.1.4 ARM微处理器的应用选型 51

5.2.1 工作状态 52

5.2 ARM处理器的工作状态和工作模式 52

5.2.2 ARM的工作模式 53

5.3 ARM处理器的寄存器 54

5.3.1 ARM处理器的寄存器结构 54

5.3.2 Thumb状态下的寄存器 58

5.4 ARM处理器的存储器组织结构 60

5.4.1 ARM的数据类型 60

5.4.2 存储器的格式 60

5.5 ARM处理器的异常 61

5.5.1 ARM体系结构所支持的异常类型 61

5.5.2 异常优先级(Exception Priorities) 63

5.5.3 应用程序中的异常处理 64

5.5.4 对异常的响应 64

5.5.6 异常进入/退出时的指令 65

5.5.5 异常返回 65

第6章 ARM指令系统 67

6.1 ARM处理器的寻址方式 67

6.1.1 立即数寻址 67

6.1.2 寄存器寻址 68

6.1.3 寄存器偏移寻址 68

6.1.4 寄存器间接寻址 69

6.1.5 寄存器基址变址寻址 70

6.1.6 多寄存器寻址 70

6.1.7 相对寻址 70

6.1.8 堆栈寻址 71

6.1.9 块拷贝寻址 72

6.2 ARM指令集合 72

6.2.1 ARM指令的基本格式 73

6.2.2 ARM指令详解 75

6.3 Thumb指令集合 93

6.3.1 Thumb指令集合 93

6.3.2 Thumb指令集与ARM指令集的区别 94

6.3.3 Thumb存储器访问指令 94

6.3.4 Thumb数据处理指令 96

6.3.5 Thumb跳转指令 97

6.3.6 Thumb杂项指令 98

6.4 伪指令 99

6.4.1 符号定义伪指令 99

6.4.2 数据定义伪指令 101

6.4.3 报告伪指令 106

6.4.4 汇编控制伪指令 107

6.4.5 杂项伪指令 109

6.4.6 ARM伪指令 115

6.4.7 Thumb伪指令 118

第7章 ARM程序设计 121

7.1 ARM汇编语言程序设计 121

7.1.1 汇编语言的语句格式 121

7.1.2 汇编程序中的符号 122

7.1.3 汇编语言程序中的表达式和运算符 124

7.1.4 汇编语言的程序结构 127

7.1.5 汇编语言程序设计举例 128

7.2 汇编语言与C/C++的混合编程 134

7.2.1 ATPCS规则 134

7.2.2 内嵌汇编 136

7.2.3 C程序与汇编程序相互调用 141

7.3 ARM集成开发环境ADS的使用 143

7.3.1 ADS简介 143

7.3.2 ADS快速使用教程 143

7.3.3 ADS具体介绍 149

第8章 嵌入式操作系统 156

8.1 嵌入式操作系统的发展 156

8.2 软件编程模式 157

8.2.1 无操作系统的软件编程模式 157

8.2.2 有操作系统的编程模式 159

8.3 嵌入式操作系统的特点 160

8.4.1 实时和分时操作系统 161

8.4 实时操作系统 161

8.4.2 实时操作系统的特点 162

第9章 嵌入式Linux操作系统概述 164

9.1 Linux的诞生 164

9.2 Linux相关的概念 165

9.2.1 Minix 165

9.2.2 Unix 165

9.2.3 共享软件(Shareware) 165

9.2.4 自由软件(Freeware或FreeSoftware) 165

9.2.5 免费软件(Freeware) 165

9.2.6 通用软件许可证(GPL:General Public License) 166

9.2.7 GNU 166

9.3 Linux操作系统的组成及其版本 167

9.3.1 Linux操作系统的组成 167

9.2.9 BSD 167

9.2.8 LGPL 167

9.3.2 Linux的版本 168

9.4 Linux的特点 169

9.4.1 Linux的优点和不足 169

9.4.2 Linux下的硬盘分区与文件系统 172

9.5 嵌入式Linux的概念 173

9.6 嵌入式Linux操作系统介绍 173

9.6.1 uClinux 173

9.6.2 RTLinux 175

9.6.3 DSPLinux 176

第10章 嵌入式Linux的开发 178

10.1 嵌入式Linux开发步骤 178

10.2.1 安装Linux操作系统 179

10.2 开发环境的构建 179

10.2.2 配置开发工具 184

10.3 BootLoader的开发 186

10.3.1 BootLoader的基本知识 187

10.3.2 BootLoader的开发过程 188

10.3.3 BootLoader的移植 190

10.4 Linux系统的构建 192

10.4.1 Linux内核的构建 192

10.4.2 Linux根文件系统的构建 201

10.4.3 针对嵌入式应用的Linux系统开发 203

10.5 Linux系统下设备驱动程序的开发 205

10.5.1 Linux设备驱动程序的概念 206

10.5.2 设备的类型 207

10.5.3 特殊设备的使用 207

10.5.5 设备驱动程序的开发 208

10.5.4 设备文件的创建 208

10.5.6 设备驱动程序中的问题 212

10.6 Linux应用程序开发 213

10.6.1 几种流行的GUI 213

10.6.2 Qt/Embedded编程 215

10.6.3 Qt/Embedded编程示例 217

10.7 Linux系统的启动流程 221

10.7.1 内核的引导 222

10.7.2 运行init 222

10.7.3 系统初始化 224

10.7.4 启动对应运行级别的守护进程 225

10.7.5 建立终端 226

10.7.6 登录系统 226

10.8.1 前期准备 227

10.8 Linux系统构建的实战练习 227

10.8.2 编译Linux内核 230

10.8.3 建立根文件系统 233

10.8.4 安装grub到U盘中 235

10.8.5 使用initrd内核作为根文件系统 236

10.9 常用的Linux工具和命令 238

10.9.1 vi的使用 238

10.9.2 GCC的使用 241

10.9.3 gdb的使用 242

10.9.4 ncftp工具的使用 245

10.9.5 mount和unmount指令 246

10.9.6 基本命令 247

10.9.7 Linux下软件安装指令 252

11.1.2 Windows XP Embedded 256

11.1.1 Windows CE 256

第11章 Windows CE操作系统 256

11.1 微软的嵌入式产品简介 256

11.1.3 Windows Embedded的应用领域 257

11.2 Windows CE简介 257

11.3 Windows CE的中断处理机制 259

11.3.1 中断体系结构 259

11.3.2 中断延迟 261

11.4 Windows CE的进程和线程 262

11.4.1 CE的进程 262

11.4.2 CE的线程 262

11.4.3 进程之间的通信 263

11.5.1 内存结构 264

11.5 Windows CE的内存管理 264

11.5.2 进程地址空间结构 265

11.5.3 堆和栈的内存分配 266

11.5.4 内存映射文件 267

11.6 Windows CE的编程模式 267

11.6.1 基于Win32的程序开发 267

11.6.2 基于MFC的程序开发 268

11.6.3 基于Microsoft.NET Framework精简版的程序开发 269

11.7 Windows CE的开发 270

11.7.1 开发层面 270

11.7.2 开发实例 271

11.7.3 CE系统的引导方式及其BootLoader 286

参考文献 290