第1章 概述 1
1.1 数制与编码 1
1.1.1 数制及其转换 1
1.1.2 编码 4
1.2 单片机与嵌入式系统组成 7
1.2.1 单片机及其发展概况 7
1.2.2 单片机的特点和应用 8
1.2.3 嵌入式系统 9
1.2.4 单片机应用系统的结构 10
1.3 一个简单的单片机应用实例 11
1.4 习题 12
第2章 MCS-51的结构 13
2.1 MCS-51单片机总体结构 13
2.1.1 MCS-51单片机总体结构框图及功能 13
2.1.2 MCS-51引脚功能 16
2.2 MCS-51存储结构及位处理器 19
2.2.1 MCS-51存储器的特点 19
2.2.2 程序存储器 20
2.2.3 数据存储器 21
2.2.4 专用寄存器区(SFR) 23
2.3.1 复位方式 25
2.2.5 位处理器 25
23 MCS-51工作方式和时序 25
2.3.2 程序执行工作方式 26
2.3.3 节电工作方式 27
2.4 MCS-51单片机的时序 28
2.4.1 时钟 28
2.4.2 CPU时序 28
2.5 习题 32
3.1 指令系统简介 33
3.1.1 指令格式 33
第3章 MCS-51单片机指令系统及编程举例 33
3.1.2 指令分类及符号说明 34
3.2 寻址方式 35
3.3 指令系统 39
3.3.1 数据传送类指令 39
3.3.2 算术运算类指令 45
3.3.3 逻辑运算类指令 48
3.3.4 控制转移类指令 51
3.3.5 位操作类指令 56
3.4 汇编语言程序设计基础 58
3.4.1 汇编语言程序的组成 59
3.4.2 伪指令 60
3.4.3 汇编语言程序设计实例 62
3.5 习题 69
第4章 MCS-51单片机的中断系统 71
4.1 中断的概念 71
4.2 8051中断系统结构及中断控制 72
4.2.1 中断源和中断请求标志 72
4.2.2 中断允许控制 74
4.2.3 中断优先级控制 74
4.2.4 中断响应过程 75
4.2.5 中断响应时间 76
4.2.6 中断响应后中断请求的撤除 76
4.3 中断系统应用实例 76
4.3.1 单步操作的中断实现 76
4.3.2 外部中断源扩展 77
4.4 中断程序举例 78
4.5 习题 82
第5章 MCS-51单片机内部定时器/计数器 83
5.1 定时器/计数器简介 83
5.2.1 定时器/计数器的工作模式寄存器TMOD 84
5.2 定时器/计数器的控制字 84
5.2.2 定时器控制寄存器TCON 85
5.3 定时器/计数器工作模式 85
5.3.1 工作模式0 85
5.3.2 工作模式1 86
5.3.3 工作模式2 86
5.3.4 工作模式3 87
5.4 定时器/计数器应用实例 88
5.4.1 模式0的应用 88
5.4.3 模式2的应用 89
5.4.2 模式1的应用 89
5.4.4 模式3的应用 90
5.4.5 定时器/计数器综合应用 91
5.5习题 92
第6章 单片机串行口及应用 94
6.1 MCS-51单片机串行接口 94
6.1.1 串行通信的基本概念 94
6.1.2 串行口结构 97
6.1.3 串行口控制 98
6.2 串行口工作方式及波特率设置 99
6.2.1 串行口的工作方式 99
6.2.2 波特率设置 100
6.3.1 串行口方式0的应用 102
6.3 串行口应用及实例 102
6.3.2 串行口在其他方式下的应用 104
6.3.3 多机通信 106
6.4 习题 112
第7章 单片机的系统扩展 114
7.1 MCS-51单片机最小系统 114
7.1.1 8051/8751单片机最小系统 114
7.1.2 8031最小应用系统 114
7.2 扩展总线的产生 115
7.3.1 常用的程序存储器 116
7.3 程序存储器的扩展 116
7.3.2 程序存储器的扩展 120
7.4 数据存储器的扩展 122
7.4.1 常用的数据存储器 122
7.4.2 数据存储器的扩展 123
7.4.3 扩展举例 124
7.5 I/O端口的扩展 125
7.5.1 简单并行I/O口的扩展 126
7.5.2 8155可编程多功能接口的扩展 128
7.6 习题 134
8.1.1 键盘的分类 135
第8章 单片机系统的接口 135
8.1 键盘及接口电路 135
8.1.2 键盘的工作原理 136
8.1.3 键盘接口扩展设计 138
8.2 显示及显示器接口 140
8.2.1 LED状态显示 140
8.2.2 LED数码显示 142
8.2.3 七段LED数码管显示接口 143
8.2.4 键盘、显示器综合设计 145
8.2.5 液晶显示器(LCD)在单片机中的应用 148
8.3.1 D/A转换器 154
8.3 A/D、D/A转换器与单片机的接口 154
8.3.2 A/D转换器 157
8.4 应用举例 161
8.4.1 简易5V直流数字电压表 161
8.4.2 流水灯控制器 163
8.5 习题 164
第9章 单片机应用系统举例与开发 166
9.1 单片机应用系统举例 166
9.1.1 光电计数器 166
9.1.2 时间顺序控制器 167
9.1.3 转速表 169
9.1.4 交通灯管理系统 170
9.2 单片机系统的开发应用过程 173
9.2.1 总体论证 174
9.2.2 总体设计 175
9.2.3 硬件设计 175
9.2.4 软件设计 175
9.2.5 联机调试 176
9.3.1 开发系统的基本功能 177
9.3.2 开发系统简介 177
9.3 单片机开发系统 177
9.2.6 脱机运行 177
9.4 单片微机系统开发应用举例 180
9.4.1 系统简介 180
9.4.2 研制过程介绍 181
9.5 习题 189
第10章 新型串行总线接口芯片 191
10.1 I2C接口芯片 191
10.1.1 I2C总线简介 191
10.1.2 AT24Cxx芯片与MCS-51的连接 195
10.1.3 通用I2C总线发送/接收程序 203
10.1.4 PCF8563时钟/日历芯片与MCS-51的连接 208
10.2.1 SPI总线简介 211
10.2 SPI接口芯片与MCS-51的连接 211
10.2.2 X25043与MCS-51的连接 213
10.2.3 MC14489与MCS-51的连接 218
10.3 习题 221
第11章 其他单片机简介及选购 222
11.1 80C51系列单片机 222
11.2 89CXX单片机 223
11.3 单片机的选购 224
11.4 优秀单片机产品推荐 226
11.4.1 MSP430系列的16位单片机 226
11.4.2 高速8051片上系统单片机C8051F300 227
11.4.3 ST公司的ST62系列单片机 228
11.4.4 在系统可编程的8位低压微控制器AT89S8252 228
11.4.5 ADI公司的微转换器ADμC812 229
11.4.6 “嵌入式高速”可编程系统器件μPSD3000系列 229
附录 231
附录AMCS-51指令表 231
附录BASCⅡ(美国标准信息交换码)码表 235
附录C典型汇编及模拟运行程序的使用 236
C.1源程序汇编 236
C.2源程序的模拟运行 241