第一章 计算机基础知识 1
1.1 概述 1
1.1.1 计算机的发展及应用概况 1
1.1.2 微处理器、微机和单片机的概念 1
1.1.3 单片微型计算机的发展 2
1.1.4 单片机与嵌入式系统 2
1.1.5 单片机应用 3
1.2 计算机的数制和码制 4
1.2.1 二进制、十六进制和十进制之间的相互转换 4
1.2.2 二进制编码 7
1.2.3 带符号数的定点表示法 9
1.3 模型计算机 17
1.3.1 计算机的基本组成及工作过程 17
1.3.2 微计算机的组成 18
1.3.3 微计算机的工作过程 22
习题与思考 25
第二章 单片机的结构及原理 27
2.1 单片机系列简介 27
2.2 单片机的内部结构 29
2.2.1 单片机的基本结构组成 29
2.2.2 MCS-51单片机的存储器 30
2.2.3 MCS-51单片机输入/输出端口 36
2.3.1 引脚功能 37
2.3 MCS-51单片机的引脚功能及片外总线结构 37
2.3.2 片外三总线结构 41
2.3.3 单片机的时序 42
习题与思考 45
第三章 MCS-51指令系统 47
3.1 指令格式和寻址方式 47
3.1.1 指令格式 47
3.1.2 寻址方式 48
3.1.3 指令符号意义说明 52
3.2 MCS-51的指令系统 53
3.2.1 数据传送类指令 53
3.2.2 算术运算指令 59
3.2.3 逻辑运算类指令 63
3.2.4 控制转移类指令 66
3.2.5 位操作指令 73
习题与思考 79
第四章 汇编语言程序设计 84
4.1 概述 84
4.1.1 程序设计语言简介 84
4.1.2 汇编语言和高级语言的比较 84
4.1.3 伪指令 85
4.2 汇编语言程序设计 86
4.2.1 顺序结构程序 87
4.2.2 分支程序 88
4.2.3 循环程序 91
4.2.4 子程序 96
4.3 MCS-51汇编语言实用子程序 98
4.3.1 代码转换程序 99
4.3.2 运算类程序 101
习题与思考 113
第五章 输入/输出及中断 115
5.1 概述 115
5.2 输入输出传送方式 116
5.2.1 无条件传送方式 117
5.2.2 查询方式 117
5.2.3 中断方式 118
5.2.4 存储器直接存取方式 119
5.3 中断的基本概念 120
5.3.1 中断技术的必要性 120
5.3.2 中断系统的功能 120
5.4 MCS-51单片机的中断系统 123
5.4.1 中断源 123
5.4.2 中断请求标志 123
5.4.3 中断控制 125
5.4.4 中断响应条件及响应过程 126
5.4.5 中断方式编程 127
5.5 中断方式举例 128
习题与思考 132
6.1 定时器的结构与工作原理 134
第六章 MCS-51单片机内部定时计数器 134
6.2 计数/定时器的工作方式选择及控制 135
6.2.1 工作方式寄存器TMOD 135
6.2.2 控制寄存器TCON 136
6.3 计数/定时器工作模式及应用 136
6.3.1 模式0 137
6.3.2 模式1 139
6.3.3 模式2 141
6.3.4 模式3 143
习题与思考 146
7.1.3 同步通信和异步通信 147
7.1.2 串口通信的数据传送方向 147
7.1.1 并行通信和串行通信 147
7.1 串行通信的基础知识 147
第七章 串行接口通信 147
7.2 单片机的串口工作原理 149
7.2.1 串口结构 149
7.2.2 串口的工作寄存器 150
7.3 串口工作方式 151
7.3.1 工作方式0 151
7.3.2 工作方式1 154
7.3.3 工作方式2和方式3 155
7.4 串口通信举例 157
7.4.1 中断方式的双机通信 157
7.4.2 查询方式的双机通信 159
7.5 多机通信 163
7.5.1 多机通信原理 164
7.5.2 多机通信实例 165
7.6 RS-232C串行接口标准及其与单片机的接口 173
习题与思考 176
第八章 存储器及存储器扩展 177
8.1 概述 177
8.1.1 半导体存储器分类 177
8.1.2 半导体存储器的主要性能指标 178
8.1.3 半导体存储器基本结构 178
8.2.1 静态RAM 179
8.2 随机读写存储器RAM 179
8.2.2 动态RAM芯片 180
8.3 只读存储器ROM 180
8.3.1 紫外线可擦除的EPROM 180
8.3.2 电可擦除的EEPROM 181
8.4 单片机存储器扩展 183
8.4.1 存储器的选择 183
8.4.2 单片机并行系统总线及地址分配 183
8.4.3 程序存储器扩展 186
8.4.4 数据存储器扩展 190
8.4.5 单片机系统扩展 191
习题与思考 193
9.1.1 简单的I/O口扩展 195
第九章 MCS-51单片机系统扩展 195
9.1 并行总线扩展技术 195
9.1.2 8155可编程I/O接口芯片扩展 197
9.2 串行总线扩展 204
9.2.1 I2C总线串行扩展 204
9.2.2 SPI接口的扩展 220
习题与思考 231
第十章 键盘、显示器接口技术 232
10.1 LED显示接口技术 232
10.1.1 七段LED显示器简介 232
10.1.2 LED显示接口 233
10.2.2 非编码键盘的工作原理 239
10.2 键盘接口 239
10.2.1 按键及去抖动 239
10.2.3 典型显示/键盘接口电路 245
习题与思考 246
第十一章 A/D、D/A转换器 248
11.1 A/D转换器 248
11.1.1 A/D转换器的种类 248
11.1.2 A/D转换器的主要性能指标 249
11.1.3 ADC0809芯片 249
11.2 D/A转换器 253
11.2.1 D/A转换器的主要性能指标 253
11.2.2 DAC0832芯片 254
习题与思考 261
第十二章 外围驱动及电气隔离技术 262
12.1 常用报警接口 262
12.1.1 闪光报警接口 262
12.1.2 单音频报警接口 263
12.1.3 语音报警电路接口 264
12.2 常用外围驱动器及其应用 264
12.2.1 常用的驱动器 265
12.2.2 应用举例 266
12.3 电气隔离技术 267
12.3.1 继电器输出隔离 267
12.3.2 光电隔离 269
习题与思考 273
第十三章 单片机应用系统设计及实例 274
13.1 概述 274
13.2 应用系统设计方法 274
13.2.1 总体设计 274
13.2.2 硬件设计 275
13.2.3 软件设计 279
13.2.4 单片机开发系统和开发方法 281
13.2.5 仿真调试 282
13.3 应用实例一:定长控制系统 283
13.3.1 油毡卷长控制器的工作原理 283
13.3.3 油毡卷长控制器软件设计 286
13.3.2 油毡卷长控制器硬件配置 286
13.4 应用实例二:电子钟 297
13.4.1 系统硬件设计 297
13.4.2 系统软件设计 301
习题与思考 312
主要参考文献 314
附录A 实验指导书 315
A1 单片机仿真实验系统简介 315
A1.1 WAVE仿真软件 315
A1.2 WAVE仿真器 316
A1.3 TDS-TS单片机实验板 317
A2.1 简单程序 318
A2 实验 318
A2.2 循环程序实验 323
A2.3 自编程序实验 327
A2.4 基本输入/输出、中断实验 330
A2.5 定时器实验 335
A2.6 串口通信接口实验 337
A2.7 显示接口实验 340
A2.8 A/D 0809实验 344
A2.9 键盘接口实验 347
附录B ASCII表 353
附录C MCS-51指令系统 354
附录D 实验板布局图 360