书籍详情

嵌入式系统设计与应用开发

嵌入式系统设计与应用开发

作者:郑灵翔编著

出版社:北京航空航天大学出版社

出版时间:2006-02-01

ISBN:9787810777469

定价:¥36.00

购买这本书可以去
内容简介
本书是一部关于基于2.6内核的嵌入式Linux操作系统的微型计算机系统开发专业教材,全书全面介绍嵌入式系统开发的一般过程。以Intel公司大学计划的XScale开发板为例,采用软硬件结合的方式详细介绍嵌入式系统的硬件设计和底层软件设计原理。本书适合高校计算机专业学生。本书基于2.6内核的嵌入式Linux操作系统,全面介绍嵌入式系统开发的一般过程。以Intel公司大学计划的XScale开发板为例,采用软硬件结合的方式详细介绍嵌入式系统的硬件设计和底层软件设计原理。全书分为三部分:第1~6章介绍嵌入式开发入门知识,包括嵌入式系统的基础知识以及相关的概念和原理,基于Linux的嵌入式系统开发方法和流程;第7~14章是全书的重点,详细介绍嵌入式系统硬件设计和软件驱动原理以及对应接口的应用软件开发方法;第15~18章介绍一些常见的嵌入式应用设计开发方法。本书可作为高校电类相关专业硕士研究生或高年级本科生的嵌入式系统教材,也可作为嵌入式系统开发工程师的实用参考书。
作者简介
暂缺《嵌入式系统设计与应用开发》作者简介
目录
第1章 绪论1
1.1 嵌入式系统的概念1
1.2 嵌入式系统的分类1
1.3 嵌入式系统的组成2
1.4 嵌入式系统的设计流程3
1.5 嵌入式技术的发展趋势5
习题与思考题7
第2章 ARM与XScale体系结构简介8
2.1 ARM处理器介绍8
2.1.1 RISC体系结构8
2.1.2 ARM系列处理器9
2.2 ARM体系结构的一些重要概念11
2.2.1 处理器工作状态11
2.2.2 处理器模式11
2.2.3 ARM寄存器12
2.2.4 异常15
2.3 XScale体系结构16
2.3.1 XScale超级流水线17
2.3.2 协处理器18
2.3.3 无线MMX指令单元19
2.3.4 内存管理19
2.3.5 指令快存20
2.3.6 数据快存20
2.3.7 转移目标缓冲器BTB21
2.3.8 写缓冲器21
2.3.9 性能监视21
2.3.10 电源管理21
2.3.11 调试21
2.4 PXA系列处理器22
2.4.1 PXA255处理器22
2.4.2 PXA27x处理器24
2.5 XScale开发平台26
2.5.1 XSBase255开发平台26
2.5.2 XSBase270开发平台29
本章小结31
习题与思考题31
第3章 操作系统基础32
3.1 操作系统的概念32
3.2 操作系统的发展过程32
3.3 嵌入式操作系统34
3.3.1 嵌入式操作系统的演化及其发展趋势35
3.3.2 常见的嵌入式操作系统36
3.3.3 嵌入式操作系统的选择39
3.4 操作系统的功能41
3.4.1 进程管理41
3.4.2 存储器管理44
3.4.3 设备管理48
3.4.4 文件管理48
本章小结49
习题与思考题49
第4章 Linux概述50
4.1 Linux的历史50
4.2 Linux常见发行版简介51
4.3 Linux操作系统的构成51
4.3.1 总体结构51
4.3.2 Linux内核52
4.3.3 根文件系统目录树结构53
4.3.4 Shell简介55
4.3.5 Linux文件55
4.4 Linux的基本操作56
4.4.1 Linux命令的使用56
4.4.2 vi编辑器的使用74
4.4.3 Linux配置与管理的相关命令75
4.5 嵌入式Linux简介78
4.5.1 自制嵌入式Linux78
4.5.2 商业版嵌入式Linux79
4.5.3 NMT RTLinux79
4.5.4 RTAI80
4.5.5 μClinux81
本章小结82
习题与思考题82
第5章 Linux程序开发简介83
5.1 GNU Compiler Collection简介83
5.1.1 用GCC编译简单程序84
5.1.2 GCC使用简介84
5.2 GNU make与Makefile编写87
5.2.1 Makefile的编写88
5.2.2 Makefile的处理过程89
5.2.3 Makefile的变量89
5.2.4 Phony目标91
5.2.5 利用隐含规则简化Makefile92
5.2.6 make的命令行参数93
5.2.7 Makefile示例93
5.3 Autoconf和Automake简介94
5.3.1 使用前的准备95
5.3.2 自动生成Makefile的方法95
5.3.3 Makefile.am的编写97
5.3.4 自动处理复杂软件包98
5.4 GDB/Insight调试器的使用100
5.4.1 GDB调试工具简介100
5.4.2 GDB图形前端Insight简介111
5.5 Linux下集成开发工具的使用118
本章小结122
习题与思考题122
第6章 嵌入式Linux开发入门123
6.1 嵌入式系统的开发模式123
6.2 嵌入式Linux系统的开发流程124
6.3 嵌入式Linux的构造 125
6.3.1 开发环境的安装125
6.3.2 内核裁剪与编译126
6.3.3 Busybox与根文件系统的构造131
6.4 在开发板上运行嵌入式Linux 137
6.4.1 Bootloader简介137
6.4.2 U-boot烧写与使用138
6.4.3 用U-boot启动嵌入式Linux 143
6.5 嵌入式硬件仿真环境SkyEye150
6.5.1 SkyEye安装151
6.5.2 在SkyEye中运行嵌入式Linux152
6.5.3 在图形化的SkyEye-Insight下调试Linux内核156
6.6 嵌入式应用程序开发调试158
6.6.1 将应用程序加入嵌入式Linux系统158
6.6.2 应用程序的移植159
6.6.3 通过NFS调试嵌入式应用程序161
6.6.4 通过Cross-gdb调试应用程序163
本章小结166
习题与思考题166
第7章 Linux 2.6内核驱动原理168
7.1 基本原理168
7.1.1 设备分类168
7.1.2 设备号169
7.2 内核模块169
7.2.1 内核模块的概念169
7.2.2内核模块的框架170
7.2.3 2.6系列内核模块的编译和加载170
7.3 设备驱动程序的结构174
7.3.1 虚拟文件系统与硬件驱动的接口174
7.3.2简单字符设备的驱动176
7.4 Linux2.6内核设备模型178
7.4.1 Linux2.6设备模型概述178
7.4.2 移植到新的驱动模式180
7.5 Linux 2.6内核的中断处理182
7.5.1中断处理程序的注册与释放183
7.5.2中断处理程序的编写184
7.6Linux 2.6内核的工作推后执行的机制184
7.6.1 软中断185
7.6.2 Tasklet185
7.6.3 工作队列187
本章小结190
习题与思考题190
第8章 处理器核心电路设计和底层软件移植191
8.1 最小硬件系统设计191
8.1.1 系统存储器接口191
8.1.2 串口电路原理194
8.2 最小硬件系统的配置195
8.2.1 处理器的配置195
8.2.2 Flash & SDRAM的配置196
8.2.3 GPIO和串口的配置199
8.3 最小硬件系统与Bootloader201
8.3.1 Uboot启动阶段1的处理过程202
8.3.2 Uboot启动阶段2的处理过程207
8.3.3 Uboot移植原理208
8.3.4 基于Uboot的硬件调试214
8.4 最小硬件系统与Linux 2.6内核移植216
8.4.1 建立开发板平台描述文件217
8.4.2 编写硬件include文件219
8.4.3 修改内核配置文件219
本章小结219
习题与思考题220
第9章 Keypad接口设计与驱动开发221
9.1 Keypad硬件原理221
9.1.1 Keypad接口设计221
9.1.2 Keypad电路原理222
9.2 Keypad软件驱动原理224
9.2.1 内核模块的注册和撤销224
9.2.2 虚拟文件系统与硬件驱动的接口225
9.2.3 设备打开操作接口函数225
9.2.4 设备读取操作接口函数226
9.2.5 设备关闭操作接口函数227
9.2.6 获取键值子函数227
9.2.7 读缓冲区子函数229
9.2.8 内核定时器的使用229
9.2.9 利用等待队列实现阻塞型I/O230
9.2.10 poll系统调用操作接口函数231
9.2.11 在设备驱动中实现异步通知233
9.3 键盘信息读取应用实例234
本章小结236
习题与思考题236
第10章 RTC接口电路设计与驱动开发237
10.1 RTC电路设计237
10.1.1 处理器与RTC4513接口设计237
10.1.2 RTC4513电路原理238
10.1.3 RTC4513操作参数240
10.1.4 RTC4513的串行操作流程243
10.2 RTC软件驱动原理246
10.2.1 内核模块的注册和撤销247
10.2.2 虚拟文件系统与硬件驱动的接口247
10.2.3 设备打开操作接口函数248
10.2.4 使用ioctl()方法248
10.2.5 设备关闭操作接口函数252
10.2.6 读时钟寄存器子函数252
10.2.7 写时钟寄存器子函数253
10.3 RTC操作应用实例253
本章小结256
习题与思考题256
第11章 触摸屏电路设计与驱动开发257
11.1 触摸屏的工作原理257
11.2 ADS7843触摸屏控制器简介258
11.3 处理器与ADS7843的接口设计260
11.3.1 电路接口设计260
11.3.2 Microwire数据帧结构261
11.4 触摸屏软件驱动原理263
11.4.1 Linux内核输入设备子系统驱动架构263
11.4.2 硬件操控原理263
11.4.3 输入设备驱动接口的使用266
11.4.4 中断处理268
11.5 基于触摸屏驱动的应用实例270
本章小结272
习题与思考题272
第12章 以太网电路设计与驱动开发273
12.1 CS8900A以太网芯片简介273
12.1.1 功能介绍273
12.1.2 引脚定义273
12.2 处理器与以太网芯片接口设计274
12.3 CS8900A片内寄存器介绍275
12.3.1 总线接口寄存器组275
12.3.2 状态与控制寄存器组276
12.3.3 发送初始化寄存器组285
12.3.4 地址过滤寄存器组286
12.4 CS8900A的操作方法286
12.4.1 CS8900A的初始化286
12.4.2 CS8900A的I/O模式寄存器287
12.4.3 CS8900A片内寄存器的读/写287
12.5 Linux网络设备软件驱动原理288
12.5.1 Linux网络设备驱动框架288
12.5.2 Linux网络设备接口289
12.5.3 网络驱动程序的实现294
本章小结303
习题与思考题303
第13章 PCMCIA外围电路设计与驱动开发304
13.1 PXA2XX处理器的PCMCIA接口304
13.1.1 PCMCIA和CF接口简介304
13.1.2 PXA2XX处理器的PCMCIA存储器映射305
13.1.3 PCMCIA外部接口设计305
13.2 外围电路驱动原理307
13.2.1双向收发器74LCX245的使用307
13.2.2 CF卡插入检测308
13.2.3 “卡读(写)使能”信号310
13.2.4 PCMCIA接口的Socket Select311
13.2.5 PCMCIA接口的电源管理311
13.3 GPIO连接原理313
13.3.1 存储控制单元的GPIO连接原理313
13.3.2 与中断相关的GPIO连接原理314
13.4 PCMCIA软件驱动原理315
13.4.1 PCMCIA设备驱动体系结构315
13.4.2 PCMCIA工作流程316
13.4.3 插口驱动设计316
13.5 PCMCIA Card Services 软件包319
13.5.1 软件包的安装319
13.5.2 Ture IDE模式的CF卡驱动320
13.5.3 CF存储卡的使用321
本章小结323
习题与思考题323
第14章 AC97音频处理电路设计与驱动开发324
14.1 PXA255 AC97硬件工作原理324
14.1.1 PXA255 AC97音频处理电路设计324
14.1.2 PXA255 AC97控制单元324
14.1.3 CS4299音频编解码器331
14.2 AC97软件驱动原理335
14.2.1 音频设备的注册及初始化335
14.2.2 DSP设备338
14.2.3 混音器设备340
14.3 音频应用实例342
本章小结346
习题与思考题347
第15章 图形用户界面设计348
15.1 PXA255显示驱动348
15.1.1 LCD接口原理348
15.1.2 LCD驱动流程351
15.2 常见的嵌入式图形用户界面简介358
15.3 QT/E和Qtopia移植360
15.4 免费的GUI——TinyX364
本章小结366
习题与思考题367
第16章 嵌入式Linux网络应用开发368
16.1 TCP/IP和Linux网络简介368
16.2 Linux套接字编程接口介绍370
16.3 基于IPv4协议Socket编程371
16.3.1 基于TCP的Socket编程371
16.3.2 基于TCP Socket的应用实例——猜数字游戏374
16.3.3 基于UDP的Socket编程378
16.3.4 基于UDP Socket的应用实例——服务查询379
16.4 IPv6网络应用程序开发382
16.4.1 IPv6简介382
16.4.2 IPv4程序移植到IPv6的方法384
16.5 IPv4到IPv6程序移植实例390
16.5.1 基于TCP Socket的猜数字游戏程序移植390
16.5.2 基于UDP Socket的服务查询程序移植393
本章小结399
习题与思考题399
第17章 嵌入式系统软件优化方法简介400
17.1 嵌入式软件优化方法概述400
17.2 基于Intel IPP/GPP库的软件优化401
17.2.1 Intel IPP库简介401
17.2.2 Intel GPP图形库简介404
17.3 Intel VTune可视化性能分析工具404
17.3.1 VTune概要404
17.3.2 VTune实验407
本章小结413
习题与思考题413
第18章 PXA处理器应用解决方案414
18.1 数字身份认证系统414
18.1.1 系统原理414
18.1.2 系统设计415
18.1.3 硬件设计417
18.1.4 软件设计418
18.2 智能家庭监控系统423
18.2.1 系统原理423
18.2.2 系统设计424
18.2.3 硬件设计425
18.2.4 软件设计428
18.3 支持NGI与自动目标跟踪的数字视频监控系统430
18.3.1 系统设计430
18.3.2 硬件设计431
18.3.3 软件设计432
18.4 PMP便携式媒体播放器435
18.4.1 方案选择435
18.4.2 Intel PXA27x解决方案的优势436
18.4.3 硬件设计437
18.4.4 软件设计439
本章小结439
附录基于μClinux的嵌入式开发440
参考文献452  
猜您喜欢

读书导航