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

嵌入式系统技术与设计PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:刘洪涛,孙天泽编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2009
  • ISBN:9787115188199
  • 页数:290 页
图书介绍:本书在全面介绍ARM处理器的体系结构、编程模型、指令系统和最新的realview MDK开发环境的同时,以英蓓特公司的EDUKIT-Ш实验教学系统为平台,以ARM9处理器——S3C2410为核心,详细介绍了系统的设计及相关接口的操作,并提供了大量的实验例程。ARM9平台和嵌入式Linux操作系统的相结合的方案正在越来越多的应用于各种中高端的嵌入式产品中,本书最后详细的讲解了嵌入式Linux系统各个组成部分在教学系统上的移植过程。
《嵌入式系统技术与设计》目录

第1章 嵌入式系统概述 1

1.1 嵌入式系统简介 1

1.2 嵌入式系统发展趋势 1

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

1.4 ARM系列处理器简介 5

1.4.1 ARM7处理器系列 5

1.4.2 ARM9处理器系列 5

1.4.3 ARM9E处理器系列 6

1.4.4 ARM10处理器系列 6

1.4.5 ARM10E处理器系列 6

1.4.6 ARM11处理器系列 7

1.4.7 SecureCore处理器系列 7

1.4.8 StrongARM和Xscale处理器系列 7

1.4.9 Cortex和MPCore处理器系列 8

1.4.10 各种处理器系列之间的比较 8

1.5 本章小结 9

1.6 思考题 9

第2章 ARM体系结构与指令集 10

2.1 ARM体系结构的特点 10

2.2 ARM处理器工作模式 10

2.3 寄存器组织 11

2.3.1 通用寄存器 12

2.3.2 状态寄存器 13

2.3.3 程序计数器 15

2.4 流水线 16

2.4.1 流水线的概念与原理 16

2.4.2 流水线的分类 16

2.4.3 影响流水线性能的因素 18

2.5 ARM存储系统 18

2.5.1 协处理器(CP15) 19

2.5.2 存储管理单元(MMU) 20

2.5.3 高速缓冲存储器(Cache) 20

2.6 异常 20

2.6.1 异常的种类 21

2.6.2 异常的优先级 21

2.6.3 构建异常向量表 21

2.6.4 异常响应流程 23

2.6.5 从异常处理程序中返回 24

2.7 ARM处理器的寻址方式 26

2.7.1 数据处理指令寻址方式 26

2.7.2 内存访问指令寻址方式 27

2.8 ARM处理器的指令集 29

2.8.1 数据操作指令 29

2.8.2 乘法指令 35

2.8.3 Load/Store指令 37

2.8.4 单数据交换指令 42

2.8.5 跳转指令 43

2.8.6 状态操作指令 46

2.8.7 协处理器指令 47

2.8.8 异常产生指令 49

2.9 本章小结 51

2.10 思考题 51

第3章 ARM汇编语言程序设计 52

3.1 ARM/Thumb混合编程 52

3.1.1 Thumb指令的特点及实现 52

3.1.2 ARM/Thumb交互工作基础 53

3.1.3 ARM/Thumb交互子程序 55

3.2 ARM汇编器支持的伪操作 60

3.2.1 伪操作概述 60

3.2.2 符号定义伪操作 60

3.2.3 数据定义(Data Definition)伪操作 63

3.2.4 汇编控制伪操作 69

3.2.5 杂项伪操作 72

3.3 ARM汇编器支持的伪指令 80

3.3.1 ADR伪指令 80

3.3.2 ADRL伪指令 81

3.3.3 LDR伪指令 81

3.4 汇编语言与C/C++的混合编程 82

3.4.1 内联汇编 83

3.4.2 嵌入型汇编 85

3.4.3 汇编代码访问C全局变量 87

3.4.4 C++中使用C头文件 88

3.4.5 混合编程调用举例 89

3.5 本章小结 93

3.6 思考题 93

第4章 嵌入式软件基础实验 94

4.1 Realview MDK简介 94

4.2 ULINK2仿真器简介 95

4.3 使用Realview MDK创建一个工程 96

4.3.1 选择工具集 96

4.3.2 创建工程并选择处理器 96

4.3.3 建立一个新的源文件 97

4.3.4 工程中文件的加入 98

4.3.5 工程基本配置 98

4.3.6 工程的编译链接 105

4.4 嵌入式软件开发基础实验 105

4.4.1 ARM汇编指令实验一 105

4.4.2 ARM汇编指令实验二 111

4.4.3 Thumb汇编指令实验 113

4.4.4 ARM处理器工作模式实验 114

4.4.5 C语言实例一 117

4.4.6 C语言实验程序二 119

4.4.7 汇编语言与C语言相互调用实例 123

4.5 本章小结 125

第5章 ARM应用系统设计 126

5.1 SoC系统概述 126

5.2 S3C2410概述 126

5.3 S3C2410系统功能电路设计 128

5.3.1 概述 128

5.3.2 电源电路 129

5.3.3 时钟电路 130

5.3.4 复位电路 131

5.3.5 JTAG接口电路 131

5.3.6 Nor Flash电路 132

5.3.7 Nand Flash电路 134

5.3.8 SDRAM电路 136

5.3.9 串行接口电路 138

5.3.10 以太网接口电路 140

5.3.11 蜂鸣器电路及其PWM电路 140

5.3.12 按键电路 140

5.3.13 实时时钟 140

5.3.14 A/D转换器电路 142

5.3.15 IIS音频接口电路 142

