第1章 单片机概述 1
1.1 单片机基础知识 1
1.1.1 计算机的基本结构 1
1.1.2 微型计算机结构 2
1.1.3 单片机及其结构特点 2
1.2 单片机的发展历史与发展方向 3
1.3 单片机的应用 4
1.4 MCS系列单片机简介 5
1.4.1 MCS-51系列单片机 5
1.4.2 MCS-96系列单片机 5
习题一 6
第2章 MCS-51单片机的硬件结构与工作原理 7
2.1 MCS-51单片机的主要性能特点 7
2.2 MCS-51单片机内部结构 8
2.2.1 总体结构 8
2.2.2 CPU程序设计模型 9
2.3 MCS-51的引脚功能 11
2.4 MCS-51单片机的存储器配置 12
2.4.1 程序存储器 13
2.4.2 数据存储器 14
2.5.2 复位电路 19
2.5.1 时钟电路 19
2.5 时钟电路、复位电路和CPU时序 19
2.5.3 CPU时序 20
2.6 并行I/O端口 20
习题二 24
第3章 指令系统 25
3.1 寻址方式 25
3.2 数据传送类指令 26
3.2.1 以累加器A为一方的传送指令 27
3.2.2 不以累加器A为一方的传送指令 27
3.2.4 访问片外RAM的传送指令 28
3.2.3 用立即数置数的指令 28
3.2.5 基址寄存器加变址寄存器关址指令 29
3.2.6 交换指令 29
3.2.7 进栈出栈指令 29
3.3 算术运算类指令 31
3.3.1 加法指令 31
3.3.2 减法指令 31
3.3.3 加1指令 32
3.3.4 减1指令 32
3.3.5 其他算术运算指令 33
3.4.2 或指令 34
3.4.1 与指令 34
3.4 逻辑运算类指令 34
3.4.3 异或指令 35
3.4.4 A操作指令 35
3.5 控制程序转移类指令 37
3.5.1 无条件转移指令 37
3.5.2 条件转移指令 38
3.5.3 调子程序指令 39
3.5.4 空操作指令 40
3.6.1 位传送指令 41
3.6.2 位逻辑操作指令 41
3.6 位操作类指令 41
3.6.3 位条件转移指令 42
习题三 43
第4章 汇编语言程序设计方法 45
4.1 汇编语言的格式 45
4.1.1 汇编语言指令格式 45
4.1.2 伪指令 46
4.1.3 机器语言指指令格式 47
4.2 汇编语言程序设计 48
4.2.1 顺序程序 48
4.2.2 查表程序 49
4.2.3 分支程序 51
4.2.4 循环程序 56
4.2.5 位操作程序 57
4.2.6 子程序 59
习题四 60
第5章 定时器/计数器 61
5.1 定时器/计数器的控制 61
5.1.1 定时器/计数器的结构 61
5.1.2 定时器/计数器的方式寄存器和控制寄存器 62
5.2 定时器/计数器的工作方式 63
5.2.1 工作方式0 63
5.2.2 工作方式1 64
5.2.3 工作方式2 65
5.2.4 工作方式3 66
5.3 定时器/计数器的应用 66
5.3.1 方式0的应用 66
5.3.2 方式1的应用 67
5.3.3 方式2的应用 68
5.3.4 方式3的应用 69
5.3.5 脉冲宽度测量 70
习题五 71
6.1.1 串行通信的基本方法 72
6.1 串行接口的工作原理及控制 72
第6章 串行接口 72
6.1.2 串行通信中的几个问题 73
6.1.3 MCS-51串行口的控制 74
6.2 串行口通信的工作方式 76
6.2.1 方式0 76
6.2.2 方式1 77
6.2.3 方式2和方式3 78
6.2.4 串行口波特率的设置 79
6.3.1 串行口在方式0下的应用 81
6.3 串行口应用 81
6.3.2 串行口在方式1下的应用 82
6.3.3 串行口在方式2、3下的应用 84
6.3.4 串行口在多机通信中的应用 85
习题六 86
第7章 中断系统 87
7.1 中断系统概述 87
7.1.1 中断的概念 87
7.1.2 中断源 88
7.1.3 中断系统的功能 88
7.2.1 中断源 89
7.2 MCS-51中断系统 89
7.2.2 中断请求标志 90
7.2.3 中断控制 91
7.3 中断系统应用 93
7.3.1 定时器作外部中断源 93
7.3.2 中断和查询相结合的方法 93
7.3.3 用优先编码器扩展中断源 94
习题七 96
第8章 MCS-51单片机系统扩展及接口技术 98
8.1 程序存储器的扩展 98
8.2 数据存储器的扩展 99
8.3 I/O的扩展 100
8.3.1 概述 100
8.3.2 地址译码法 101
8.3.3 用TTL芯片扩展I/O口 102
8.3.4 8255A可编程并行I/O口扩展 103
8.3.5 8155可编程I/O口的扩展 108
8.3.6 8243并行I/O口的扩展 112
8.4 A/D转换接口扩展 115
8.4.1 逐次逼近式A/D转换器 115
8.4.2 A/D转换器的主要技术指标 116
8.4.3 MCS-51单片机与A/D转换器接口应用 117
8.5.1 D/A转换器原理及性能 120
8.5 D/A转换接口扩展 120
8.5.2 MCS-51单片机与D/A转换器接口应用 121
习题八 124
第9章 MCS-51单片机应用系统 125
9.1 单片机应用系统设计的基本要求 125
9.1.1 可靠性设计 125
9.1.2 系统自诊断功能 130
9.1.3 操作维修方便 130
9.1.4 性能/价格比 130
9.2 单片机应用系统的研制方法 130
9.2.1 总体设计 131
9.2.2 硬件设计 132
9.2.3 软件设计 133
9.3 应用系统实例 136
9.3.1 单片微机防盗报警系统 136
9.3.2 单片机温度检测系统 146
习题九 153
第10章 单片机应用系统的开发及开发工具 154
10.1 单片机应用系统的软、硬件开发 154
10.1.1 软件与硬件设计 154
10.1.2 开发的方法 155
10.2.2 单片机开发系统的功能 157
10.2.1 单片机开发系统的概念 157
10.2 单片机开发系统 157
10.3 应用系统的安装调装 160
10.3.1 硬件调试方法 160
10.3.2 软件调试方法 161
10.4 DVCC-51S(SH)单片机实验(开发)仪 161
10.4.1 概述 162
10.4.2 键盘监控使用简介 164
10.4.3 DBUG软件使用简介 168
习题十 171
实验二 数据区传送子程序 172
实验一 清零程序 172
附录一 实验指导 172
实验三 多分支程序 173
实验四 脉冲计数(定时/计数器)实验 174
实验五 电脑时钟(定时器、中断综合实验) 177
实验六 P1口转弯灯实验 179
实验七 用8255芯片控制交通灯 181
实验八 A/D转换实验 184
实验九 D/A转换 185
实验十 步进电机控制 188
附录二 191
参考文献 196