第1章 绪论 1
1.1 单片机发展概况 1
1.1.1 单片机的发展历史 1
1.1.2 单片机的发展趋势 2
1.2 单片机的结构 3
1.2.1 计算机硬件系统组成 3
1.2.2 微型计算机结构特点 4
1.2.3 运算器 5
1.2.4 控制器 6
1.2.5 存储器 6
1.2.6 输入/输出接口电路 8
1.2.7 单片机的内部结构 11
1.3 单片机软件基础 12
1.3.1 微型计算机数制 12
1.3.2 微型计算机数制间数的转换 14
1.4 8位单片机的主要生产厂商和机型 16
1.4.1 单片机主要厂商 16
1.4.2 单片机主要产品 17
1.5 单片机的应用 19
1.6 练习题 20
第2章 单片机的结构和原理 21
2.1 总体概述 21
2.1.1 主要特性 21
2.1.2 内部结构 22
2.1.3 引脚图和逻辑符号图 23
2.2 中央处理器 26
2.2.1 运算器 26
2.2.2 定时控制部件 26
2.2.3 专用寄存器组 27
2.3 存储器 30
2.3.1 程序存储器 31
2.3.2 内部数据存储器 32
2.3.3 位存储器 32
2.3.4 特殊功能寄存器SFR 33
2.3.5 外部RAM 35
2.4 时序及时钟电路 36
2.4.1 时钟电路 36
2.4.2 CPU时序 36
2.5 单片机工作方式 39
2.5.1 复位方式 39
2.5.2 程序执行方式 39
2.5.3 CHMOS型单片机低功耗工作方式 40
2.5.4 编程和校验方式 41
2.6 单片机的输入/输出端口 41
2.6.1 并行输入/输出端口 41
2.6.2 串行输入/输出端口 44
2.7 练习题 46
第3章 MCS-51单片机指令系统 48
3.1 概述 48
3.1.1 基本概念 48
3.1.2 MCS-51系列单片机的指令系统 49
3.1.3 MCS-51系列单片机的指令类型 50
3.1.4 指令中的常用符号 50
3.2 寻址方式 51
3.2.1 寄存器寻址方式 52
3.2.2 寄存器间接寻址 52
3.2.3 立即寻址 53
3.2.4 直接寻址 53
3.2.5 基址寄存器+变址寄存器的间接寻址 54
3.2.6 相对寻址 54
3.2.7 位寻址 55
3.3 指令系统分类介绍 55
3.3.1 数据传送类指令 55
3.3.2 算术操作类指令 61
3.3.3 逻辑操作类指令 66
3.3.4 位操作指令 69
3.3.5 程序转移类指令 72
3.4 上机实验——80C51程序设计实验 77
3.5 练习题 77
第4章 汇编语言程序设计 79
4.1 汇编语言程序概述 79
4.1.1 程序设计语言 79
4.1.2 汇编语言格式 80
4.1.3 汇编语言构成 83
4.1.4 汇编语言程序的汇编 86
4.2 简单程序设计 89
4.3 循环程序设计 91
4.4 分支程序设计 96
4.5 子程序设计 100
4.6 程序设计举例 104
4.6.1 查表程序 104
4.6.2 算术运算程序 107
4.6.3 数字滤波程序 110
4.6.4 定时应用程序 110
4.7 上机实验 111
4.7.1 多分支程序 111
4.7.2 拆字程序 112
4.8 练习题 113
第5章 半导体存储器 115
5.1 半导体存储器基础 115
5.1.1 半导体存储器的分类 115
5.1.2 半导体存储器的基本结构 117
5.2 随机存取存储器 119
5.2.1 RAM的基本结构 119
5.2.2 静态RAM基本存储电路 122
5.2.3 动态RAM基本存储电路 123
5.2.4 RAM储存器举例 124
5.3 只读存储器 128
5.3.1 ROM的基本结构 128
5.3.2 掩膜ROM存储器原理 130
5.3.3 PROM存储器原理 131
5.3.4 EPROM存储器原理 132
5.3.5 ROM存储器举例 134
5.4 MCS-51和外部储存器的连接方法 137
5.4.1 对外部ROM的连接 138
5.4.2 对外部RAM的连接 139
5.4.3 MCS-51对外部存储器的连接 141
5.5 练习题 141
第6章 中断系统 143
6.1 概述 143
6.1.1 中断的概念 143
6.1.2 引进中断技术的优点 143
6.1 3 中断源 144
6.1.4 中断嵌套 145
6.1.5 中断系统的功能 146
6.2 MCS-51单片机的中断系统及处理过程 147
6.2.1 中断系统的结构 147
6.2.2 中断源及中断入口 147
6.2.3 中断控制 148
6.2.4 中断响应 148
6.2.5 中断处理 149
6.2.6 中断返回 149
6.2.7 中断请求的撤除 150
6.2.8 扩充外中断源 150
6.3 中断程序应用举例 151
6.4 练习题 153
第7章 串行通信接口 154
7.1 串行通信概述 154
7.1.1 基本通信方式 154
7.1.2 串行通信的分类 155
7.1.3 串行通信中串行I/O数据的实现 157
7.1.4 串行通信总线标准 160
7.2 MCS-51的串行接口 161
7.2.1 串行口的结构 161
7.2.2 串行口的工作方式0 164
7.2.3 串行口的工作方式1 165
7.2.4 串行口的工作方式2 166
7.2.5 串行口的工作方式3 167
7.2.6 串行口的通信波特率 167
7.3 多机通信 169
7.4 串口通信的应用 171
7.5 练习题 177
第8章 单片机的输入/输出接口 178
8.1 简单并行I/O端口 178
8.1.1 I/O接口技术概述 178
8.1.2 并行扩展I/O接口 179
8.2 定时器/计数器 181
8.2.1 定时器/计数器的结构 182
8.2.2 定时器/计数器的控制寄存器 182
8.2.3 定时器/计数器的工作模式 184
8.2.4 定时器/计数器常数的计算 187
8.2.5 定时器/计数器的应用 187
8.3 LED显示器及接口 189
8.3.1 LED显示器的结构与原理 189
8.3.2 LED静态显示方式 190
8.3.3 LED动态显示方式 192
8.3.4 液晶显示器(LCD)概述 194
8.4 键盘接口技术 195
8.4.1 键盘接口概述 196
8.4.2 键盘的硬件接口 196
8.4.3 独立式按键接口设计 197
8.4.4 行列式键盘接口设计 199
8.5 DAC和ADC接口设计 204
8.5.1 数模转换器(DAC)接口技术 204
8.5.2 模数转换器(ADC)接口技术 210
8.6 上机实验 219
8.6.1 显示接口实验 219
8.6.2 模/数转换(A/D)实验 220
8.6.3 D/A转换器接口实验 221
8.7 练习题 222
第9章 单片机应用系统设计方法简介 224
9.1 单片机应用系统开发流程 224
9.1.1 拟制设计任务书 224
9.1.2 建立数学模型 224
9.1.3 总体设计 225
9.2 硬件设计 229
9.3 软件设计 233
9.4 综合实例 234
9.4.1 自动剪板机顺序控制系统 234
9.4.2 单片机温度控制系统 240
9.5 上机实验——电脑时钟程序实验 252
9.6 练习题 253
主要参考文献 254