第1章 单片机概述 1
1.1 单片机的发展过程 1
1.1.1 单片机的概念 1
1.1.2 单片机的发展历程 2
1.2 单片机的应用领域 2
1.3 单片机的分类 3
1.3.1 按处理字长分类 3
1.3.2 按厂商与系列分类 4
1.3.3 按结构与封装形式分类 5
1.4 单片机的开发工具 7
1.4.1 单片机开发的基本流程 7
1.4.2 单片机编程语言 7
1.4.3 单片机编译与仿真调试软件 8
1.4.4 单片机编程器与下载线 8
1.5 练习题 9
第2章 单片机基础知识 10
2.1 单片机内部结构 10
2.1.1 CPU 10
2.1.2 通用寄存器 12
2.1.3 特殊功能寄存器 12
2.1.4 内部存储器 12
2.1.5 并行I/O端口 13
2.1.6 定时/计数器 14
2.1.7 串行通信口 16
2.2 单片机指令系统 18
2.2.1 单片机的寻址方式 18
2.2.2 单片机的指令类别 18
2.2.3 单片机的伪指令 20
2.3 单片机中断系统 20
2.3.1 中断系统 20
2.3.2 中断响应 22
2.4 编程语言及其对比 23
2.4.1 硬件资源使用上的对比 23
2.4.2 运算处理的对比 25
2.4.3 流程控制的对比 26
2.4.4 功能程序的对比 28
2.4.5 汇编语言与C1语言的混合编程 29
2.5 应用程序编写 30
2.5.1 编程基础知识 30
2.5.2 程序的设计 33
2.6 编译软件及使用 37
2.6.1 μVision的整体构成 37
2.6.2 μVision的基本使用方法 40
2.6.3 μVision的模拟测试 43
2.6.4 使用μVision进行混合编译 44
2.7 开发工具的使用 47
2.7.1 编程器及其使用 47
2.7.2 下载线及其使用 49
2.8 练习题 50
第3章 单片机最小系统构成及简单应用 51
3.1 AT89S51最小系统构成 51
3.1.1 最小系统构成 51
3.1.2 程序编写 52
3.2 AT89C2051最小构成 53
3.2.1 最小系统构成 53
3.2.2 程序编写 54
3.3 8031最小系统 54
3.3.1 最小系统构成 54
3.3.2 程序编写 55
3.4 单片机简单应用 56
3.4.1 发光二极管显示控制 56
3.4.2 蜂鸣器控制 61
3.4.3 继电器控制 62
3.5 练习题 64
第4章 存储器的扩展 65
4.1 存储器的分类及特点 65
4.1.1 RAM 65
4.1.2 ROM 66
4.1.3 串行传输存储器 67
4.1.4 存储器的扩展知识 72
4.2 程序存储器的扩展 72
4.2.1 EPROM2732的使用 73
4.2.2 E2PROM2864的使用 74
4.3 数据存储器的扩展 75
4.3.1 RAM2114的使用 75
4.3.2 RAM6264的使用 76
4.4 串行传输存储器的使用 77
4.4.1 AT24C02的使用 77
4.4.2 AT93C46的使用 81
4.5 练习题 87
第5章 显示接口设计 88
5.1 显示器件及其分类 88
5.1.1 LED数码管 88
5.1.2 LCD显示器 91
5.1.3 点阵式LED显示器件 93
5.1.4 光柱式LED显示器件 93
5.2 LED数码管接口设计 94
5.2.1 LED数码管并行接口设计 94
5.2.2 LED数码管串行接口设计 96
5.3 LCD显示接口设计 100
5.3.1 笔段式液晶显示接口 101
5.3.2 LCD1602的使用 103
5.3.3 LCD12864的使用 105
5.3.4 LCD3310的使用 109
5.4 点阵显示器接口设计 116
5.4.1 图线移动效果的实现 117
5.4.2 单字窗口的汉字显示 118
5.4.3 单字窗口的滚动字幕显示 121
5.4.4 双汉字显示窗口 123
5.5 练习题 126
第6章 键盘接口设计 127
6.1 按键的分类 127
6.1.1 按键的种类划分 127
6.1.2 键入处理技术 128
6.2 独立式按键的应用设计 129
6.2.1 独立式按键的工作原理及特点 129
6.2.2 独立式按键的程序设计 129
6.3 散列式按键的应用设计 131
6.3.1 散列式按键的工作原理及特点 131
6.3.2 散列式按键的程序设计 131
6.4 阵列式按键应用 133
6.4.1 阵列式按键的硬件设计 133
6.4.2 阵列式按键的接口设计 134
6.5 标准键盘接口设计 143
6.5.1 标准键盘的工作原理及特点 144
6.5.2 标准键盘程序设计 144
6.6 练习题 148
第7章 I/O接口扩展 149
7.1 8155的使用 149
7.1.1 8155的基础知识 149
7.1.2 8155的应用 152
7.2 8255的使用 155
7.2.1 8255的基础知识 155
7.2.2 8255的应用 158
7.3 练习题 162
第8章 定时/计数器及其应用 163
8.1 单片机内部定时/计数器的使用 163
8.1.1 定时/计数器的用法 163
8.1.2 电子音乐演奏原理 168
8.1.3 演奏功能的实现 172
8.1.4 电子琴制作 174
8.2 定时/计数器8253的使用 176
8.2.1 8253的内部构造 177
8.2.2 8253的应用 178
8.3 DS1302实时时钟芯片的使用 180
8.4 练习题 186
第9章 数/模与模/数转换接口设计 187
9.1 数/模转换接口 187
9.1.1 DAC0832的使用 187
9.1.2 AD7521的使用 191
9.2 模/数转换接口 192
9.2.1 ADC0809的使用 193
9.2.2 ADC574的使用 195
9.2.3 AD650的使用 197
9.2.4 5G14433的使用 200
9.3 串行传输数/模转换器与模/数转换器的使用 202
9.3.1 PCF8591的使用 202
9.3.2 ADC0832的使用 208
9.4 练习题 210
第10章 串行通信设计 211
10.1 串行通信基础知识 211
10.1.1 串行通信基础知识 211
10.1.2 串行口的使用 216
10.2 单片机间通信 217
10.2.1 双机通信 217
10.2.2 多机通信 220
10.3 单片机与PC间的通信 226
10.3.1 PC通信 226
10.3.2 单片机与PC间的通信 231
10.4 单片机与智能仪器设备间的通信 235
10.4.1 Modbus协议 235
10.4.2 与温控仪通信 238
10.4.3 与PLC通信 245
10.5 远程通信 251
10.5.1 使用MT8880通信 251
10.5.2 以太网通信 258
10.6 练习题 259
第11章 单片机系统设计与开发 260
11.1 单片机系统的设计 260
11.1.1 设计流程及原则 260
11.1.2 软硬件设计 261
11.1.3 调试与抗干扰 262
11.2 单片机的开发工具及其制备 263
11.2.1 实验环境准备 263
11.2.2 实验装置制备 264
11.2.3 写入装置的制备 265
11.3 电路设计与制作 266
11.3.1 原理图绘制 267
11.3.2 PCB板图生成 268
11.4 练习题 269
第12章 输入/输出通道与功率驱动接口设计 270
12.1 光电隔离的工作原理及应用 270
12.1.1 光电隔离的工作原理 270
12.1.2 光电隔离器应用设计 271
12.2 功率晶体管工作原理及应用 272
12.2.1 功率晶体管工作原理 272
12.2.2 功率晶体管应用 273
12.3 继电器工作原理及应用 274
12.3.1 电磁继电器基本原理 274
12.3.2 固态继电器基本原理 275
12.3.3 双路继电器基本原理 277
12.4 PWM工作原理及应用 278
12.4.1 PWM工作原理 278
12.4.2 产生PWM的方法 279
第13章 温度控制系统设计 282
13.1 浴室锅炉温度控制系统 282
13.1.1 控制系统工作原理 282
13.1.2 信号采样及处理 283
13.1.3 控制电路原理 284
13.1.4 控制软件设计 287
13.2 智能水温监控系统 294
13.2.1 控制系统工作原理 294
13.2.2 信号采样及处理 294
13.2.3 控制电路原理 295
13.2.4 控制模块软件设计 296
第14章 电机控制系统设计 305
14.1 电机分类及其工作原理 305
14.2 常用电机控制技术 306
14.2.1 直流斩波技术 306
14.2.2 脉宽调制技术 308
14.3 直流电机控制系统设计 309
14.3.1 直流电机的控制原理 309
14.3.2 电机驱动电路原理图 310
14.3.3 直流电机驱动程序 314
14.4 步进电机控制系统设计 318
14.4.1 步进电机的控制原理 318
14.4.2 步进电机驱动电路 321
14.4.3 步进电机控制程序分析 322
第15章 定时闹铃系统设计 325
15.1 闹铃系统工作原理 325
15.1.1 时钟芯片特点 325
15.1.2 液晶显示模块设计 328
15.2 控制电路图 330
15.3 控制软件设计 331
15.4 系统操作说明 347
第16章 遥控小车控制系统 348
16.1 遥控小车系统结构 348
16.2 遥控车工作原理 349
16.2.1 发射电路设计 349
16.2.2 接收电路设计 352
16.2.3 电机控制电路 353
16.3 控制软件设计 354
16.3.1 发送部分子程序 354
16.3.2 接收部分子程序 357
第17章 数字信号发生器设计 363
17.1 信号发生器的工作原理与结构 363
17.1.1 信号发生器的工作原理 363
17.1.2 信号发生器的结构 364
17.2 硬件电路设计及原理 364
17.2.1 MAX038芯片介绍 364
17.2.2 硬件电路设计 366
17.2.3 其他电路设计 369
17.3 控制软件及其流程 371
17.3.1 总体软件流程图 371
17.3.2 MAX038控制程序 373
17.3.3 其他部分程序 376
17.4 系统运行状态分析 379
17.4.1 方波的输出效果 379
17.4.2 三角波的输出效果 379
17.4.3 正弦波的输出效果 380
17.4.4 结果分析 381
第18章 雨刮测试系统设计 382
18.1 雨刮测试系统的结构 382
18.2 USB通信技术 383
18.2.1 USB通信技术基本原理 383
18.2.2 USB芯片 385
18.3 控制电路设计 386
18.3.1 USB通信电路 386
18.3.2 控制模块电路 388
18.3.3 测试模块电路 389
18.3.4 串口通信电路 389
18.4 控制软件设计 390
18.4.1 键盘子程序 391
18.4.2 USB通信子程序 395
18.4.3 电机控制子程序 405
18.4.4 电流检测子程序 407
18.5 系统调试 409
18.5.1 系统测试平台结构 409
18.5.2 系统测试方案 410
18.5.3 系统测试过程 411