第1章 单片机概述 1
1.1 单片机简介 1
1.1.1 单片机的发展概况 1
1.1.2 单片机的发展历史 1
1.1.3 单片机的发展趋势 2
1.1.4 单片机的结构 2
1.1.5 单片机的结构类型 3
1.2 单片机的特点及其应用 3
1.2.1 单片机的特点介绍 3
1.2.2 单片机的应用 4
1.3 单片机的分类 4
1.3.1 CISC与RISC单片机的对比 4
1.3.2 CISC与RISC单片机的用途 4
1.3.3 数字信号处理器 5
1.3.4 基于ARM芯核的32位单片机 5
1.4 品牌单片机简介 6
1.4.1 Intel公司的MCS-51系列 6
1.4.2 Atmel公司的AT89系列 6
1.4.3 Philips公司的增强型80C51系列和LPC系列 7
1.4.4 Atmel公司的AVR系列单片机 7
第2章 单片机C语言基础 9
2.1 C51语言简介 9
2.1.1 C51语言的特有数据类型 10
2.1.2 常量数据类型 10
2.1.3 C51的变量及其数据存储类型 11
2.2 C51语言的运算符与表达式 12
2.2.1 算术运算符 12
2.2.2 赋值运算符 13
2.2.3 关系运算符 13
2.2.4 逻辑运算符 13
2.2.5 C51位操作及其表达式 14
2.3 C51语言的函数 15
2.3.1 C51函数概述 15
2.3.2 C51中断函数 16
2.4 闪烁灯的设计 17
2.4.1 设计需求 17
2.4.2 程序设计 17
2.4.3 源程序 18
2.5 I/O并行口直接驱动共阴数码管显示 19
2.5.1 设计需求 19
2.5.2 程序设计 20
2.5.3 源程序 21
2.6 多路开关状态指示设计 22
2.6.1 设计需求 22
2.6.2 程序设计 23
2.6.3 源程序 23
2.7 T0作定时使用技术设计 26
2.7.1 设计需求 26
2.7.2 程序设计 27
2.7.3 源程序 27
2.8 报警声 31
2.8.1 设计需求 32
2.8.2 程序设计方法 32
2.8.3 源程序 33
第3章 城市公交车无线自动报站系统 35
3.1 报站系统的需求调研 35
3.1.1 前期调研 35
3.1.2 GPS定位系统公交报站的原理 36
3.2 硬件电路分析 36
3.2.1 单片机小系统 37
3.2.2 编码设置电路 37
3.2.3 无线数据收发模块 37
3.3 数据接收、语音报站系统(车载系统) 38
3.3.1 无线数据接收模块 38
3.3.2 单片机小系统 39
3.3.4 语音录放电路连接和调试 40
3.3.5 功放电路介绍 41
3.3.6 显示电路 41
3.4 软件分析 43
3.4.1 程序流程图 43
3.4.2 ISD4004语音录放子程序 44
3.5 系统功能测试与比较 48
第4章 超声波雾化器的智能控制系统 50
4.1 系统功能设计要求 50
4.1.1 系统设计优点 50
4.1.2 各种加湿器优缺点分析 50
4.2 系统设计 51
4.2.1 系统功能设计要求 51
4.2.2 系统总体框图设计 51
4.2.3 系统工作原理 52
4.3 硬件电路设计 53
4.3.1 单片机小系统 53
4.3.2 超声波雾化器 53
4.3.3 雾化器电路工作原理 53
4.3.4 温度测量系统 54
4.4 湿度测量系统 60
4.4.1 湿度传感器 60
4.4.2 A/D转换 60
4.4.3 水位控制电路 61
4.4.4 键盘显示电路 62
4.4.5 加热电路 63
4.4.6 指示部件 63
4.4.7 控制部件 63
4.5 软件结构与部分程序清单 63
4.5.1 程序结构分析 64
4.5.2 主程序流程图 64
4.5.3 DS18B20程序分析 65
4.6 系统功能测试及产品功能比较 67
4.6.1 本系统与同类产品功能比较 67
4.6.2 使用说明 68
4.6.3 系统外观平面图 68
第5章 住宅公用路灯用电量自动分配装置设计 69
5.1 系统方案分析及原理 69
5.1.1 系统总体方案分析 69
5.1.2 系统设计原理 70
5.2 系统硬件电路设计 71
5.2.1 主系统设计 71
5.2.2 硬件系统设计分析 72
5.2.3 继电器电路设计 72
5.2.4 供电电源电路分析 73
5.2.5 分配装置的应用示例 73
5.3 可靠性问题 73
5.3.1 把关定时器电路 73
5.3.2 保证长期运行须考虑的安全性问题 74
5.4 系统软件设计 74
5.4.1 软件结构 74
5.4.2 程序说明 75
5.4.3 源程序 75
5.5 结论 78
第6章 一种输出可调智能开关稳压电源设计 79
6.1 开关稳压电源的作用 79
6.2 设计要求 79
6.3 实例原理 80
6.4 元器件分析 80
6.4.1 AT89S52微控制器 80
6.4.2 SG3525脉宽调制型控制器 83
6.4.3 其他元器件的介绍 84
6.5 方案选择 84
6.5.1 DC-DC主回路设计方案及方案选择 85
6.5.2 控制方法的选择 85
6.5.3 提高效率的方法及论证 86
6.6 硬件电路设计 86
6.6.1 主回路硬件电路 86
6.6.2 PWM控制电路 87
6.6.3 保护电路 87
6.6.4 显示电路 88
6.6.5 系统总硬件电路 88
6.7 软件设计 89
6.7.1 程序流程图 89
6.7.2 源程序 90
6.8 运行情况与分析 101
第7章 单片机温度控制系统 104
7.1 温度检测控制系统选型分析 104
7.1.1 总体方案选择 104
7.1.2 方案设计 105
7.1.3 温度传感器选型 105
7.2 硬件电路 106
7.2.1 CPU电路 106
7.2.2 按键显示电路 106
7.2.3 电源电路 107
7.2.4 加热控制电路 108
7.2.5 温度采集电路 109
7.3 主要器件介绍 109
7.3.1 AT89S51型号CPU 109
7.3.2 智能温度传感器DS18B20 111
7.3.3 5V继电器 113
7.3.4 TL431 113
7.3.5 HD7279A智能显示驱动芯片 114
7.4 软件设计 115
7.4.1 主循环程序 116
7.4.2 读/写传感器DS18B20程序 122
7.5 调试与运行分析 125
第8章 智能数字显示交流毫伏表 127
8.1 引言 127
8.2 设计要求 127
8.3 系统方案选择和论证 128
8.4 总体设计方案 129
8.5 系统硬件设计 130
8.6 测量部分 131
8.6.1 控制器模块 131
8.6.2 放大及A/D转换电路 132
8.6.3 测量显示电路 133
8.7 输出部分 134
8.7.1 控制单元电路 134
8.7.2 信号产生电路(DDS电路) 135
8.7.3 放大电路 136
8.7.4 滤波电路 137
8.7.5 显示电路 137
8.8 基本电路部分 138
8.9 稳压电源部分 139
8.10 外围辅助电路 139
8.11 系统软件设计 140
8.12 程序设计 140
8.13 系统测试 143
8.13.1 测试仪器选择 143
8.13.2 测试过程 144
8.13.3 结果分析 144
第9章 基于单片机原理改进的“自动结鞭机”设计 147
9.1 概述 147
9.2 改进“自动结鞭机”的硬件设计 148
9.2.1 AT89S51微控制器 148
9.2.2 信号接收电路分析 149
9.2.3 控制电路及整流电路 149
9.2.4 数码显示电路分析 150
9.2.5 系统总体电路图 151
9.3 改进“自动结鞭机”的软件设计 152
9.3.1 改进的“自动结鞭机”的软件框架 152
9.3.2 源程序 153
9.4 系统调试与实际测试 164
第10章 基于AT89C51的风力发电偏航控制系统 165
10.1 实例原理及背景 165
10.2 偏航控制系统基本原理 165
10.2.1 相关知识提示:偏航装置简介 166
10.2.2 设计任务 167
10.3 系统方案论证 167
10.3.1 控制器模块 168
10.3.2 电动机的选择 169
10.3.3 驱动及调速方案 171
10.3.4 偏差角度(位置)采集方案 171
10.3.5 抗干扰电路 171
10.3.6 机械传动机构和执行元件 171
10.4 系统硬件设计 172
10.4.1 系统电路连接及硬件资源分配 172
10.4.2 系统各模块单元电路设计 172
10.5 系统软件设计 177
10.5.1 理论分析与计算 177
10.5.2 源程序 179
第11章 家电遥控器系统 186
11.1 遥控系统概述 186
11.1.1 红外通信的原理 186
11.1.2 红外遥控系统的构成 186
11.2 系统设计 187
11.3 部分元器件介绍 187
11.3.1 AT89C51简介 187
11.3.2 SM0038简介 190
11.4 遥控器硬件设计 190
11.4.1 遥控发射器的编码 190
11.4.2 遥控发射器电路的设计 191
11.4.3 遥控接收器设计 191
11.5 遥控器软件设计 192
11.5.1 程序流程图 192
11.5.2 按键说明 193
11.5.3 源程序 193
11.6 系统调试 198
11.6.1 调试方法 198
11.6.2 调试仪器 198
11.6.3 调试步骤 199
11.7 调试中常见故障与处理 200
11.7.1 故障诊断法 200
11.7.2 常见故障原因 200
第12章 智能时钟系统 201
12.1 系统概述 201
12.2 系统总体方案 202
12.3 主要器件介绍及功能实现 203
12.3.1 Atmel公司的AT89C51单片机 203
12.3.2 LED显示及显示器接口 203
12.3.3 计时功能的实现 205
12.4 系统硬件电路 206
12.5 系统软件设计 209
12.5.1 程序流程图 209
12.5.2 程序设计 209
第13章 Proteus开发环境的使用 216
13.1 Proteus的学习 216
13.1.1 Proteus的安装 216
13.1.2 Proteus界面简介 216
13.1.3 操作简介 218
13.2 多个小示例设计 220
13.2.1 闪烁灯的设计 220
13.2.2 多路开关状态指示 227
13.2.3 I/O并行口直接驱动LED显示 230
13.2.4 定时计数器T0作定时应用技术 232
13.2.5 “嘀嘀”报警声 233
附录A 89S51指令表 235
附录B ASCII码表 239
参考文献 240