第1章 概述 1
1.1 单片机的发展 1
1.2 单片机的组成及特点 2
1.2.1 单片机的硬件系统 3
1.2.2 单片机的软件系统 3
1.3 单片机主要品种及系列 3
1.3.1 CPU处理字的长度 3
1.3.2 使用范围 4
1.4.1 单片机的特点 5
1.4 单片机的特点及应用 5
1.3.3 主要产品系列 5
1.4.2 单片机在工业控制中的应用 6
习题1 7
第2章 MCS-51单片机系统结构 8
2.1 总体结构 8
2.1.1 结构框图 8
2.1.2 引脚定义及功能 8
2.1.3 片外总线结构 10
2.2 存储器结构 12
2.2.1 程序存储器 12
2.2.2 数据存储器RAM 13
2.3 并行I/O口结构 18
2.3.1 P0~P3端口结构 18
2.3.2 并行I/O端口负载能力 20
2.3.3 并行I/O口使用 20
2.4 中央处理器CPU及时钟电路与CPU时序 22
2.4.1 中央处理器CPU 22
2.4.2 时钟电路 22
2.4.3 CPU时序 23
2.5 单片机的工作方式 26
2.5.1 复位方式 27
2.5.2 程序执行方式 28
2.5.3 节电工作方式 28
2.5.4 EPROM编程和校验方式 30
2.6 单片机系统μP监控芯片 32
2.6.1 看门狗(Watch Dog) 32
2.6.2 时(P监控芯片 33
2.6.3 典型应用电路 34
习题2 34
3.1.2 指令格式 36
3.1.1 汇编语言 36
3.1 指令系统概述 36
第3章 MCS-51指令系统 36
3.1.3 指令符号标识 37
3.1.4 伪指令 39
3.2 寻址方式 41
3.2.1 立即寻址 41
3.2.2 直接寻址 41
3.2.3 寄存器寻址 42
3.2.4 寄存器间接寻址 42
3.2.5 变址寻址 43
3.2.6 相对寻址 44
3.2.7 位寻址 45
3.3 指令系统 45
3.3.1 数据传送类指令 46
3.3.2 算术运算指令 50
3.3.3 逻辑运算指令 53
3.3.4 控制转移类指令 55
3.3.5 位操作指令 60
习题3 62
4.1.2 汇编语言编程者注意事项 66
4.1.1 设计步骤 66
4.1 汇编语言程序设计步骤 66
第4章 程序设计 66
4.2 查表程序 67
4.3 循环程序 71
4.3.1 定时程序 71
4.3.2 数据极值查找程序 72
4.3.3 数据排序程序 73
4.4 散转程序 74
4.4.1 分支结构 74
4.4.2 采用转移指令表的散转程序 75
4.4.3 采用地址偏移量的散转程序 76
4.4.4 采用转向地址表的散转程序 77
4.5 子程序 78
4.5.1 子程序设计 78
习题4 82
第5章 中断系统与定时器/计数器 84
5.1 中断系统 84
5.1.1 中断技术概念 84
5.2.1 中断源 86
5.2 MCS-51中断系统 86
5.2.2 中断请求标志 87
5.2.3 中断控制 88
5.2.4 中断响应过程 90
5.2.5 中断响应时间 91
5.3 扩充外部中断源 92
5.3.1 利用定时器扩充外部中断源 92
5.3.2 查询法扩展外部中断源 93
5.3.3 8051的单步操作 94
5.4 MCS-51定时器/计数器 95
5.4.1 MCS-51定时器/计数器结构 96
5.4.2 定时器/计数器的方式寄存器和控制寄存器 96
5.4.3 定时器/计数器工作方式 97
5.5 定时器/计数器应用举例 100
5.5.1 定时器/计数器的初始化 100
5.5.2 应用举例 100
习题5 106
6.1 串行通信概念 108
6.1.1 串行通信的两种基本方式 108
第6章 单片机串行数字通信 108
6.1.2 串行通信的波特率 109
6.1.3 串行通信的通信方式 110
6.1.4 串行通信的信号传输 110
6.2 MCS-51串行接口 113
6.2.1 串口结构 113
6.2.2 串口的控制 113
6.3 串行口工作方式 115
6.3.1 工作方式 115
6.3.2 波特率设计 116
6.4 串行口的应用 118
6.4.1 串行口方式0的应用 118
6.4.2 双机通信 120
6.4.3 多机通信 125
习题6 126
第7章 MCS-51单片机的系统扩展 128
7.1 MCS-51扩展系统的组成 128
7.1.1 最小应用系统 128
7.1.2 扩展系统总线结构 129
7.1.3 扩展能力 129
7.2.1 程序存储器的扩展方法 130
7.2 程序存储器的扩展 130
7.2.2 EPROM扩展电路 131
7.2.3 EEPROM扩展电路 133
7.3 数据存储器的扩展 137
7.3.1 数据存储器的扩展方法 137
7.3.2 数据存储器的扩展电路 137
7.4 并行I/O口扩展 141
7.4.1 并行I/O口的简单扩展 141
7.4.2 可编程并行I/O口的扩展 142
习题7 155
第8章 单片机应用系统的接口技术 156
8.1 单片机与显示器的接口技术 156
8.1.1 LED数码显示器结构和工作原理 156
8.1.2 字段码 157
8.1.3 静态LED显示器接口 158
8.1.4 动态LED显示器接口 160
8.2 键盘与单片机的接口及编程 162
8.2.1 独立式键盘及接口 163
8.2.2 矩阵式键盘及接口 165
8.2.3 键盘的工作方式 166
8.3 显示器/键盘接口技术 168
8.4 A/D转换器接口及应用 171
8.4.1 模/数(A/D)转换器的概况 172
8.4.2 常用的A/D转换器 172
8.4.3 MCS-51单片机与AD574A的连接 176
8.5 D/A转换器接口及应用 178
8.5.1 数/模(D/A)转换器的概念 178
8.5.2 常用D/A转换器DAC0832及与MCS-51的连接 179
8.5.3 MCS-51与12位D/A转换器的连接 182
习题8 184
9.1.1 开发的概念及开发系统 185
第9章 单片机应用系统的开发 185
9.1 单片机的开发系统 185
9.1.2 通用单片机仿真系统DICE简介 186
9.2 应用系统的开发过程 188
9.2.1 单片机的开发过程 188
9.2.2 应用实例 190
附录1 MCS-51系列单片机指令表 201
附录2 MCS-51按字母顺序排列指令表 206
附录3 MCS-51反汇编指令表 210
参考文献 212