模块1 单片机结构及开发设计流程 2
项目1.1 用单片机最小控制系统实现LED发光二极管闪烁 2
项目目标 2
项目要求 2
硬件设计 2
知识点1:AT89S51芯片的引脚及型号的含义 4
知识点2:AT89S51的引脚功能 5
知识点3:单片机基本电路的设计方法与连接 6
知识点4:发光二极管工作原理 7
软件设计 8
程序清单 8
知识点5:程序(下称源程序)的格式和书写原则 8
项目实施 9
能力训练 10
并行输入输出接口的结构和功能 10
项目1.2 单片机开发设计常用的工具软件 14
1.2.1 Keil C51仿真软件的应用 14
项目目标 14
项目要求 14
项目实施 14
能力训练 22
1.2.2 仿真软件Proteus的应用 22
项目目标 22
项目要求 22
项目实施 23
能力训练 29
1.2.3 USB ISP下载器的使用方法 29
项目目标 30
项目要求 30
项目实施 30
能力训练 32
模块2 单片机指令系统的应用 34
项目2.1 汇编语言程序设计基础 34
项目目标 34
项目要求 34
项目分析 34
知识点1:程序存储器 35
知识点2:数据存储器 36
知识点3:特殊功能寄存器SFR 38
知识点4:寻址方式的认识 42
项目实施 44
能力训练 47
项目2.2 汇编指令在跑马灯控制中的应用 48
项目目标 48
项目要求 48
硬件设计 48
软件设计 49
知识点1:片内数据存储器数据传送类指令 53
知识点2:循环移位指令 54
知识点3:无条件转移指令 55
知识点4:循环转移指令 56
知识点5:空操作指令 56
程序清单 57
项目实施 57
能力训练 58
项目2.3 汇编指令在彩灯控制中的应用 58
项目目标 58
项目要求 58
硬件设计 59
软件设计 59
知识点1:判位转移指令 65
知识点2:子程序调用与返回指令 66
知识点3:逻辑与指令 67
知识点4:比较不等则转移指令 68
知识点5:逻辑或指令 68
知识点6:逻辑异或指令 69
程序清单 70
项目实施 71
能力训练 72
项目2.4 汇编指令在灯光报警中的应用 72
项目目标 72
项目要求 72
硬件设计 72
软件设计 73
知识点1:不带进位的加法指令 76
知识点2:带进位的加法指令 77
知识点3:累加器清零和取反指令 78
知识点4:位操作指令 78
知识点5:带借位减法指令 80
程序清单 81
项目实施 81
能力训练 82
模块3 单片机内部三大功能的应用 84
项目3.1 中断系统在交通灯应急控制中的应用 84
项目目标 84
项目要求 84
硬件设计 85
知识点1:中断的相关概念 86
知识点2:中断源 86
软件设计 87
知识点3:中断入口地址 89
知识点4:中断系统内部结构 89
知识点5:定时/计数器控制寄存器(TCON) 89
知识点6:串行口控制寄存器(SCON) 90
知识点7:中断允许控制寄存器(IE) 91
知识点8:中断优先级控制寄存器(IP) 91
知识点9:堆栈操作指令 93
知识点10:中断返回指令 94
程序清单 94
项目实施 97
能力训练 97
CPU处理中断的过程 97
项目3.2 定时/计数器在音乐程序设计中的应用 100
项目目标 100
项目要求 100
硬件设计 100
软件设计 101
知识点1:定时/计数器 105
知识点2:定时/计数器方式控制寄存器(TMOD) 106
知识点3:定时/计数器控制寄存器(TCON) 107
知识点4:定时/计数器的初值设置 107
知识点5:定时/计数器的初始化 108
程序清单 110
项目实施 112
能力训练 112
项目3.3 串行口在双机数据通信中的应用 115
项目目标 115
项目要求 115
硬件设计 115
知识点1:串行口异步通信 116
软件设计 117
知识点2:串行口结构 119
知识点3:串行口的工作方式1 120
程序清单 122
项目实施 123
能力训练 124
同步通信 124
串行口的其他工作方式 124
模块4 单片机基本接口电路的应用 128
项目4.1 键盘接口电路在密码锁控制器中的应用 128
项目目标 128
项目要求 128
硬件设计 128
知识点1:行列式键盘电路的结构及原理 129
软件设计 130
知识点2:行列式键盘的工作方式——循环扫描方式 132
程序清单 134
项目实施 137
能力训练 137
中断工作方式 138
项目4.2 数码管动态显示在数字电子钟设计中的应用 139
项目目标 139
项目要求 139
硬件设计 140
知识点1:LED数码管的结构与原理 141
软件设计 142
知识点2:LED动态显示方式 149
程序清单 150
项目实施 154
能力训练 155
项目4.3 模数转换器在数字电压表设计中的应用 155
项目目标 155
项目要求 155
硬件设计 155
知识点1:ADC0809芯片简介 157
知识点2:ADC0809与8051系列单片机的接口 159
软件设计 159
程序清单 162
项目实施 166
能力训练 166
项目4.4 数模转换器在信号发生器中的应用 166
项目目标 167
项目要求 167
硬件设计 167
知识点1:DAC0832内部结构及引脚 168
知识点2:DAC0832的工作方式之一——单缓冲方式 170
DAC0832的其他工作方式 171
软件设计 172
程序清单 173
知识点3:送DAC转换 175
项目实施 175
能力训练 175
附录 176
附录A 80C51指令表 176
附录B 51单片机的伪指令 182
附录C Proteus常用库元器件 185
附录D 51单片机的基本时序单位 188
参考文献 190