第1章 点亮发光二极管 1
1.1 任务分析 1
1.2 知识链接 2
1.2.1 认识单片机 2
1.2.2 单片机的基本组成 7
1.3 任务实施 11
1.3.1 单片机最小应用系统的组成 11
1.3.2 单片机控制发光二极管 16
1.3.3 C51程序基本框架 26
1.4 巩固练习 29
第2章 玩转流水灯 31
2.1 任务分析 31
2.2 知识链接 33
2.2.1 位操作与字节操作 33
2.2.2 数制基本知识 39
2.2.3 闪烁的实现 40
2.2.4 延时子函数的使用 43
2.2.5 循环语句的使用 48
2.2.6 数组的使用 50
2.3 任务实施 53
2.4 巩固练习 55
第3章 按键检测 57
3.1 任务分析 57
3.2 知识链接 58
3.2.1 按键电路设计 58
3.2.2 按键检测原理 58
3.2.3 按键检测的C语言实现 60
3.2.4 if语句 62
3.2.5 switch语句 65
3.3 任务实施 66
3.3.1 电路原理图设计 67
3.3.2 变量定义与处理 67
3.3.3 模块化编程 69
3.4 巩固练习 70
第4章 一触即发——外部中断 72
4.1 任务分析 72
4.2 知识链接 74
4.2.1 中断的基本概念 74
4.2.2 8051中断系统 75
4.2.3 外部中断 77
4.3 任务实施 82
4.3.1 电路原理图设计 82
4.3.2 模块化编程 82
4.4 巩固练习 84
第5章 定时器/计数器 86
5.1 任务分析 86
5.2 知识链接 87
5.2.1 定时器的本质 87
5.2.2 定时器/计数器寄存器 88
5.2.3 定时器功能框图 92
5.2.4 数码管显示 93
5.3 任务实施 95
5.3.1 电路原理图设计 95
5.3.2 模块化编程 96
5.4 巩固练习 100
第6章 彼此沟通——串口 105
6.1 任务分析 105
6.2 知识链接 108
6.2.1 串行口介绍 108
6.2.2 四种工作方式 109
6.2.3 波特率的设置 110
6.2.4 RI和TI的处理 113
6.3 任务实施 114
6.3.1 电路原理图设计 114
6.3.2 模块化编程 115
6.4 巩固练习 117
第7章 简易数字式电压表 118
7.1 任务分析 118
7.2 知识链接 119
7.2.1 A-D模块 119
7.2.2 多位数码管显示 125
7.3 任务实施 127
7.3.1 硬件电路设计 127
7.3.2 模块化编程 128
7.4 巩固练习 131
附录 133
附录A 逻辑代数基础 133
A.1 数制与编码 133
A.2 几种常用的逻辑运算及其图形符号 138
附录B C51基础知识 142
B.1 C51中的关键字 142
B.2 C51编译器的扩展关键字 143
B.3 常用运算符的范例与说明 144
B.4 常用运算符的优先级和结合性 145
B.5 存储类型关键字与说明 145
B.6 常用数据类型 145
附录C STC15系列单片机特殊功能寄存器一览表 147