《嵌入式系统编程源代码解析》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:(美)Dreamtech软件研发组著;王勇等译
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2002
  • ISBN:7505380117
  • 页数:550 页
图书介绍:

前言 1

第1章 嵌入式软件概述 7

1.1 什么是嵌入式系统 7

1.2 嵌入式系统分类 8

1.2.1 单机嵌入式系统 8

1.2.2 实时嵌入式系统 8

1.2.3 网络设备 9

1.2.4 移动设备 9

1.3 嵌入式系统的要求 10

1.3.1 可靠性 10

1.3.2 合理的成本 10

1.3.3 耗电低 10

1.3.4 有效利用处理能力 10

1.3.5 有效利用存储器 11

1.3.6 适当的执行时间 11

1.4 嵌入式软件开发中的挑战和问题 11

1.4.2 嵌入操作系统 12

1.4.1 协同设计 12

1.4.3 代码优化 13

1.4.4 高效输入/输出 13

1.4.5 测试和调试 13

1.5 嵌入式软件开发的趋势 14

1.5.1 处理器 14

1.5.2 存储器 14

1.5.3 操作系统 14

1.6 小结 15

1.5.4 编程语言 15

1.5.5 开发工具 15

第2章 嵌入式系统的应用 17

2.1 应用市场领域 17

2.1.1 消费类电子产品 18

2.1.2 控制系统和工业自动化 19

2.1.3 生物医学系统 21

2.1.4 现场仪器 21

2.1.5 手持式电脑 23

2.1.6 数据通信 24

2.1.7 网络信息设备 29

2.1.8 电信 31

2.1.9 无线通信 35

2.2 差异中的共性 36

2.3 小结 37

第3章 嵌入式系统的硬件体系结构 39

3.1 硬件体系结构 39

3.1.1 处理器 40

3.1.2 存储器 42

3.1.3 锁存器和缓冲器 44

3.1.4 晶体 45

3.1.5 复位电路 45

3.1.6 芯片选择逻辑电路 45

3.1.7 ADC和DAC 45

3.1.8 应用专用控制电路 46

3.1.9 显示单元 46

3.1.11 通信接口 47

3.1.10 小键盘 47

3.1.12 可编程逻辑设备 48

3.2 示例:一个基于8031的控制系统 48

3.3 示例:智能卡 50

3.3.1 集成所有部件 50

3.4 示例研究:一种微控制器体系结构 51

3.5 8051的体系结构 52

3.5.1 简化的电源模式 52

3.5.2 存储器组织 53

3.6 16位和32位处理器 56

3.6.1 示例:基于32位处理器的手持式电脑 57

3.7 DSP体系结构 58

3.7.1 示例:使用DSP的语音识别系统 59

3.7.2 选择DSP 61

3.8 通信接口标准 61

3.8.1 串行接口/UART 61

3.8.2 IEEE 1394 63

3.8.3 通用串行总线 64

3.8.4 IrDA 66

3.8.6 蓝牙 67

3.8.5 以太网 67

3.8.7 PCI总线 68

3.9 开发工具 69

3.9.1 EPROM编程器 69

3.9.2 EPROM擦除器 70

3.9.3 符号差验证器 70

3.10 软硬件交互 70

3.10.2 程序CRC32.cpp的源代码列表 71

3.10.1 自测 71

3.10.3 执行CRC计算程序 74

3.11 小结 75

第4章 开发嵌入式系统 77

4.1 嵌入式系统开发过程 77

4.1.1 确定要求 78

4.1.2 设计系统体系结构 79

4.1.3 选择操作系统 80

4.1.4 选择处理器 82

4.1.5 选择开发平台 83

4.1.6 编码问题 84

4.1.8 在嵌入式系统上验证软件 86

4.2 小结 86

4.1.7 在主机系统上验证软件 86

第5章 嵌入式软件开发环境 87

5.1 操作系统 87

5.1.1 内核体系结构 88

5.1.2 嵌入式操作系统 90

5.1.3 嵌入式系统中的任务调度 91

5.1.5 任务的同步 93

5.1.4 上下文切换 93

5.1.6 定时器 94

5.1.7 嵌入式操作系统的类型 95

