第1章 MCS-51系列单片机的基本知识 1
1.1 单片机的历史与应用 2
1.1.1 单片机的发展历史 2
1.1.2 单片机的应用 3
1.2 不同类型的单片机介绍 4
习题 4
第2章 MCS-51系列单片机的组成 5
2.1 MCS-5 1系列单片机外部结构 6
2.2 MCS-51系列单片机内部结构 12
2.3 MCS-51系列单片机的时序和工作方式 20
习题 21
第3章 MCS-51系列单片机汇编语言及程序设计 23
3.1 项目引入:单片机最小应用系统的使用 24
3.2 单片机汇编语言及程序设计的相关知识 27
3.2.1 MCS-51系列单片机汇编语言基础 27
3.2.2 数据传送类指令 31
3.2.3 算术运算类指令 34
3.2.4 逻辑运算类指令 36
3.2.5 控制转移类指令 38
3.2.6 位操作类指令 41
3.2.7 伪指令 43
3.3 汇编语言程序设计 44
习题 55
第4章 MCS-51系列单片机的中断系统及计数定时器 60
4.1 项目引入:LED点阵屏的动态显示 61
4.2 单片机中断系统的相关知识 64
4.2.1 中断系统 64
4.2.2 中断控制应用举例 70
4.2.3 MCS定时/计数器 72
4.2.4 定时/计数器应用举例 77
4.2.5 中断、定时/计数器综合应用举例——LED点阵广告屏 79
习题 84
第5章 MGS-51系列单片机的键盘和显示的汇编编程 87
5.1 项目引入一:独立键盘与静态数码管显示 88
5.2 项目引入二:矩阵键盘加独立键盘与液晶显示 92
5.3 键盘和显示的相关知识 94
5.3.1 独立键盘与数码管显示的相关知识 94
5.3.2 矩阵键盘加独立键盘与液晶显示的相关知识 108
习题 125
第6章 MCS-51系列单片机的输出控制(D/A转换)的汇编编程 128
6.1 项目引入:简易数控电源 129
6.2 D/A转换的相关知识 133
6.2.1 D/A转换器的主要指标 133
6.2.2 典型的D/A转换器及接口 134
6.2.3 简易数控电源项目编程说明 137
6.2.4 DAC0832应用举例 138
习题 140
第7章 MCS-51系列单片机的数据采集(A/D转换)汇编编程 141
7.1 项目引入:温度检测 142
7.2 A/D转换的相关知识 147
7.2.1 A/D转换器的主要指标 148
7.2.2 逐次逼近型A/D转换器及接口 148
7.2.3 温度检测项目编程说明 151
7.2.4 ADC0809应用举例 151
习题 153
第8章 MCS-51系列单片机资源扩展的汇编编程 155
8.1 项目引入:单片机八级中断扩展电路使用 156
8.2 单片机资源扩展的相关知识 160
8.2.1 片外三总线的扩展 160
8.2.2 程序存储器的扩展 161
8.2.3 数据存储器的扩展 164
8.2.4 定时器/计数器的扩展 166
8.2.5 I/O口的扩展 168
习题 176
第9章 MCS-51系列单片机串行通信的汇编编程 177
9.1 项目引入:温度采集系统的数据传输 177
9.2 单片机串行通信的相关知识 180
9.2.1 异步通信和同步通信 180
9.2.2 波特率和接收/发送时钟 181
9.2.3 单工、半双工、全双工通信方式 183
9.2.4 异步串行通信的信号形式 183
9.2.5 MCS-51串行接口的结构 184
9.2.6 串行口特殊功能寄存器 185
9.2.7 单片机的工作方式 187
习题 190
第10章 MCS-51系列单片机实用开发工具 191
10.1 Keil软件使用介绍 192
10.1.1 Keil uVision2软件 193
10.1.2 使用Keil uVision2软件编写和调试程序 198
10.2 Proteus软件使用介绍 204
10.2.1 Proteus 6.9软件 204
10.2.2 Proteus元件库常用元件的中英文对照表 211
习题 213
第11章 MCS系列单片机应用系统设计及开发 214
11.1 单片机应用系统设计的一般步骤和方法 215
11.2 单片机抗干扰设计 220
习题 223
附录A 项目应用程序 224
附录B 书中所用符号说明 240
参考文献 241