当前位置:首页 > 工业技术
嵌入式系统基础与应用
嵌入式系统基础与应用

嵌入式系统基础与应用PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:刘亚平,姜海,赵鹏等编著
  • 出 版 社:北京:中国人民大学出版社
  • 出版年份:2009
  • ISBN:9787300099606
  • 页数:279 页
图书介绍:本书介绍嵌入式系统的设计和开发原理及方法。
《嵌入式系统基础与应用》目录

第1章 嵌入式系统概述 1

1.1 现代计算机的技术发展史 1

1.1.1 始于微型机时代的嵌入式应用 1

1.1.2 现代计算机技术的两大分支 2

1.1.3 两大分支发展的里程碑事件 2

1.2 嵌入式系统 2

1.2.1 嵌入式系统的概念 2

1.2.2 嵌入式系统的发展 3

1.2.3 嵌入式系统的特点 4

1.2.4 嵌入式系统的种类 5

1.2.5 嵌入式系统的结构 6

1.2.6 嵌入式系统的应用范围 7

1.2.7 嵌入式技术的重要性与两面性 9

1.3 嵌入式SoC技术 10

1.3.1 嵌入式SoC概述 10

1.3.2 嵌入式SoC的特点 11

1.3.3 IP复用技术 12

1.3.4 嵌入式SoC的优缺点 13

1.4 嵌入式系统的发展趋势与挑战 14

1.4.1 嵌入式系统的发展趋势 14

1.4.2 嵌入式系统设计的挑战 15

练习题1 17

第2章 嵌入式硬件系统 18

2.1 嵌入式系统的硬件组成 18

2.1.1 嵌入式处理器 18

2.1.2 存储器 23

2.1.3 输入/输出设备 26

2.1.4 电源 30

2.2 嵌入式系统的硬件开发技术 32

2.2.1 接口技术 32

2.2.2 总线技术 36

2.2.3 硬件调试技术 39

2.2.4 不同电压设备互连 43

练习题2 44

第3章 ARM开发平台 45

3.1 SMDK2410概述 45

3.2 电路描述 47

3.2.1 供电系统 47

3.2.2 SMDK2410的体系结构 48

3.3 系统配置 49

3.3.1 时钟 49

3.3.2 复位逻辑 49

3.3.3 电源选择 50

3.3.4 引导ROM(BANK0) 50

3.3.5 NAND Flash配置 51

3.3.6 通用I/O口 52

3.3.7 U4(EPM7032)XDMA通道选择 52

3.3.8 LCD接口 52

3.3.9 触摸屏 54

3.3.10 键盘和SPI接口 55

3.3.11 A/D转换器接口 56

3.3.12 SD(MMC)主接口 56

3.3.13 USB接口 57

3.3.14 UART接口 58

3.3.15 IrDA接口 59

3.4 S3C2410X介绍 59

3.4.1 S3C2410X特性 60

3.4.2 内部结构图 64

3.4.3 芯片引脚定义 65

3.4.4 S3C2410X启动分析 69

练习题3 72

第4章 嵌入式系统开发环境简介 73

4.1 ARM SDT 2.5开发环境 73

4.1.1 建立工程文件 73

4.1.2 进行程序的在线仿真、调试 76

4.2 ADS 1.2开发环境 78

4.2.1 配置ADS集成开发环境 78

4.2.2 建立工程文件 83

4.2.3 进行程序的在线仿真、调试 83

4.3 超级终端设置及BIOS功能使用 84

练习题4 86

第5章 嵌入式操作系统 87

5.1 概述 87

5.2 μC/OS-II操作系统 89

5.3 嵌入式Linux操作系统 90

5.3.1 Linux概述 90

5.3.2 uClinux操作系统 90

5.3.3 uClinux的开发环境 93

5.4 嵌入式操作系统的选择 95

5.5 嵌入式设备的文件系统 98

5.5.1 闪存介绍 98

5.5.2 ext2fs文件系统 99

5.5.3 tmpfs文件系统 99

5.5.4 JFFS2 100

5.6 系统引导Bootloader程序 102

5.6.1 概述 102

5.6.2 Bootloader的作用 102

5.6.3 Bootloader的操作模式 103

5.6.4 Bootloader框架 103

5.7 嵌入式操作系统的移植 104

5.7.1 移植条件 104

5.7.2 移植内容 104

5.7.3 μC/OS-II应用 110

练习题5 111

第6章 嵌入式图形界面 112

6.1 Linux图形领域的基础设施 112

6.1.1 X Window 112

6.1.2 SVGALib 113

6.1.3 FrameBuffer 113

6.1.4 LibGGI 114

6.2 Linux图形领域的高级函数库 115

6.2.1 Xlib及其他相关函数库 115

6.2.2 SDL 115

6.2.3 Allegro 115

6.2.4 Mesa3D 115

6.2.5 DirectFB 116

6.3 面向嵌入式Linux系统的图形用户界面 116