5.1.8 实时操作系统 98

5.1.9 移动/手持式操作系统 100

5.2 编程语言 102

5.2.1 汇编语言 103

5.2.2 高级语言 103

5.2.3 C编译器的结构 104

5.2.4 Java编程语言 109

5.2.5 信息设备 113

5.2.6 动态分布式系统 115

5.3 目标处理器的开发工具 118

5.3.1 仿真程序 118

5.3.2 设备驱动程序的开发 119

5.3.3 lcd.ASM的源代码列表 119

5.3.4 执行程序 127

5.3.6 设备驱动程序的开发 128

5.3.5 用于嵌入式驱动程序的工具 128

5.4 实现嵌入式系统:使用本书中介绍的方法 130

5.5 小结 131

第6章 串行通信编程 133

6.1 开发环境 133

6.2 串行通信 133

6.2.1 通信参数 134

6.3 空调制解调器电缆连接 134

6.4 PC机之间的通信项目 135

6.4.1 CserialCommDlg.h的源代码清单 135

6.4.2 运行程序 144

6.5 与8051系列微控制器的串行通信项目 145

6.5.1 Serial.c的源代码清单 146

6.5.2 执行程序 149

6.6 小结 152

第7章 导航系统的开发 153

7.1 开发环境 153

7.2 项目概况 153

7.2.1 Serial.h的源代码清单 154

7.2.2 Serial.cpp的源代码清单 155

7.2.3 GPSDlg.h的源代码清单 159

7.2.4 GPSDlg.cpp的源代码清单 160

7.3 执行程序 169

7.4 将软件移植到嵌入式NT平台 170

7.5 小结 173

第8章 嵌入式通信系统 175

8.1 开发环境 175

8.2 协议转换器项目 176

8.2.1 Test.h的源代码清单 177

8.2.2 Test.c的源代码清单 178

8.2.3 GlobalVar.h的源代码清单 185

8.2.4 Buffers.c的源代码清单 186

8.2.5 PTFunction.c的源代码清单 188

8.2.6 执行程序 189

8.2.7 嵌入软件 190

8.3 基于网际协议(IP)的语音传输项目 193

8.3.1 serverDlg.h的源代码清单 194

8.3.2 serverDlg.cpp的源代码清单 196

8.3.3 clientDlg.h的源代码清单 214

8.3.4 clientDlg.cpp的源代码清单 216

8.3.5 执行程序 236

8.3.6 嵌入软件 237

8.4 小结 240

第9章 基于移动网络的嵌入式应用 241

9.1 开发环境 241

9.2 MP3声音播放器项目 242

9.2.1 sound.c的源代码清单 242

9.2.2 执行程序 248

9.3 薪水调查项目 250

9.3.1 idbusage.c的源代码清单 251

9.3.2 执行程序 266

9.3.3 输出 268

9.4 嵌入BREW应用程序 270

9.5 小结 270

第10章 实时嵌入式软件开发 271

10.1 开发环境 271

10.2.2 执行RTLinux模块 272

10.2 RTLinux模块 272

10.2.1 在RTLinux中编译模块 272

10.2.3 创建RTLinux POSIX线程 274

10.3 编译并执行示例程序 275

10.3.1 RTLinux的核心API 276

10.4 每隔10秒打印一条消息项目 279

10.4.1 hello.c的源代码清单 280

10.4.2 在RTLinux系统上编译文件 281

10.5 通过串行连接发送消息项目 282

10.4.3 执行模块 282

10.5.1 blink.c的源代码清单 283

10.5.2 执行程序 285

10.5.3 输出 287

10.6 过程控制系统的仿真项目 288

10.6.1 SerialCommDlg.cpp的源代码清单 289

10.6.2 temperature.c的源代码清单 292

10.6.3 执行程序 295

10.7 从RTLinux系统控制设备项目 298

10.7.1 play.c的源代码清单 299

10.7.2 stop.c的源代码清单 301

10.7.3 repeat.c的源代码清单 302

10.7.4 AudioPlayerDlg.cpp的源代码清单 304

10.7.5 执行步骤 306

10.7.6 输出 309

10.8 小结 310

11.1 开发环境 311