5.3.16 SD卡接口电路 143

5.3.17 LCD电路 144

5.3.18 USB接口电路 145

5.3.19 印刷电路板设计的注意事项 145

5.4 本章小结 146

5.5 思考题 146

第6章 S3C2410系统接口操作原理及实验 147

6.1 I/O接口实验 147

6.1.1 实验目的 147

6.1.2 实验设备 147

6.1.3 实验内容 147

6.1.4 实验原理 148

6.1.5 实验操作步骤 149

6.1.6 实验参考程序 150

6.2 串口通信实验 151

6.2.1 实验目的 151

6.2.2 实验设备 151

6.2.3 实验内容 151

6.2.4 实验原理 152

6.2.5 实验操作步骤 156

6.2.6 实验参考程序 157

6.3 中断实验 158

6.3.1 实验目的 158

6.3.2 实验设备 158

6.3.3 实验内容 158

6.3.4 实验原理 158

6.3.5 实验操作步骤 163

6.3.6 实验参考程序 165

6.4 键盘控制实验 167

6.4.1 实验目的 167

6.4.2 实验设备 167

6.4.3 实验内容 167

6.4.4 实验原理 167

6.4.5 实验设计 169

6.4.6 实验操作步骤 169

6.4.7 实验参考程序 170

6.5 实时时钟实验 172

6.5.1 实验目的 172

6.5.2 实验设备 172

6.5.3 实验内容 172

6.5.4 实验原理 172

6.5.5 实验设计 174

6.5.6 实验操作步骤 175

6.5.7 实验参考程序 176

6.6 看门狗实验 177

6.6.1 实验目的 177

6.6.2 实验设备 177

6.6.3 实验内容 177

6.6.4 实验原理 177

6.6.5 实验设计 179

6.6.6 实验操作步骤 180

6.6.7 实验参考程序 181

6.7 IIC串行通信实验 182

6.7.1 实验目的 182

6.7.2 实验设备 182

6.7.3 实验内容 182

6.7.4 实验原理 182

6.7.5 实验设计 187

6.7.6 实验操作步骤 187

6.7.7 实验参考程序 189

6.8 A/D转换实验 191

6.8.1 实验目的 191

6.8.2 实验设备 191

6.8.3 实验内容 191

6.8.4 实验原理 191

6.8.5 实验设计 193

6.8.6 实验操作步骤 194

6.8.7 实验参考程序 194

6.9 Nand Flash读写实验 195

6.9.1 实验目的 195

6.9.2 实验设备 195

6.9.3 实验内容 196

6.9.4 实验原理 196

6.9.5 实验设计 199

6.9.6 实验操作步骤 199

6.9.7 实验参考程序 200

6.10 本章小结 202

第7章 嵌入式操作系统及开发简述 203

7.1 嵌入式Linux简介 203

7.2 构建嵌入式Linux开发环境 203

7.2.1 交叉开发环境介绍 204

7.2.2 安装交叉开发工具 204

7.2.3 主机交叉开发环境配置 206

7.3 Bootloader 208

7.3.1 Bootloader的种类 209

7.3.2 U-Boot工程简介 210

7.3.3 U-Boot编译 210

7.3.4 U-Boot的移植思路 213

7.3.5 U-Boot的烧写 214

7.3.6 U-Boot的常用命令 215

7.4 Linux内核与移植 221

7.4.1 Linux内核结构 221

7.4.2 Linux内核配置系统 222

7.4.3 Linux内核编译选项 228

7.5 移植Linux2.6内核到S3C2410平台简述 232

7.5.1 移植的概念 232

7.5.2 设备驱动移植 236

7.5.3 Nand Flash移植 238

7.6 嵌入式文件系统构建 239

7.6.1 文件系统简介 239

7.6.2 嵌入式文件系统的特点和种类 240

7.6.3 文件系统的组成 246

7.6.4 利用BusyBox构建文件系统 249

7.6.5 利用NFS调试新建的文件系统 253

7.7 本章小结 255

7.8 思考题 255

第8章 嵌入式Linux实验 256

8.1 搭建嵌入式Linux开发环境 256

8.1.1 实验目的 256

8.1.2 实验环境 256

8.1.3 实验步骤 256

8.2 移植U-Boot实验 259

8.2.1 实验目的 259

8.2.2 实验环境 259

8.2.3 实验步骤 259

8.3 烧写U-Boot实验 269

8.3.1 实验目的 269

8.3.2 实验环境 269

8.3.3 实验步骤 269

8.4 Linux内核编译与下载实验 270

8.4.1 实验目的 270

8.4.2 实验环境 270

8.4.3 实验步骤 271

8.5 Linux内核移植实验 273

8.5.1 CS8900A网卡驱动移植 273

8.5.2 Nand Flash驱动移植 275

8.5.3 Yaffs2文件系统移植 277

8.6 文件系统制作实验 279

8.6.1 实验目的 279

8.6.2 实验环境 279

8.6.3 实验步骤 279

8.7 编写Linux内核模块实验 284

8.7.1 实验目的 284

8.7.2 实验环境 285

8.7.3 实验步骤 285

8.8 编写带参数的Linux内核模块实验 285

8.8.1 实验目的 285

8.8.2 实验环境 285

8.8.3 实验步骤 285

8.9 编写Linux字符驱动程序实验 286

8.9.1 实验目的 286

8.9.2 实验环境 286

8.9.3 实验步骤 286

8.10 本章小结 289

参考文献 290

本书配套资料 290

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