6.3.1 MicroWindows/NanoX 116

6.3.2 OpenGUI 116

6.3.3 Qt/Embedded 117

6.3.4 emWin 117

6.3.5 MiniGUI 119

6.4 emWin的移植与应用 120

6.4.1 移植条件 120

6.4.2 emWin的移植 120

6.4.3 emWin的应用 122

练习题6 123

第7章 ARM程序设计 124

7.1 ARM汇编器所支持的伪指令 124

7.1.1 数据定义伪指令 124

7.1.2 符号定义伪指令 127

7.1.3 汇编控制伪指令 129

7.1.4 其他常用的伪指令 131

7.2 汇编语言程序结构 136

7.2.1 汇编语言程序的基本结构 136

7.2.2 汇编语言的子程序调用 136

7.2.3 汇编语言程序示例 137

7.3 汇编语言的语句格式 140

7.3.1 汇编语言程序中常用的符号 140

7.3.2 表达式和运算符 141

7.4 汇编语言与C/C++的混合编程 144

7.4.1 在C语言中内嵌汇编 144

7.4.2 在汇编中使用C定义的全局变量 145

7.4.3 在C中调用汇编的函数 146

7.4.4 在汇编中调用C的函数 147

练习题7 147

第8章 基于ARM的软件开发 149

8.1 基于ARM处理器的嵌入式系统设计 149

8.1.1 _packed限定符和对数据的未对齐访问 150

8.1.2 结构中的未对齐字段 150

8.1.3 未对齐的指针 151

8.1.4 用于访问半字的未对齐LDR指令 151

8.1.5 _packed结构与单个_packed字段 152

8.2 编译器的默认行为 153

8.2.1 Semihosting 153

8.2.2 使用C库进行开发 155

8.2.3 存储器映射 157

8.2.4 链接器放置规则 157

8.2.5 应用程序启动 158

8.3 调整C库使其适应目标硬件 158

8.3.1 重定向C库的目标 158

8.3.2 从最终代码映像中去掉Semihosting 159

8.4 映像文件存储器映射调整 159

8.4.1 分散加载 159

8.4.2 Scatter文件的语法 161

8.4.3 Scatter文件的使用 166

8.5 重置与初始化 169

8.5.1 初始化序列 169

8.5.2 向量表 170

8.5.3 ROM/RAM重映射 170

8.5.4 局部存储器设置有关的考虑事项 171

8.5.5 栈指针初始化 171

8.5.6 硬件初始化 173

8.5.7 执行模式的注意事项 173

练习题8 174

第9章 设备驱动程序开发 175

9.1 概述 175

9.1.1 设备类型 176

9.1.2 设备号 177

9.1.3 设备驱动 177

9.2 设备文件接口 179

9.2.1 用户访问接口 179

9.2.2 文件操作 180

9.2.3 I/O操作 183

9.3 中断处理 184

9.3.1 中断产生 184

9.3.2 IRQ 184

9.3.3 中断处理程序 185

9.3.4 置中断标志位 186

9.3.5 中断处理程序的不可重入性 186

9.3.6 避免竞争条件的出现 187

9.4 设备驱动的编写 187

9.4.1 概述 187

9.4.2 基本实例 187

9.4.3 具体问题 191

练习题9 192

第10章 嵌入式系统的调试 193

10.1 调试工具 193

10.1.1 ROM仿真器 193

10.1.2 芯片调试 194

10.1.3 逻辑分析仪 195

10.2 调试环境搭建原理 195

10.2.1 插桩 195

10.2.2 GDB介绍 196

10.3 使用GDB 197

10.3.1 启动GDB 197

10.3.2 载入程序(file) 197

10.3.3 运行程序(run) 197

10.3.4 查看程序信息(info) 197

10.3.5 列出一段源程序(list) 198

10.3.6 设置断点(break) 198

10.3.7 设置监视点(watch) 199

10.3.8 检查数据(print) 200

10.3.9 修改变量值(set) 200

10.3.10 检查内存值(examine) 200

10.3.11 输出格式(F) 201

10.3.12 单步执行指令(step和next) 201

10.3.13 继续执行指令(continue) 201

10.3.14 帮助指令(help) 201

10.4 Linux内核调试 201

10.4.1 Linux系统内核级软件的调试技术 202

10.4.2 使用KGDB构建Linux内核调试环境 202

10.5 调试实例 209

练习题10 213

第11章 嵌入式系统开发实例 214

11.1 PDA系统设计 214

11.1.1 概述 214

11.1.2 需求分析 216

11.1.3 硬件设计 221

11.1.4 软件设计 223

11.2 GPRS应用系统设计 228

11.2.1 概述 228

11.2.2 需求分析 234

11.2.3 硬件设计 236

11.2.4 软件设计 244

11.3 嵌入式车载信息系统设计 254

11.3.1 概述 254

11.3.2 需求分析 255

11.3.3 硬件设计 259

11.3.4 软件设计 268

练习题11 278

参考文献 279

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