11.2 薪水调查项目 311

第11章 嵌入式数据库应用 311

11.2.1 有关数据库的一些问题 312

11.2.2 SalarySurvey.ebf文件的源代码清单 312

11.2.3 执行程序 325

11.2.4 输出 330

11.3 能量计读数项目 331

11.3.1 EnergyConsumption.ebf的源代码清单 332

11.3.2 执行程序 347

11.3.3 输出 351

11.5 小结 352

11.4 桌面机和Pocket PC之间的数据同步 352

第12章 具备Java功能的网络信息设备 353

12.1 开发环境 353

12.2 客户关系管理软件项目 354

12.2.1 项目文件 354

12.2.2 源代码清单 356

12.2.3 嵌入应用程序 377

12.3 开发基于位置的服务项目 377

12.3.1 项目文件 377

12.3.2 源代码清单 378

12.3.3 测试应用程序 386

12.4.1 项目文件 388

12.4 嵌入式过程控制系统项目 388

12.4.2 数据库细节内容 389

12.4.3 源代码清单 389

12.4.4 测试应用程序 399

12.5 小结 400

13.1 电子城市导游项目 401

13.1.1 开发环境 401

第13章 移动Java设备 401

13.1.2 数据库细节内容 402

13.1.3 CityGuide.java的源代码清单 402

13.1.4 Cities.jsp的源代码清单 415

13.1.5 Categories.jsp的源代码清单 416

13.1.6 CityDetails.jsp的源代码清单 418

13.1.7 NameCategory.jsp的源代码清单 419

13.1.8 执行该程序 421

13.2 使用Jini的设备控制项目 426

13.2.2 启动Jini服务 427

13.2.1 Jini的安装及类路径设置 427

13.2.3 ACRemote应用程序 433

13.2.4 项目文件 434

13.2.5 源代码清单 434

13.2.6 测试应用程序 448

13.3 小结 451

第14章 嵌入式Windows XP中的软件开发 453

14.1 开发环境 453

14.3 空调的远程控制项目 454

14.2 项目概况 454

14.3.1 项目概况 455

14.3.2 Serial.h的源代码清单 455

14.3.3 Serial.cpp的源代码清单 456

14.3.4 ACRemoteDlg.h的源代码清单 460

14.3.5 ACRemoteDlg.cpp的源代码清单 461

14.3.6 ACSimulator.cpp的源代码清单 468

14.3.7 执行程序 470

14.3.8 将软件移植到Embedded XP平台上 471

14.4 远程控制音频播放器项目 475

14.4.1 项目概况 476

14.4.2 MP3RemoteDlg.h的源代码清单 476

14.4.3 MP3RemoteDlg.cpp的源代码清单 477

14.4.4 执行程序 483

14.4.5 将软件移植到Embedded XP平台 484

14.5 打字速度指示器项目 484

14.5.1 frmmain.frm的源代码清单 484

14.5.2 frmtest.frm的源代码清单 485

14.5.3 frmfallingletters.frm的源代码清单 489

14.5.4 执行程序 492

14.5.5 输出 496

14.5.6 将软件移植到Embedded XP平台 497

14.6 嵌入式数据库应用项目 498

14.6.1 数据库定义 498

14.6.2 Productivity.frm的源代码 498

14.6.3 执行程序 508

14.6.4 输出 517

14.6.5 安装数据库应用程序 518

14.7 电子表决项目 520

14.6.6 将软件移植到Embedded XP平台 520

14.7.2 项目文件 521

14.7.3 vote.asp的源代码清单 521

14.7.1 数据库细节内容 521

14.7.4 insertvote.asp的源代码清单 524

14.7.5 checkvote.asp的源代码清单 527

14.7.6 thanks.html的源代码清单 529

14.7.7 display.asp的源代码清单 530

14.7.8 执行程序 532

14.8 小结 534

14.7.9 嵌入应用程序 534

第15章 嵌入式系统的发展趋势 535

15.1 芯片上的系统 535

15.2 智能卡和无现金社会 536

15.3 嵌入式系统的安全性 537

15.4 小结 539

附录A CD-ROM上的内容 541

附录B 嵌入式软件资源 549