当前位置:首页 > 工业技术
嵌入式系统原理与设计  第2版
嵌入式系统原理与设计  第2版

嵌入式系统原理与设计 第2版PDF电子书下载

工业技术

  • 电子书积分:12 积分如何计算积分?
  • 作 者:王勇编著;何立民主审
  • 出 版 社:杭州:浙江大学出版社
  • 出版年份:2013
  • ISBN:9787308124256
  • 页数:346 页
图书介绍:本书主要讲述嵌入式系统的原理及其设计方法,对嵌入式系统的开发过程、主要开发方法、开发工具进行了完整的介绍。本书共有11章,内容涉及了嵌入式系统的基本概念、设计方法、开发模式,ARM处理器的概念、指令系统、编程方法,嵌入式Linux的开发,Windows CE的开发等内容。本书内容丰富,理论讲述和实际开发相结合。本书不是针对某种处理器的开发用书。为了做到通用性和便于读者学习,书中所涉及的开发内容基本上都可以在PC机上实现,因此读者在学习过程中可以充分利用PC机来完成嵌入式系统的开发练习,提高学习效果。本书可作为研究生和高年级本科学生的教材,也可以作为嵌入式系统研发人员及相关科研人员的技术参考书。
《嵌入式系统原理与设计 第2版》目录

第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 嵌入式操作系统 12

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

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

2.1.1 需求分析 15

2.1.2 详细说明 17

2.1.3 结构设计 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章 嵌入式系统的开发模式 45

4.1 面向硬件的开发模式 45

4.1.1 适用情况 45

4.1.2 需要的工具 45

4.1.3 开发场景 45

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

4.2.1 适用情况 46

4.2.2 需要的工具 46

4.2.3 开发场景 47

4.3 开发模式的控制 47

第5章 ARM处理器概述 49

5.1 ARM处理器概述 49

5.1.1 ARM的发展历史 49

5.1.2 ARM处理器的特点 49

5.1.3 ARM微处理器系列 50

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

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

5.2.1 工作状态 56

5.2.2 ARM的工作模式 57

5.3 ARM微处理器的寄存器 57

5.3.1 ARM微处理器的寄存器结构 57

5.3.2 Thumb状态下的寄存器组织 62

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

5.4.1 ARM的数据类型 63

5.4.2 存储器的格式 64

5.5 ARM处理器的异常 65

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

5.5.2 异常优先级(Exception Priorities) 67

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

5.5.4 对异常的响应 68

5.5.5 异常返回 69

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

第6章 ARM指令系统 71

6.1 ARM处理器的寻址方式 71

6.1.1 立即数寻址 71

6.1.2 寄存器寻址 72

6.1.3 寄存器偏移寻址 73

6.1.4 寄存器间接寻址 73

6.1.5 寄存器基址变址寻址 74

6.1.6 多寄存器寻址 74

6.1.7 相对寻址 74

6.1.8 堆栈寻址 75

6.1.9 块拷贝寻址 76

6.2 ARM指令集合 77

6.2.1 ARM指令的基本格式 77

6.2.2 ARM指令详解 80

6.3 Thumb指令集合 98

6.3.1 Thumb指令集合 98

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

6.3.3 Thumb存储器访问指令 99

6.3.4 Thumb数据处理指令 101

6.3.5 Thumb跳转指令 102

6.3.6 Thumb杂项指令 103

6.4 伪指令 103

6.4.1 符号定义伪指令 104

6.4.2 数据定义伪指令 106

6.4.3 报告伪指令 111

6.4.4 汇编控制伪指令 112

6.4.5 杂项伪指令 114

6.4.6 ARM伪指令 120

6.4.7 Thumb伪指令 123

第7章 ARM程序设计 126

7.1 ARM汇编语言程序设计 126

7.1.1 汇编语言的语句格式 126

7.1.2 汇编程序中的符号 127

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

7.1.4 汇编语言的程序结构 132

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

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

7.2.1 ATPCS规则 139

7.2.2 内嵌汇编 141

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

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

7.3.1 ADS简介 148

7.3.2 ADS快速使用教程 149

7.3.3 ADS具体介绍 155

第8章 嵌入式操作系统 161

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

8.2 软件编程模式 162

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

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

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

8.4 实时操作系统 166

8.4.1 实时和分时操作系统 166

8.4.2 实时操作系统的特点 167

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

9.1 Linux的诞生 169

9.2 Linux相关的概念 170

9.2.1 Minix 170

9.2.2 Unix 170

9.2.3 共享软件(Shareware) 170

9.2.4 自由软件(Freeware或FreeSoftware) 170

9.2.5 免费软件(Freeware) 170

9.2.6 通用软件许可证(GPL,General Public License) 171

9.2.7 GNU 171

9.2.8 LGPL(Lesser GPL) 171

