第一部分 单片机基础知识篇 2
第1章 绪论 2
1.1 单片机技术发展趋势 2
1.2 单片机技术定义以及应用 3
1.2.1 单片机技术定义 3
1.2.2 单片机应用 3
1.3 单片机开发板简介 5
1.4 单片机学习方法 6
1.5 本章小结 6
第2章 KeilC51软件开发环境与ISP在线下载 7
2.1 Keil C51 μVision4软件介绍 7
2.2 Keil C51μVision4软件安装与卸载 7
2.2.1 Keil C51μVision4软件安装 7
2.2.2 Keil C51 μVision4软件卸载 11
2.3 Keil C51μVision4软件操作流程 13
2.3.1 Keil C51操作界面 13
2.3.2 Keil C51工程创建应用 18
2.4 ISP在线下载操作 26
2.5 本章小结 29
第3章 51单片机硬件系统及体系结构 30
3.1 单片机基本结构与引脚功能 30
3.1.1 单片机基本结构 30
3.1.2 单片机引脚功能 33
3.2 单片机存储器 35
3.2.1 程序存储器 35
3.2.2 数据存储器 35
3.3 单片机中断系统 37
3.3.1 中断定义 37
3.3.2 中断系统概述 38
3.3.3 中断控制 38
3.3.4 中断处理 41
3.4 单片机定时/计数系统 42
3.4.1 定时/计数器结构及工作原理 42
3.4.2 定时/计数器特殊控制寄存器TM0D、TCON 42
3.4.3 定时/计数器工作方式 44
3.5 单片机串行通信系统 47
3.5.1 串行通信结构与原理 47
3.5.2 串行控制与状态寄存器 47
3.5.3 串行通信工作方式 49
3.5.4 波特率设置 50
3.6 本章小结 51
第4章 51单片机C语言程序设计 52
4.1 C语言简介 52
4.2 数据结构 53
4.2.1 数据类型 53
4.2.2 常量与变量 54
4.3 运算符与表达式 56
4.3.1 运算符分类 56
4.3.2 算术运算符与表达式 56
4.3.3 关系运算符与表达式 57
4.3.4 逻辑运算符和表达式 57
4.3.5 赋值运算符和表达式 57
4.3.6 位运算符与表达式 58
4.4 函数使用 58
4.4.1 C语言程序的基本结构 58
4.4.2 函数定义 59
4.4.3 函数调用 60
4.4.4 函数的嵌套调用和递归调用 61
4.5 数组与指针 63
4.5.1 数组 63
4.5.2 指针 64
4.6 程序设计语句 66
4.6.1 选择语句 67
4.6.2 循环语句 69
4.6.3 转移语句 71
4.7 本章小结 72
第二部分 单片机基础案例实践篇 74
第5章 单个LED点亮项目 74
5.1 项目需求 74
5.2 项目工作原理分析 74
5.3 项目硬件电路设计 74
5.4 项目软件程序设计 75
5.5 系统调试结果总结 76
第6章 花样流水灯闪烁项目 78
6.1 项目需求 78
6.2 项目工作原理分析 78
6.3 项目硬件电路设计 79
6.4 项目软件程序设计 80
6.5 系统调试结果总结 82
第7章 单片机独立按键控制项目 83
7.1 项目需求 83
7.2 项目工作原理分析 83
7.3 项目硬件电路设计 83
7.4 项目软件程序设计 85
7.5 系统调试结果总结 88
第8章 单片机外部中断控制项目 89
8.1 项目需求 89
8.2 项目工作原理分析 89
8.3 项目硬件电路设计 90
8.4 项目软件程序设计 91
8.5 系统调试结果总结 92
第9章 数码显示技术项目 94
9.1 项目需求 94
9.2 项目工作原理分析 94
9.3 项目硬件电路设计 96
9.4 项目软件程序设计 97
9.4.1 数码管静态显示 97
9.4.2 数码管动态显示 99
9.5 系统调试结果总结 101
9.5.1 数码管静态显示调试结果 101
9.5.2 数码管动态扫描显示调试结果 101
第10章 单片机定时控制项目 102
10.1 项目需求 102
10.2 项目工作原理分析 102
10.3 项目硬件电路设计 103
10.4 项目软件程序设计 104
10.5 系统调试结果总结 106
第11章 单片机控制蜂鸣器项目 108
11.1 项目需求 108
11.2 项目工作原理分析 108
11.3 项目硬件电路设计 108
11.4 项目软件程序设计 109
11.5 系统调试结果总结 112
第12章 单片机串口通信项目 113
12.1 项目需求 113
12.2 项目工作原理分析 113
12.3 项目硬件电路设计 114
12.4 项目软件程序设计 117
12.5 系统调试结果总结 120
第13章 单片机实现4×4矩阵键盘控制项目 122
13.1 项目需求 122
13.2 项目工作原理分析 122
13.3 项目硬件电路设计 124
13.4 项目软件程序设计 126
13.5 系统调试结果总结 129
第14章 单片机实现字符型液晶显示项目 130
14.1 项目需求 130
14.2 项目工作原理 130
14.3 项目硬件电路设计 133
14.4 项目软件设计 133
14.5 项目调试 137
第15章 单片机实现步进电动机控制项目 138
15.1 项目需求 138
15.2 项目工作原理分析 138
15.3 项目硬件电路设计 140
15.4 项目软件设计 143
15.5 项目调试 145
第三部分 单片机综合案例实践篇 148
第16章 家用温湿度测量播报系统设计 148
16.1 项目背景和设计意义 148
16.1.1 项目背景 148
16.1.2 项目设计意义 149
16.2 项目方案论证和方案选择 149
16.2.1 项目方案论证 149
16.2.2 设计方案选择 149
16.3 家用温湿度测量播报系统原理及功能 150
16.3.1 家用温湿度测量播报系统工作原理 150
16.3.2 家用温湿度测量播报系统功能分析 150
16.4 家用温湿度测量播报系统硬件电路设计 151
16.4.1 单片机最小系统模块设计 151
16.4.2 温湿采集模块设计 152
16.4.3 液晶显示模块设计 154
16.4.4 语音播报模块设计 155
16.5 家用温湿度测量播报系统的软件实现 158
16.5.1 单片机控制主程序软件设计 159
16.5.2 温湿采集程序设计 160
16.5.3 LCD显示程序设计 161
16.5.4 语音播报程序设计 162
16.6 系统调试 163
16.6.1 软件调试 163
16.6.2 实物调试中遇到问题 164
16.7 总结 165
附件:设计的电路原理图 166
第17章 单片机实现智能充电器设计 167
17.1 项目背景和设计意义 167
17.1.1 项目背景 167
17.1.2 设计意义 168
17.2 设计总体方案 168
17.3 智能充电器实现原理及功能 169
17.3.1 智能充电器实现原理 169
17.3.2 智能充电器的功能分析 170
17.4 智能充电器硬件电路设计 170
17.4.1 单片机最小系统设计 170
17.4.2 充电控制模块设计 172
17.4.3 供电电压模块 173
17.5 智能充电器软件实现 174
17.5.1 单片机控制主程序设计 174
17.5.2 充电控制程序 175
17.5.3 串口发送数据 176
17.6 系统调试和结果分析 177
17.6.1 电路原理图设计 177
17.6.2 程序调试 177
17.6.3 程序下载 178
17.6.4 结果分析 178
17.6.5 系统调试中所遇到问题 178
17.7 总结 180
附件:设计的电路原理图 180
第18章 无线遥控开关系统设计 182
18.1 项目背景及意义 182
18.1.1 项目背景 182
18.1.2 设计意义 182
18.2 方案论证 182
18.2.1 设计方案一 182
18.2.2 设计方案二 183
18.2.3 方案比较与选择 183
18.3 无线遥控开关系统概述 184
18.3.1 工作原理 184
18.3.2 功能分析 184
18.4 无线遥控开关系统硬件设计 185
18.4.1 发射模块 185
18.4.2 无线遥控开关电路设计 187
18.5 无线遥控开关软件设计 192
18.5.1 开关无线接收程序设计 192
18.5.2 数码显示程序设计 193
18.6 系统调试 194
18.6.1 程序编译 194
18.6.2 程序下载 195
18.6.3 调试出现的问题 195
18.7 总结 196
附件:设计的电路原理图 196
第19章 融合物联感知与GSM的果园环境监测系统设计 198
19.1 项目说明 198
19.1.1 研究背景 198
19.1.2 研究现状 198
19.1.3 研究内容 199
19.2 果园环境监测系统方案设计 199
19.2.1 系统结构原理 199
19.2.2 系统功能分析 201
19.3 果园环境远程监测系统电路设计 201
19.3.1 单片机最小系统 201
19.3.2 现场端采集电路 202
19.3.3 GSMTC35i外围电路设计 204
19.4 果园环境监测系统现场感知端软件实现 207
19.4.1 主程序设计 207
19.4.2 现场端数据信息发送程序设计 208
19.4.3 现场端数据信息接收程序设计 209
19.5 系统测试 210
19.5.1 系统测试步骤 210
19.5.2 测试结果分析 211
19.6 结论 211
附件:果园现场数据采集端电路原理图 212
第20章 单片机实现电子密码锁设计 214
20.1 项目说明 214
20.1.1 项目背景 214
20.1.2 电子密码锁优点 215
20.1.3 研究内容 215
20.2 系统总体设计 216
20.2.1 系统工作原理 216
20.2.2 系统结构 216
20.3 系统硬件电路设计 217
20.3.1 AT89S52单片机最小系统设计 217
20.3.2 密码存储电路设计 218
20.3.3 4x4矩阵键盘模块设计 219
20.3.4 数码管显示电路设计 220
20.3.5 报警指示模块设计 220
20.3.6 电源模块电路设计 221
20.4 系统软件程序设计 222
20.4.1 主程序设计 222
20.4.2 串行EEPROM读写程序设计 223
20.4.3 4 x4矩阵键盘处理程序设计 226
20.5 系统调试总结 227
附件:系统设计的电路原理图 227
第21章 红外遥控电动机转速系统设计 229
21.1 项目说明 229
21.1.1 研究背景 229
21.1.2 研究内容 230
21.2 系统总体设计 230
21.2.1 系统结构 230
21.2.2 红外遥控器工作原理 230
21.2.3 步进电动机工作原理 232
21.3 系统硬件电路设计 233
21.3.1 单片机最小系统设计 233
21.3.2 红外遥控器模块设计 234
21.3.3 步进电动机模块设计 234
21.3.4 LCD显示模块设计 235
21.4 系统软件程序设计 236
21.4.1 主程序设计 236
21.4.2 红外遥控器解码程序设计 236
21.4.3 LCD显示程序 238
21.4.4 步进电动机控制程序 239
21.5 系统调试总结 241
附件:系统设计的电路原理图 241
第22章 智能小车自动寻迹系统设计 242
22.1 项目背景和研究内容 242
22.1.1 项目背景 242
22.1.2 研究内容 242
22.1.3 系统设计技术 242
22.2 系统电路设计 244
22.2.1 系统工作原理 244
22.2.2 系统硬件电路设计 244
22.3 系统软件设计 250
22.3.1 主程序设计 250
22.3.2 无线发射程序设计 251
22.3.3 数码管动态显示程序设计 252
22.4 系统调试 252
附件:系统设计的电路原理图 253
第23章 红外遥控风扇控制系统设计 256
23.1 项目说明 256
23.1.1 研究背景 256
23.1.2 研究方案 256
23.2 系统概述 257
23.3 系统硬件电路设计 257
23.3.1 AT89S52单片机最小系统设计 257
23.3.2 温度传感器电路设计 259
23.3.3 LCDl602显示模块设计 262
23.3.4 红外接收模块 263
23.3.5 电动机驱动模块设计 263
23.3.6 存储电路 264
23.4 系统软件设计 265
23.4.1 主程序设计 265
23.4.2 温度采集子程序设计 266
23.4.3 红外接收程序设计 267
23.4.4 LCD显示子程序设计 268
23.4.5 电动机驱动子程序设计 269
23.4.6 温度存储子程序设计 270
23.5 系统调试与总结 272
23.5.1 系统调试 272
23.5.2 系统总结 273
附件:系统设计的电路原理图 273
第24章 多功能微电脑模拟电子秤设计 275
24.1 项目说明 275
24.1.1 项目背景 275
24.1.2 设计总体方案论证 275
24.2 多功能微电脑电子秤实现原理 276
24.3 微电脑电子秤硬件电路设计 276
24.3.1 51单片机最小系统 276
24.3.2 键盘电路 278
24.3.3 ADC0809接口电路 279
24.3.4 数码显示电路 279
24.4 微电脑电子秤软件实现 281
24.4.1 主程序设计 281
24.4.2 键盘控制程序设计 282
24.4.3 显示程序设计 284
24.5 系统调试总结 285
附件:系统设计的电路原理图 285
参考文献 288