第1章 单片机概论 1
1.1 计算机发展简史 1
1.1.1 第一台电子计算机的出现 1
1.1.2 现代计算机的分类 1
1.2 单片机的发展及应用 1
1.2.1 单片机的发展 2
1.2.2 单片机的应用 2
1.3 计算机运算基础 3
1.3.1 数制 3
1.3.2 各种数制的相互转换 3
1.3.3 二进制数的运算 6
1.3.4 数的表示方法及运算 8
习题 10
第2章 MCS-51系列单片机的结构 12
2.1 MCS-51系列单片机简介 12
2.1.1 MCS-51系列单片机的特点 12
2.1.2 MCS-51系列单片机的种类 12
2.2 MCS-51系列单片机的信号引脚与结构 13
2.2.1 封装与引脚 13
2.2.2 内部逻辑结构 16
2.3.1 程序存储器 18
2.3 MCS-51系列单片机的存储器结构 18
2.3.2 外部数据存储器 20
2.3.3 内部数据存储器 20
2.4 MCS-51系列单片机的并行端口 24
2.4.1 P0口 24
2.4.2 P1口 25
2.4.3 P2口 26
2.4.4 P3口 26
2.4.5 口电路小结 26
2.5.1 时钟电路 27
2.5 MCS-51系列单片机的时序 27
2.5.2 时序定时单位 28
2.5.3 典型指令的时序 29
2.6 MCS-51系列单片机的工作方式 30
2.6.1 复位方式 30
2.6.2 程序执行方式 32
2.6.3 掉电保护方式 32
2.6.4 低功耗方式 33
习题 34
3.1.2 指令格式 35
3.1.1 单片机的汇编语言 35
3.1 指令系统概述 35
第3章 MCS-51系列单片机指令系统 35
3.1.3 指令中常用符号 36
3.2 寻址方式 37
3.3 MCS-51系列单片机指令系统 40
3.3.1 数据传送类指令 40
3.3.2 算术运算类指令 46
3.3.3 逻辑运算及移位类指令 53
3.3.4 布尔变量操作类指令 57
3.3.5 控制转移类指令 60
习题 68
第4章 MCS-51系列单片机程序设计 70
4.1 汇编语言概述 70
4.1.1 机器语言、汇编语言和高级语言 70
4.1.2 汇编语言程序设计 71
4.1.3 汇编语言的伪指令 72
4.2 基本程序设计方法 74
4.2.1 顺序结构程序设计 74
4.2.2 分支(选择)结构程序设计 75
4.2.3 循环结构程序设计 77
4.2.4 子程序设计 80
4.3.1 代码转换程序设计 82
4.3 程序设计举例 82
4.3.2 算术运算程序设计 84
4.3.3 逻辑运算程序设计 86
4.3.4 查表程序设计 87
4.3.5 数据检索程序设计 89
4.3.6 数据排序程序设计 90
习题 91
第5章 中断系统 93
5.1 中断系统概述 93
5.1.1 中断的概念 93
5.1.3 中断源与中断优先级 94
5.1.2 中断的功能 94
5.2 中断控制 95
5.2.1 中断源请求标志与请求方式控制 96
5.2.2 中断允许控制寄存器系列 97
5.2.3 中断优先级控制 97
5.3 中断处理过程 98
5.3.1 中断响应 99
5.3.2 中断程序设计 100
5.4 中断系统应用实例 102
5.4.1 CPU与外部设备的数据传送方式 102
5.4.2 中断源的扩展 103
5.4.3 键盘控制LED显示电路 107
5.4.4 MCS-51系列单片机的单步工作方式及断点工作方式 109
习题 110
第6章 单片机定时器/计数器 111
6.1 定时器/计数器结构与控制 111
6.1.1 定时器/计数器的结构及工作原理 111
6.1.2 定时器/计数器的控制寄存器 112
6.2 定时器/计数器的工作方式 113
6.2.1 工作方式0 113
6.2.2 工作方式1 114
6.2.3 工作方式2 120
6.2.4 工作方式3 122
6.2.5 用定时器/计数器进行外部中断扩展 123
6.3 定时器/计数器应用实例 124
习题 126
第7章 串行接口 128
7.1 串行通信的基本概念 128
7.1.1 串行通信与并行通信 128
7.1.2 串行通信方式 128
7.2 MCS-51系列单片机串行接口及控制寄存器 130
7.2.1 MCS-51系列单片机串行接口结构 130
7.1.3 串行通信的传送速率 130
7.2.2 串行接口控制 131
7.3 MCS-51系列单片机串行接口的工作方式 132
7.3.1 串行工作方式0 133
7.3.2 串行工作方式1 134
7.3.3 串行工作方式2 135
7.3.4 串行工作方式3 136
7.4 单片机串行通信 137
7.4.1 双机串行通信 137
7.4.2 多机串行通信 137
7.4.3 MCS-51系列单片机与PC的串行通信 138
习题 139
第8章 并行I/O接口 140
8.1 概述 140
8.1.1 I/O接口的作用 141
8.1.2 外部设备的编址 141
8.1.3 I/O数据的4种数据传送方式 143
8.1.4 I/O接口的类型 145
8.2 MCS-51系列单片机内部并行I/O端口及其应用 145
8.2.1 MCS-51系列单片机内部并行I/O端口 145
8.2.2 MCS-51系列单片机内部并行I/O端口的应用 147
8.3.1 借用外部RAM地址扩展I/O口 151
8.3 并行I/O口的扩展 151
8.3.2 用8255芯片扩展I/O口 153
8.3.3 用8155芯片扩展I/O口 159
习题 163
第9章 MCS-51系列单片机的存储器扩展及接口技术 165
9.1 存储器的扩展 165
9.1.1 程序存储器的扩展 165
9.1.2 数据存储器的扩展 166
9.2.1 键盘工作原理 167
9.2 键盘接口 167
9.2.2 中断扫描方式 172
9.3 显示器接口 172
9.3.1 显示器的结构 172
9.3.2 显示器的工作方式和显示程序设计 173
9.4 A/D转换接口和D/A转换接口 175
9.4.1 A/D转换接口 176
9.4.2 D/A转换接口 178
习题 183
10.1.1 确定任务 185
10.1.2 总体设计 185
第10章 单片机系统设计与开发 185
10.1 应用系统研制过程 185
10.1.3 硬件设计 186
10.1.4 软件设计 187
10.2 开发工具和开发方法 188
10.2.1 DVCC单片机开发系统 188
10.2.2 系统调试 191
10.3.2 技术要求 192
10.3.4 系统总体设计 192
10.3.3 数学模式 192
10.3.1 概述 192
10.3 应用系统举例(一)——排水灌溉系统的单片机控制 192
10.3.5 部件选择和设计 193
10.3.6 防干扰措施 196
10.3.7 程序设计 196
10.3.8 研制调试过程 196
10.4 应用系统举例(二)——学校作息时间单片机控制 198
10.4.1 控制任务与控制原理 199
10.4.2 系统硬件设计 200
10.4.3 系统软件设计 200
习题 208
参考文献 209