9.2.9 BSD 172

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

9.3.1 Linux操作系统的组成 172

9.3.2 Linux的版本 173

9.4 Linux的特点 173

9.4.1 Linux的优点和不足 173

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

9.5 嵌入式Linux的概念 178

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

9.6.1 uClinux 178

9.6.2 RTLinux 180

9.6.3 DSPLinux 181

第10章 嵌入式Linux的开发 183

10.1 嵌入式Linux开发步骤 183

10.2 开发环境的构建 184

10.2.1 安装Linux操作系统 184

10.2.2 配置开发工具 189

10.3 BootLoader的开发 192

10.3.1 BootLoader的基本知识 192

10.3.2 BootLoader的开发过程 193

10.3.3 BootLoader的移植 196

10.4 Linux系统的构建 197

10.4.1 Linux内核的构建 197

10.4.2 Linux根文件系统的构建 207

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

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

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

10.5.2 设备的类型 213

10.5.3 特殊设备的使用 213

10.5.4 设备文件的创建 214

10.5.5 设备驱动程序的开发 214

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

10.6 Linux应用程序开发 219

10.6.1 几种流行的GUI 219

10.6.2 Qt/Embedded编程 222

10.6.3 Qt/Embedded编程示例 223

10.7 Linux系统的启动流程 227

10.7.1 内核的引导 228

10.7.2 运行init 229

10.7.3 系统初始化 231

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

10.7.5 建立终端 232

10.7.6 登录系统 232

10.8 常用的Linux工具和命令 233

10.8.1 vi的使用 233

10.8.2 GCC的使用 236

10.8.3 gdb的使用 237

10.8.4 ncftp工具的使用 240

10.8.5 mount和unmount指令 240

10.8.6 基本命令 242

10.8.7 Linux下软件安装指令 247

第11章 Linux系统构建的实战练习 251

11.1 使用现成工具构建U盘Linux 251

11.1.1 使用pup2 usb进行构建 251

11.1.2 使用Ultra ISO进行构建 252

11.2 从零开始构建自己的U盘Linux 254

11.2.1 前期准备 254

11.2.2 编译Linux内核 256

11.2.3 在U盘上建立根文件系统 257

11.2.4 安装grub到U盘中 260

11.2.5 使用initrd内核作为根文件系统 261

第12章 Android的开发与应用 264

12.1 Android操作系统简介 264

12.1.1 Android系统构架 264

12.1.2 Android系统开发环境的构建 267

12.1.3 Android应用程序开发实例 269

第13章 iPhone OS应用程序的开发 277

13.1 苹果操作系统简介 277

13.2 iPhone开发环境的构建 278

13.2.1 Mac OS虚拟机的安装 279

13.2.2 XCode和iPhone SDK的介绍与安装 286

13.3 iPhone应用程序的开发示例 287

第14章 Windows CE操作系统 292

14.1 微软的嵌入式产品简介 292

14.1.1 Windows Embedded Compact平台 292

14.1.2 Windows Embedded Standard平台 293

14.1.3 Windows Embedded Enterprise平台 293

14.1.4 Windows Embedded Server平台 293

14.1.5 Windows Phone 8平台 293

14.2 Windows CE简介 294

14.3 Windows CE的中断处理机制 297

14.3.1 中断体系结构 297

14.3.2 中断延迟 298

14.4 Windows CE的进程和线程 299

14.4.1 CE的进程 299

14.4.2 CE的线程 300

14.4.3 进程之间的通信 301

14.5 Windows CE的内存管理 301

14.5.1 内存结构 301

14.5.2 进程地址空间结构 302

14.5.3 堆和栈的内存分配 304

14.5.4 内存映射文件 304

14.6 Windows CE的编程模式 305

14.6.1 基于Win32的程序开发 305

14.6.2 基于MFC的程序开发 305

14.6.3 基于Microsoft.NET Framework精简版的程序开发 306

14.7 Windows CE 5.0的开发 307

14.7.1 开发层面 307

14.7.2 开发实例 308

14.7.3 CE系统的引导方式及其BootLoader 323

14.8 Windows Embedded Compact 7的开发 326

14.8.1 Windows Embedded Compact 7开发环境的构建 326

14.8.2 Windows Embedded Compact 7应用程序的开发 330

第15章 Windows Phone的开发 334

15.1 Windows Phone 7的开发 334

15.1.1 Windows Phone 7简介 334

15.1.2 Windows Phone 7开发环境的搭建 334

15.1.3 Windows Phone 7简单例程的开发 335

15.2 Windows Phone 8的开发 339

15.2.1 Windows Phone 8简介 339

15.2.2 Windows Phone 8的开发环境的构建 340

15.2.3 Windows Phone 8应用程序开发 341

参考文献 344

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