第一章 8051/52单片机概论 1
1.1 何谓8051/52单片机 1
1.2 MCS-51系列单片机的特性 3
1.3 MCS-51系列的引脚配置及功能 4
1.4 存储器结构 8
1.4.1 程序存储器 9
1.4.2 数据存储器 12
1.5 省电工作模式 22
1.5.1 空闲工作模式 23
1.5.2 掉电工作模式 23
第二章 8051/52指令系统及说明 25
2.1 8051/52单片机汇编语言的指令格式 25
2.2 8051/52单片机的指令寻址方式 25
2.2.1 直接寻址(direct addressing) 26
2.2.2 间接寻址(indirect addressing) 26
2.2.3 寄存器寻址(register addressing) 27
2.2.4 立即寻址 28
2.2.5 变址寻址方式 28
2.3 8051/52单片机的指令集 28
2.3.1 算术运算指令 32
2.3.2 数据传送指令 37
2.3.3 逻辑运算指令 40
2.3.4 位操作指令 44
2.3.5 控制转移指令 47
2.3.6 伪指令 51
第三章 汇编语言程序设计 53
3.1 单片机汇编语言的程序设计步骤 53
3.2 汇编语言程序设计结构 54
3.2.1 顺序结构程序设计 54
3.2.2 分支结构程序设计 56
3.2.3 循环结构程序设计 58
3.2.4 子程序设计 59
3.3 单片机汇编语言设计技巧 63
3.3.1 两个数的比较 63
3.3.2 不带符号的两个数比较 63
3.3.3 带符号的两个数比较 63
3.3.4 传送数据块 64
3.3.5 堆栈的熟练使用 65
3.3.6 通过切换寄存器工作区来增加间接寻址寄存器的个数(通用寄存器的个数) 65
3.3.7 常用的数据处理方法 66
3.4 汇编语言程序的编辑 67
3.5 单片机开发系统 67
3.5.1 什么是单片机开发系统 68
3.5.2 单片机开发系统的功能 68
3.5.3 单片机应用系统的调试 71
第四章 并行输入/输出口的原理与应用 74
4.1 并行输入/输出口的基本结构及原理 74
4.1.1 P0口 74
4.1.2 P1口 75
4.1.3 P2口 76
4.1.4 P3口 77
4.1.5 4个并行口的结构特点比较 77
4.2 并行输入/输出口的实用技术问答 78
4.2.1 I/O的内部结构 78
4.2.2 I/O口读/写/改操作 79
4.2.3 使用I/O口的注意事项 80
4.3 并行输入/输出口的应用 80
第五章 定时器/计数器的原理与应用 87
5.1 定时器/计数器简介 87
5.2 TCON控制寄存器与TMOD控制寄存器 88
5.3 定时器/计数器的结构与工作模式 89
5.3.1 定时器/计数器的MODE 0工作模式 89
5.3.2 定时器/计数器的MODE 1工作模式 90
5.3.3 定时器/计数器的MODE 2工作模式 91
5.3.4 定时器/计数器的MODE 3工作模式 91
5.4 定时器/计数器的基本应用 92
5.4.1 应用定时器/计数器的步骤 92
5.4.2 定时器/计数器应用实例 93
5.4.3 定时器/计数器的中断应用实例 95
5.4.4 单片机定时器中断时间误差的分析及补偿 96
5.5 定时器/计数器的扩展应用 98
5.5.1 单片机应用系统中的“看门狗”技术 98
5.5.2 用单片机实现分频段测量信号频率 103
5.5.3 单片机软件监视抗干扰技术 104
5.6 8052定时器/计数器TIMER2 107
5.6.1 T2的工作控制 107
5.6.2 T2的工作模式 108
5.6.3 T2的工作编码 110
5.7 定时器/计数器实用技术问答 110
第六章 单片机串行数据通信 113
6.1 串行通信基础知识 113
6.1.1 串行通信基本原理 113
6.1.2 串口信号线 116
6.1.3 串行接口电路 117
6.2 单片机的串行口及控制寄存器 117
6.2.1 MCS-51串行接口 118
6.2.2 MCS-51串行通信控制寄存器 118
6.3 单片机的串行通信 121
6.3.1 单片机的串行通信设计 121
6.3.2 利用查询与中断方式实现微机和单片机的串行通信 124
6.3.3 利用MAX485实现单片机与PC机的串行通信 128
6.3.4 MCS-51单片机与GPS-OEM板的串行通信 132
6.4 单片机多机通信系统 136
6.4.1 单片机的多机通信设计 136
6.4.2 单片机多机通信系统可靠性问题 137
第七章 MCS-51单片机的中断系统 141
7.1 中断的概念 141
7.1.1 什么是中断 141
7.1.2 中断的意义 141
7.1.3 单片机中断的种类 141
7.2 MCS-51单片机的中断源 142
7.2.1 外部中断 142
7.2.2 定时/计数器中断 143
7.2.3 串行口中断 143
7.2.4 中断源与中断管理 144
7.3 中断控制 144
7.3.1 定时/计数器控制寄存器(TCON) 144
7.3.2 中断允许控制寄存器(IE) 145
7.3.3 中断优先级控制寄存器(IP) 145
7.3.4 串行口控制寄存器(SCON) 146
7.4 中断处理过程 147
7.4.1 中断采样 147
7.4.2 中断查询 147
7.4.3 中断响应 148
7.5 中断请求的撤除 150
7.5.1 定时/计数器中断请求的撤除 150
7.5.2 串行口中断请求的撤除 150
7.5.3 外部中断请求的撤除 150
7.6 多级中断的嵌套 151
7.6.1 多级中断嵌套 151
7.6.2 三级中断嵌套的实现 151
7.6.3 多级中断嵌套的实现 152
7.7 中断应用举例 153
7.7.1 外部中断实验 153
7.7.2 单片机外中断使用方面的问题及解决措施 156
7.7.3 MCS-51系列单片机中断功能的扩展 158
第八章 MCS-51单片机系统扩展与应用 162
8.1 MCS-51扩展系统概述 162
8.1.1 MCS-51扩展系统结构 162
8.1.2 存储器及外部I/O口的编址技术 164
8.2 程序存储器扩展 165
8.2.1 常用程序存储器芯片 165
8.2.2 程序存储器的扩展 166
8.2.3 单片机系统中FLASH存储器的扩展 168
8.3 数据存储器扩展 171
8.3.1 数据存储器扩展的特点 171
8.3.2 数据存储器扩展的发展方向 172
8.3.3 存储容量扩展的软硬件设计 172
8.3.4 大容量RAM扩展及其查找技术 174
8.4 I/O口扩展 177
8.4.1 并行I/O口概述 177
8.4.2 简单的I/O口扩展 178
8.4.3 8155可编程I/O接口扩展 179
第九章 单片机的人机接口技术 182
9.1 LED显示器接口 182
9.1.1 LED显示器工作原理 182
9.1.2 LED显示器的接口电路 184
9.1.3 LED显示器的显示方式 186
9.2 键盘接口技术 189
9.2.1 键盘的特点与抖动 190
9.2.2 键盘的结构及接口设计 191
9.3 键盘与显示器技术的综合应用举例 193
9.3.1 8279的键盘显示接口 193
9.3.2 键盘/显示驱动电路 194
第十章 单片机应用系统设计方法 197
10.1 构成应用系统的基本方法 197
10.1.1 确定指标 197
10.1.2 可行性分析研究 197
10.1.3 系统总体设计方案 197
10.2 应用系统硬件的设计 199
10.3 应用系统软件的设计方法 202
10.3.1 编程语言的选择 202
10.3.2 软件设计 202
10.3.3 软件抗干扰原理与方法 203
10.4 数字滤波技术 206
10.4.1 均值滤波 206
10.4.2 递推平均滤波 206
10.4.3 防脉冲干扰平均值滤波 206
10.4.4 限幅滤波 207
10.4.5 低通滤波 207
10.4.6 占优滤波 207
10.4.7 替代滤波 208
10.5 应用系统的调试方法 208
10.5.1 应用系统硬件的调试方法 209
10.5.2 应用系统软件的调试方法 210
10.5.3 应用系统的集成综合调试 211
10.5.4 应用系统的故障诊断 211
主要参考文献 214