第1章 微型计算机基础知识 1
1.1微型计算机数制及其转换 1
1.1.1微型计算机常用数制的特点 1
1.1.2微型计算机数制间的转换 3
1.2微型计算机中数的表示方法 6
1.2.1机器数与真值 6
1.2.2原码、反码、补码 7
1.2.3微型计算机的二进制编码 11
1.3微型计算机系统组成原理 14
1.3.1计算机的基本结构 14
1.3.2微型计算机的基本组成 14
1.3.3微型计算机的基本工作原理 16
1.3.4微型计算机系统组成 17
1.4单片微型计算机概述 19
1.4.1单片机的历史及发展概况 19
1.4.2单片机的发展趋势 20
1.4.3单片机的应用 21
1.4.4 8位单片机的主要生产厂家和机型 22
1.4.5 MCS-51系列单片机 22
思考题与习题 24
第2章 MCS-51单片机的硬件结构 26
2.1 MCS-51单片机内部结构 26
2.1.1 MCS-51单片机的基本组成 26
2.1.2 MCS-51单片机内部结构 27
2.2 MCS-51单片机引脚功能 38
2.3.1机器周期和指令周期 41
2.3.2 MCS-51单片机指令的取指、执行时序 41
2.3 MCS-51单片机时序 41
2.4 MCS-51单片机复位及复位电路 43
2.4.1复位操作 43
2.4.2复位信号和复位电路 43
2.4.3程序执行方式 43
2.4.4低功耗操作方式 44
思考题与习题 45
第3章 半导体存储器及其扩展设计 46
3.1半导体存储器 46
3.1.1半导体存储器概述 46
3.1.2常用半导体存储器 48
3.2单片机外部存储器的扩展 52
3.2.1扩展外部存储器的一般方法 52
3.2.2扩展程序存储器 54
3.2.3扩展数据存储器 55
3.2.4扩展串行存储器 57
3.2.5存储器芯片的选择 60
3.3存储器的若干实用技术 61
思考题与习题 62
第4章 MCS-51的指令系统 63
4.1概述 63
4.1.1指令和程序设计语言 63
4.1.2 MCS-51指令系统及符号说明 65
4.2 MCS-51指令系统的寻址方式 66
4.2.1寄存器寻址 66
4.2.2直接寻址 66
4.2.3寄存器间接寻址 66
4.2.4立即寻址 67
4.2.5基址寄存器加变址寄存器间接寻址 67
4.2.6相对寻址 68
4.2.8寻址空间 69
4.3 MCS-51指令系统 69
4.2.7位寻址 69
4.3.1数据传送类指令 70
4.3.2算术操作类指令 73
4.3.3逻辑运算指令 77
4.3.4控制转移类指令 79
4.3.5位操作指令 83
思考题与习题 84
第5章 MCS-51汇编语言程序设计 87
5.1汇编语言程序设计步骤与技巧 87
5.1.1汇编语言程序设计步骤 87
5.2伪指令 88
5.1.2汇编语言编程技巧 88
5.3汇编语言程序设计 90
5.3.1顺序程序设计 91
5.3.2分支程序设计 92
5.3.3循环程序设计 94
5.3.4子程序设计 100
5.3.5查表程序设计 102
5.3.6散转程序设计 106
5.3.7模拟组合逻辑的程序设计 107
思考题与习题 109
第6章 中断系统 111
6.1中断概述 111
6.1.1中断概念 111
6.1.3中断优先权及CPU响应中断的原则 112
6.1.2中断类型 112
6.2中断处理过程 113
6.2.1中断请求 113
6.2.2中断响应 114
6.2.3中断处理 114
6.2.4中断返回 114
6.3 MCS-51单片机中断系统 114
6.3.1MCS-51单片机的中断结构 114
6.3.2中断源 115
6.3.3中断的控制 115
6.3.4中断处理过程 118
6.4中断程序举例 120
6.4.1主程序 120
6.4.2中断服务程序 120
思考题与习题 123
第7章 定时/计数器及其应用 124
7.1定时/计数器的基本功能 124
7.2 8051片内定时/计数器概述 124
7.3定时器的控制 125
7.3.1工作模式寄存器TMOD 125
7.3.2控制寄存器TCON 126
7.4定时/计数器的4种工作模式及应用 126
7.4.1工作模式0及应用 127
7.4.2工作模式1及应用 128
7.4.3工作模式2及应用 129
7.4.4工作模式3及应用 131
7.5应用举例 132
思考题与习题 133
8.1.1输入/输出及硬件接口 134
8.1有关接口的基本概念 134
第8章 微型机的I/O接口技术 134
8.1.2接口信号的分类 135
8.1.3端口的概念及操作 136
8.1.4接口电路的功能概述 136
8.1.5主机对I/O的寻址方式 137
8.2接口数据的传送方式 138
8.2.1同步传送方式 138
8.2.2异步传送方式 138
8.2.3中断传送方式 139
8.2.4DMA传送方式 139
8.3 I/O接口的简单扩展 140
8.3.1I/O接口的类型 140
8.3.2单片机的I/O口特性 140
8.3.3简单I/O口扩展举例 142
思考题与习题 146
第9章 MCS-51与可编程接口的扩展 147
9.1并行I/O接口芯片8255A 147
9.1.1 8255A的主要特性 147
9.1.2 8255A的内部结构 147
9.1.3 8255A引脚及其功能(外部特性) 148
9.1.4 8255A的控制字 150
9.1.5 8255A与单片机接口实例 154
9.2 RAM/IO接口芯片8155 155
9.2.1 8155引脚及其功能 155
9.2.2 8155内部寄存器及其编址 156
9.2.3 8155内部定时/计数器 158
9.2.4 8155与单片机的接口实例 159
9.3.1 8279的内部结构及引脚 161
9.3键盘/显示器接口芯片8279 161
9.3.2 8279的操作命令字 163
9.3.3 8279的状态字 167
9.3.4 8279与键盘/显示器的接口实例 168
9.4串行口扩展芯片8251A 170
9.4.1 8251A的基本特点 170
9.4.2 8251A的内部结构和引脚功能 170
9.4.3 8251A的控制字 173
9.4.4 MCS-51和8251A的接口实例 176
思考题与习题 178
第10章 MCS-51系统扩展 179
10.1MCS-51与键盘接口 179
10.1.1键盘及其接口 179
10.1.2单片机应用系统中的典型显示/键盘接口 185
10.2.1LED显示器及其接口 188
10.2 MCS-51与显示器的接口 188
10.2.2液晶显示器(LCD)及其应用 196
10.3 MCS-51与TPμp-40A/16A微型打印机的接口 205
思考题与习题 207
第11章 单片机串行通信与接口 208
11.1串行通信基础 208
11.1.1串行通信的分类 208
11.1.2串行通信的制式 210
11.2串行通信的接口标准 211
11.2.1 RS-232C接口 211
11.2.2RS-422A接口 213
11.2.3 RS-485接口 214
11.2.4各种串行接口性能比较 215
11.3.1串行口控制寄存器SCON和PCON 216
11.3 MCS-51的串行接口 216
11.3.2串行口的工作方式 217
11.3.3串行口的通信波特率 219
11.4双机串行通信技术 220
11.4.1双机通信接口设计 220
11.4.2双机通信软件设计 221
11.5多机串行通信技术 227
11.6串行通信中的波特率设置技术 236
11.6.1 MCS-51单片机串行通信波特率的确定 236
11.6.2波特率相对误差范围的确定方法 236
11.6.3SMOD位对波特率的影响 238
思考题与习题 238
12.1.1 DAC的性能指标和选择方法 240
12.1 DAC及其与MCS-51单片机的接口 240
第12章 数模、模数转换器的接口设计 240
12.1.2 MCS-51与DAC的接口 241
12.2 ADC及其与MCS-51的接口 249
12.2.1ADC的性能指标和选择方法 249
12.2.2 MCS-51与ADC的接口 251
思考题与习题 259
第13章 单片机应用系统的设计 260
13.1单片机应用系统设计概述 260
13.1.1系统设计步骤 260
13.1.2总体设计要点 261
13.1.3硬件设计 262
13.1.4软件设计 262
13.1.5数据采集系统 263
13.2应用实例——溴素生产物料调控自动监视系统 265
13.1.6系统的调试、运行和维护 265
13.2.1系统的技术指标及功能 266
13.2.2方案论证 266
13.2.3硬件电路设计 267
13.2.4软件设计 271
13.3系统可靠性设计和故障诊断技术 277
13.3.1系统可行性设计 277
13.3.2系统抗干扰技术 278
13.3.3系统故障诊断 280
思考题与习题 281
第14章 单片机应用系统的开发工具 283
14.1开发系统简介 283
14.1.1开发系统的功能 284
14.1.2开发系统的分类 284
14.1.4开发系统的基本组成 286
14.1.3有关开发系统性能的几个基本概念 286
14.2用户样机开发调试过程 287
14.2.1用户样机硬件调试 287
14.2.2用户样机软件的设计、调试 289
14.3 C51开发工具 291
14.3.1 8051的编程语言 291
14.3.2 C51编译器 292
14.3.3 Keil/Franklin C51编译实例 292
14.3.4C51程序结构 298
思考题与习题 299
附录A ASCII码字符表 300
附录B MCS-51系列单片机指令集 301
附录C 指令助记符与机器码速查表 306
参考文献 307