项目一 点亮一个发光二极管 1
1.1 项目说明 1
1.2 基础知识 1
1.2.1 微型计算机的硬件系统 1
1.2.2 单片机结构 5
1.2.3 数制及转换 13
1.2.4 51单片机存储器的扩展 14
1.2.5 C51基础 16
1.3 项目实施 24
1.3.1 硬件设计方案 24
1.3.2 软件设计方案 26
1.3.3 程序调试 29
1.4 项目评价 39
1.5 拓展与提高 40
习题 40
项目二 霓虹灯控制系统 43
2.1 项目说明 43
2.2 基础知识 43
2.2.1 C51变量 43
2.2.2 C51的运算符与表达式 49
2.2.3 C51语句 53
2.2.4 C51函数 57
2.2.5 一个发光二极管的闪烁 60
2.2.6 流水灯 64
2.3 项目实施 74
2.3.1 硬件设计方案 74
2.3.2 软件设计方案 74
2.3.3 程序调试 75
2.4 项目评价 76
2.5 拓展与提高 77
习题 80
项目三 数码管显示电路 82
3.1 项目说明 82
3.2 基础知识 82
3.2.1 if语句 82
3.2.2 数码管结构 86
3.2.3 数码管显示方式 88
3.3 项目实施 93
3.3.1 硬件设计方案 93
3.3.2 软件设计方案 94
3.3.3 程序调试 100
3.4 项目评价 102
3.5 拓展与提高 103
习题 105
项目四 键盘原理及应用 107
4.1 项目说明 107
4.2 基础知识 107
4.2.1 break语句和continue语句 107
4.2.2 switch语句 108
4.2.3 按键和键盘 109
4.2.4 独立式键盘的按键识别与应用 110
4.2.5 矩阵式键盘的按键识别与应用 117
4.3 项目实施 121
4.3.1 硬件设计方案 121
4.3.2 软件设计方案 121
4.3.3 程序调试 127
4.4 项目评价 128
4.5 拓展与提高 129
习题 135
项目五 中断系统及其应用 138
5.1 项目说明 138
5.2 基础知识 138
5.2.1 中断概述 138
5.2.2 51单片机中断系统 141
5.2.3 中断初始化 144
5.2.4 中断服务函数的定义 144
5.2.5 应用举例 145
5.3 项目实施 148
5.3.1 硬件设计方案 148
5.3.2 软件设计方案 149
5.3.3 程序调试 152
5.4 项目评价 153
5.5 拓展与提高 154
习题 157
项目六 99 s倒计时 160
6.1 项目说明 160
6.2 基础知识 160
6.2.1 定时/计数器概述 160
6.2.2 定时/计数器的控制 162
6.2.3 定时/计数器的工作方式 163
6.2.4 定时/计数器的应用 165
6.3 项目实施 171
6.3.1 硬件设计方案 171
6.3.2 软件设计方案 172
6.3.3 程序调试 174
6.4 项目评价 175
6.5 拓展与提高 176
习题 180
项目七 液晶显示器及其应用 182
7.1 项目说明 182
7.2 基础知识 182
7.2.1 液晶显示器概述 182
7.2.2 LCD1602简介 183
7.2.3 LCD1602应用举例 187
7.3 项目实施 194
7.3.1 硬件设计方案 194
7.3.2 软件设计方案 194
7.3.3 程序调试 198
7.4 项目评价 199
7.5 拓展与提高 200
习题 207
项目八 串行口通信 209
8.1 项目说明 209
8.2 基础知识 209
8.2.1 串行通信概述 209
8.2.2 51单片机串行口简介 213
8.2.3 串行通信工作方式 215
8.2.4 51单片机串行口波特率的设置 217
8.2.5 双机通信和多机通信 219
8.2.6 串行口初始化 221
8.2.7 串行口应用举例 222
8.3 项目实施 224
8.3.1 硬件设计方案 224
8.3.2 软件设计方案 225
8.3.3 程序调试 229
8.4 项目评价 230
8.5 拓展与提高 231
8.5.1 串行扩展概述 231
8.5.2 I2C总线 234
习题 242
项目九 D/A和A/D转换 244
9.1 项目说明 244
9.2 基础知识 244
9.2.1 C51指针 244
9.2.2 绝对地址的访问 247
9.2.3 D/A与A/D转换概述 249
9.2.4 D/A转换原理及性能指标 250
9.2.5 DAC0832及其应用 253
9.2.6 A/D转换原理及性能指标 256
9.2.7 ADC0809及其应用 261
9.2.8 PCF8591及其应用 268
9.3 项目实施 280
9.3.1 硬件设计方案 280
9.3.2 软件设计方案 281
9.3.3 程序调试 282
9.4 项目评价 283
9.5 拓展与提高 284
习题 284
项目十 基于51单片机的时钟 287
10.1 项目说明 287
10.2 基础知识 287
10.2.1 显示部分 288
10.2.2 计时部分 290
10.2.3 校时部分 293
10.3 项目实施 298
10.3.1 硬件设计方案 298
10.3.2 软件设计方案 299
10.3.3 程序调试 302
10.4 项目评价 303
10.5 拓展与提高 304
习题 309
参考文献 311