第1章 概论 1
1.1 单片机发展历程 1
1.2 单片机应用领域简介 2
1.3 单片机的种类 3
第2章 单片机应用系统键盘模块 5
2.1 概述 5
2.1.1 独立式键盘 8
2.1.2 阵列式键盘 9
2.2 利用单片机I/O口实现阵列式键盘 10
2.2.1 硬件工作原理 10
2.2.2 软件开发流程及代码分析 11
2.2.3 小结 15
2.3 利用8155芯片实现阵列式键盘 15
2.3.1 8155芯片简介 15
2.3.2 硬件工作原理 18
2.3.3 软件开发流程及代码分析 21
2.3.4 小结 25
2.4 利用键盘管理芯片实现电子密码锁 25
2.4.1 系统功能定义及设计思路 26
2.4.2 ZLG7289B芯片简介 26
2.4.3 硬件工作原理 33
2.4.4 软件开发流程及代码分析 35
2.4.5 小结 51
第3章 单片机应用系统显示模块 52
3.1 概述 52
3.1.1 LED显示原理及驱动方法 52
3.1.2 LCD显示原理及驱动方法 62
3.2 动态LED点阵显示屏系统 63
3.2.1 系统功能定义及设计思路 63
3.2.2 硬件工作原理 64
3.2.3 软件开发流程及代码分析 66
3.2.4 小结 72
3.3 液晶电子显示牌系统 72
3.3.1 系统功能定义及设计思路 72
3.3.2 OCMJ4X12C液晶显示器简介 73
3.3.3 硬件工作原理 77
3.3.4 软件开发流程及代码分析 78
3.3.5 小结 86
第4章 单片机应用系统存储器模块 87
4.1 概述 87
4.1.1 E2PROM简介 87
4.1.2 铁电存储器简介 91
4.1.3 双口RAM简介 92
4.2 中继通信站数据存储系统 94
4.2.1 系统功能定义 94
4.2.2 FM1608B铁电存储器简介 94
4.2.3 硬件工作原理 97
4.2.4 软件开发流程及代码分析 97
4.2.5 小结 101
4.3 高速数据采集系统设计 101
4.3.1 系统功能定义 101
4.3.2 IDT7005双口RAM简介 102
4.3.3 硬件工作原理 106
4.3.4 软件开发流程及代码分析 108
4.3.5 小结 115
第5章 单片机应用系统A/D转换模块 116
5.1 概述 116
5.1.1 双积分式A/D转换器的工作原理 117
5.1.2 逐次逼近式A/D转换器的工作原理 118
5.2 电表电量采集系统 120
5.2.1 系统功能定义及设计思路 120
5.2.2 ICL7135A/D转换器简介 122
5.2.3 CAT24WC16简介 126
5.2.4 I2C协议 127
5.2.5 硬件工作原理 130
5.2.6 软件开发流程及代码分析 135
5.2.7 小结 143
5.3 快速温度检测系统 143
5.3.1 系统功能定义及设计思路 143
5.3.2 12位高速A/D转换器MAX1274简介 143
5.3.3 温度传感器AD590简介 145
5.3.4 硬件工作原理 146
5.3.5 软件开发流程及代码分析 148
5.3.6 小结 153
第6章 单片机应用系统D/A转换模块 154
6.1 概述 154
6.1.1 D/A转换原理 154
6.1.2 D/A转换指标 157
6.2 三角波发生器 158
6.2.1 系统功能定义及设计思路 158
6.2.2 DAC1230 D/A转换器简介 159
6.2.3 硬件工作原理 163
6.2.4 软件开发流程及代码分析 168
6.2.5 小结 175
6.3 白光LED灯控制系统 176
6.3.1 系统功能定义及设计思路 176
6.3.2 D/A转换器MCP4822简介 176
6.3.3 LED驱动器MAX1554简介 179
6.3.4 硬件工作原理 180
6.3.5 软件开发流程及代码分析 181
6.3.6 小结 187
第7章 单片机应用系统看门狗模块 188
7.1 概述 188
7.1.1 看门狗的功能 188
7.1.2 看门狗应用技巧 189
7.2 硬件看门狗 189
7.2.1 MAX813L和MAX705~708看门狗芯片简介 190
7.2.2 MAX813L与单片机的连接应用方法 194
7.2.3 X5045看门狗芯片简介 196
7.2.4 由外部计数器或定时器等实现硬件看门狗 208
7.3 软件看门狗 212
7.3.1 单定时器中断监视实现软件看门狗 212
7.3.2 环形中断监视实现软件看门狗 213
第8章 单片机应用系统打印机模块 216
8.1 概述 216
8.1.1 微型打印机的分类 216
8.1.2 选用微型打印机时需要考虑的问题 217
8.2 RD-E系列微型打印机简介 217
8.2.1 功能简介 218
8.2.2 接口方式 218
8.2.3 打印命令 221
8.3 8279芯片简介 222
8.3.1 8279引脚 222
8.3.2 8279的内部结构 223
8.3.3 8279的命令字 225
8.3.4 8279的状态字 227
8.3.5 8279的接口 227
8.4 手持式收费系统打印功能的实现 228
8.4.1 系统功能定义 228
8.4.2 系统硬件工作原理 228
8.4.3 系统软件开发流程及代码分析 230
8.4.4 小结 243
第9章 单片机应用系统实时时钟模块 244
9.1 概述 244
9.1.1 PCF8563串行时钟芯片 244
9.1.2 DS12887并行时钟芯片 248
9.2 电子万年历系统设计 256
9.2.1 系统功能定义及设计思路 256
9.2.2 系统硬件工作原理 256
9.2.3 系统软件开发流程及代码分析 259
9.2.4 小结 273
9.3 实时门禁记录系统设计 273
9.3.1 系统功能定义及设计思路 273
9.3.2 DS1990A简介 273
9.3.3 DS1302简介 277
9.3.4 系统硬件工作原理 280
9.3.5 系统软件开发流程及代码分析 282
9.3.6 小结 295
第10章 单片机应用系统通信模块 296
10.1 单片机通信简介 296
10.1.1 单片机串行口基础知识 298
10.1.2 RS-232C通信标准 300
10.1.3 RS-485通信标准 301
10.1.4 CAN总线通信标准 302
10.2 单片机比特率自动识别系统的设计 307
10.2.1 系统功能定义及设计思路 308
10.2.2 MAX232芯片简介 308
10.2.3 系统硬件工作原理 310
10.2.4 系统软件开发流程及代码分析 311
10.2.5 小结 320
10.3 基于RS-485总线的远距离温度监控系统 321
10.3.1 系统功能定义及设计思路 321
10.3.2 SN75LBC184芯片简介 321
10.3.3 系统硬件工作原理 322
10.3.4 系统软件开发流程及代码分析 324
10.3.5 小结 329
10.4 基于CAN总线的远距离水位监控系统 330
10.4.1 系统功能定义及设计思路 330
10.4.2 SJA1000芯片简介 330
10.4.3 系统硬件工作原理 335
10.4.4 系统软件开发流程及代码分析 341
10.4.5 小结 353
第11章 单片机应用系统温度测量模块 354
11.1 概述 354
11.1.1 温度测量的方法 354
11.1.2 温度传感器 355
11.2 基于Pt100的温度计设计 355
11.2.1 系统功能定义及设计思路 355
11.2.2 Pt100简介 356
11.2.3 读取Pt100温度值的方法 357
11.2.4 系统硬件工作原理 358
11.2.5 系统软件开发流程及代码分析 360
11.2.6 小结 365
11.3 多点温度循环检测系统 366
11.3.1 系统功能定义及设计思路 366
11.3.2 DS18B20简介 366
11.3.3 系统硬件工作原理 370
11.3.4 系统软件开发流程及代码分析 371
11.3.5 小结 376
11.4 非接触式高温测量系统 376
11.4.1 系统功能定义及设计思路 376
11.4.2 MLX90614红外测温传感器简介 376
11.4.3 系统硬件工作原理 380
11.4.4 系统软件开发流程及代码分析 384
11.4.5 小结 395
第12章 单片机应用系统语音处理模块 396
12.1 概述 396
12.1.1 语音信号的特点 396
12.1.2 语言采集、回放的原理 397
12.2 ISD4002语音回放芯片简介 397
12.2.1 ISD4002的引脚分布及其功能 397
12.2.2 ISD4002的SPI协议 398
12.2.3 ISD4002的命令 399
12.2.4 ISD4002的上电顺序 399
12.2.5 ISD4002的数据端口的控制位 400
12.2.6 ISD4002的SPI总线时序 400
12.2.7 ISD4002的典型应用——录/改音系统电路 401
12.3 语音电子门锁 402
12.3.1 系统功能定义及设计思路 402
12.3.2 JL-034B电容式传声器简介 402
12.3.3 AP7003语音识别芯片简介 403
12.3.4 系统硬件工作原理 407
12.3.5 系统软件开发流程及代码分析 410
12.3.6 小结 421
第13章 单片机应用系统电动机控制模块 422
13.1 概述 422
13.1.1 电动机的分类 422
13.1.2 电动机控制原理 423
13.2 自动开关门系统 424
13.2.1 系统功能定义及设计思路 425
13.2.2 34HS300步进电动机及其控制器简介 425
13.2.3 系统硬件工作原理 428
13.2.4 系统软件开发流程及代码分析 429
13.2.5 小结 434
13.3 直流电动机调速器设计 434
13.3.1 系统功能定义及设计思路 434
13.3.2 ZGA28RQ型直流电动机简介 434
13.3.3 可编程定时器/计数器芯片8254简介 435
13.3.4 电动机驱动芯片L298简介 437
13.3.5 系统硬件工作原理 439
13.3.6 系统软件开发流程及代码分析 441
13.3.7 小结 447
第14章 单片机应用系统压力测量模块 448
14.1 压力测量简介 448
14.1.1 压力的基本概念 448
14.1.2 压力传感器的分类及工作原理 449
14.2 便携式高度计的设计 450
14.2.1 系统功能定义及设计思路 450
14.2.2 SCP1000-D01气体压力传感器简介 450
14.2.3 系统硬件工作原理 454
14.2.4 系统软件开发流程及代码分析 454
14.2.5 小结 461
14.3 多点水压巡回检测系统 461
14.3.1 系统功能定义及设计思路 461
14.3.2 ZP2100系列蓝宝石压力变送器简介 462
14.3.3 系统硬件工作原理 463
14.3.4 系统软件开发流程及代码分析 464
14.3.5 小结 471
第15章 单片机应用系统流量测量模块 472
15.1 概述 472
15.1.1 涡轮流量计 472
15.1.2 电磁流量计 473
15.1.3 明渠流量计 475
15.2 基于电磁流量计的管道流量检测系统 475
15.2.1 系统功能定义及设计思路 475
15.2.2 HR-LDG系列电磁流量传感器简介 476
15.2.3 系统硬件工作原理 478
15.2.4 系统软件开发流程及代码分析 478
15.2.5 小结 481
15.3 沟渠流量检测系统 482
15.3.1 系统功能定义及设计思路 482
15.3.2 基于位移传感的霍尔流量计简介 482
15.3.3 系统硬件工作原理 484
15.3.4 系统软件开发流程及代码分析 486
15.3.5 小结 492
第16章 单片机应用系统无线传输模块 493
16.1 概述 493
16.1.1 红外传输 493
16.1.2 蓝牙无线技术 495
16.1.3 GSM模块 496
16.1.4 非接触式IC卡 497
16.2 红外无线抄表系统 500
16.2.1 系统功能定义及设计思路 501
16.2.2 ZHX1010红外发射接收器简介 501
16.2.3 系统硬件工作原理 502
16.2.4 系统软件开发流程及代码分析 504
16.2.5 小结 516
16.3 野外温湿度遥测系统 517
16.3.1 系统功能定义及设计思路 517
16.3.2 SHT11温湿度传感器 517
16.3.3 TC35i GSM模块简介 522
16.3.4 AT指令与短信编码简介 525
16.3.5 系统硬件工作原理 527
16.3.6 系统软件开发流程及代码分析 529
16.3.7 小结 551
16.4 IC卡考勤机 552
16.4.1 系统功能定义及设计思路 552
16.4.2 ZLG500A 读卡模块简介 552
16.4.3 系统硬件工作原理 557
16.4.4 系统软件开发流程及代码分析 558
16.4.5 小结 578
第17章 单片机应用系统测距模块 579
17.1 概述 579
17.1.1 超声波测距技术 579
17.1.2 激光测距技术 580
17.1.3 红外测距技术 580
17.2 倒车雷达测距装置 581
17.2.1 系统功能定义及设计思路 581
17.2.2 SRF08型超声波测距模块简介 581
17.2.3 系统硬件工作原理 583
17.2.4 系统软件开发流程及代码分析 583
17.2.5 小结 588
17.3 小型机器人红外测距装置 588
17.3.1 系统功能定义及设计思路 588
17.3.2 GP2D12型红外测距传感器简介 588
17.3.3 MCP3001模数转换器简介 589
17.3.4 系统硬件工作原理 591
17.3.5 系统软件开发流程及代码分析 592
17.3.6 小结 596
第18章 单片机应用系统驱动隔离模块 597
18.1 单片机隔离模块设计 597
18.1.1 开关量的隔离 597
18.1.2 模拟信号隔离设计 598
18.1.3 专用RS-485/RS-422总线的隔离芯片 600
18.2 单片机驱动模块设计 601
18.2.1 单片机I/O端口的驱动能力 601
18.2.2 系统总线的驱动 602
18.2.3 继电器的驱动 602
18.2.4 其他驱动器件介绍 604
第19章 直流电子负载 607
19.1 系统功能描述及设计思路 607
19.1.1 系统功能描述 607
19.1.2 设计思路 607
19.2 硬件电路设计 608
19.3 系统软件开发流程及代码分析 611
19.3.1 软件流程 611
19.3.2 代码分析 611
19.4 小结 624
第20章 简易智能电动车 625
20.1 系统功能描述及设计思路 625
20.1.1 系统功能描述 625
20.1.2 设计思路 626
20.2 硬件电路设计 626
20.3 系统软件开发流程及代码分析 631
20.3.1 软件流程 631
20.3.2 代码分析 632
20.4 小结 643
第21章 实时数据采集分站 644
21.1 系统功能描述及设计思路 644
21.1.1 系统功能描述 644
21.1.2 设计思路 645
21.2 硬件电路设计 645
21.3 系统软件开发流程及代码分析 648
21.3.1 软件流程 648
21.3.2 代码分析 649
21.4 小结 658