《单片机原理及应用教程》由张元良主编,共12章。第1章概述了单片机的基础知识以后,介绍了3种实用软件:Keil、Protel 99SE及Proteus;第2章介绍MCS-51系列单片机的内部结构、时序及单片机的最小系统;第3章介绍MCS-51系列单片机的指令系统,每一类型指令系统后都有实例解析,帮助学生加深对51系列单片机程序指令的理解;第4章通过实例介绍单片机汇编语言程序设计的流程和方法;第5~7章分别介绍单片机中断系统、定时器/计数器及串行口的结构与工作原理,每章都有非常简单、实用、完整的实例解析,详细解析电路原理图的设计、程序的编写以及仿真软件的应用,学生可以实际操作一遍,就相当于完成了一个完整的工程实际设计的仿真调试,从而了解单片机实际开发流程;第8章通过实例介绍单片机系统扩展及实用接口技术;第9章系统地介绍单片机开发流程;第10~12章介绍了3个完整的工程实例。
《单片机原理及应用教程》由张元良主编,系统地介绍了MCS-51系列单片机的结构、指令系统、程序设计、中断系统、定时器/计数器、串行口、系统扩展及实用I/O接口技术等基本原理及初步应用;还介绍了几种常用单片机开发应用软件(Keil、Protel 99SE、Proteus),以利于读者边学习边实践;并且介绍了单片机开发流程及典型应用实例。书中配有丰富的实例详解及习题。
《单片机原理及应用教程》可作为大中专院校单片机原理及应用课程的教材,或作为单片机爱好者的自学用书,也可作为单片机应用开发技术人员、智能仪表开发技术人员及研究生的设计参考用书。
第1章 单片机与开发环境1
1.1 单片机概述1
1.1.1 微型计算机1
1.1.2 单片机1
1.1.3 单片机应用系统2
1.1.4 单片机的发展和应用3
1.2 Keil仿真软件4
1.3 Protel 99 SE软件8
1.3.1 Protel 99 SE软件安装9
1.3.2 Protel 99 SE软件使用11
1.4 Proteus仿真软件15
1.4.1 Proteus ISIS功能简介16
1.4.2 绘制原理图19
1.4.3 给CPU载入程序22
1.4.4 在Proteus中调试程序22
习题23
第2章 MCS-51系列单片机的硬件结构25
2.1 单片机的内部结构25
2.1.1 内部结构框图25
2.1.2 引脚与功能27
2.2 单片机的存储器结构28
2.2.1 程序存储器28
2.2.2 数据存储器29
2.2.3 特殊功能寄存器31
2.3 单片机的并行I/O口35
2.3.1 I/O口的特点35
2.3.2 I/O口的内部结构35
2.3.3 I/O口的功能36
2.3.4 I/O口的负载能力37
2.4 单片机的时钟与时序37
2.4.1 时钟电路38
2.4.2 CPU时序38
2.5 单片机的复位40
2.6 单片机最小系统41
习题42
第3章 MCS-51系列单片机的指令系统43
3.1 指令系统简介43
3.1.1 指令格式43
3.1.2 指令分类44
3.2 单片机寻址方式及实例解析45
3.3 单片机指令系统及实例解析48
3.3.1 数据传送指令48
3.3.2 算术指令54
3.3.3 逻辑指令60
3.3.4 转移指令65
3.3.5 位操作指令74
3.3.6 伪指令77
习题82
第4章 汇编语言程序设计84
4.1 汇编语言源程序汇编84
4.2 汇编语言的程序举例85
4.2.1 基本程序设计85
4.2.2 子程序设计和调用93
4.2.3 应用控制流程设计95
习题97
第5章 MCS-51系列单片机的中断系统98
5.1 中断的概念98
5.2 中断源99
5.3 中断控制寄存器99
5.4 中断的优先级102
5.5 中断的响应103
5.6 由中断模块程序认知中断处理过程105
5.6.1 外部中断模块代码105
5.6.2 定时器中断模块代码105
5.7 通过实例掌握外部中断106
习题108
第6章 MCS-51系列单片机的定时器/计数器109
6.1 定时器/计数器的结构109
6.1.1 计数功能110
6.1.2 定时功能110
6.2 定时器/计数器的相关寄存器110
6.2.1 定时器/计数器的方式寄存器TMOD111
6.2.2 定时器/计数器的控制寄存器TCON112
6.2.3 中断允许寄存器IE113
6.2.4 中断优先级寄存器IP113
6.3 定时器/计数器的工作方式113
6.4 定时器/计数器的知识扩展117
6.4.1 定时器的溢出同步问题117
6.4.2 运行中读取定时器/计数器118
6.5 由定时器/计数器模块程序认知定时器/计数器处理过程119
6.6 通过实例掌握定时器121
6.7 通过实例掌握计数器124
习题125
第7章 MCS-51系列单片机的串行口126
7.1 串行通信的概念126
7.2 MCS-51系列单片机串行口的结构129
7.2.1 串行口的结构129
7.2.2 串行口控制寄存器130
7.2.3 串行口的工作方式131
7.2.4 串行通信的波特率135
7.3 串行口通信136
7.3.1 双机通信136
7.3.2 多机通信136
7.4 通过实例掌握串行口通信137
7.4.1 硬件设计137
7.4.2 软件设计140
7.4.3 PC机与单片机串行通信的实现142
习题143
第8章 MCS-51系列单片机系统扩展及实用I/O接口技术144
8.1 存储器的扩展144
8.1.1 程序存储器扩展144
8.1.2 数据存储器的扩展145
8.1.3 存储器综合扩展146
8.1.4 数据存储器扩展实例148
8.2 开关量输入接口设计151
8.2.1 键盘接口151
8.2.2 4×4矩阵键盘扫描实例152
8.2.3 继电器输入接口156
8.2.4 行程开关输入接口156
8.2.5 光电编码器输入接口157
8.3 开关量输出接口设计157
8.3.1 蜂鸣器输出接口157
8.3.2 继电器输出接口158
8.3.3 固态继电器输出接口158
8.3.4 LCD接口158
8.4 常用A/D转换接口设计160
8.4.1 TLC2543与单片机接口实例160
8.4.2 ADC0832与单片机接口实例164
8.4.3 A/D转换器应用实例167
8.5 常用D/A转换接口设计172
8.5.1 TLC5618与单片机接口实例172
8.5.2 MAX518与单片机接口实例175
习题178
第9章 MCS-51系列单片机开发流程179
9.1 总体方案设计179
9.1.1 系统功能要求179
9.1.2 硬件总体方案179
9.1.3 软件总体方案181
9.2 硬件和软件细分设计181
9.2.1 硬件设计181
9.2.2 软件设计及调试182
9.3 系统的Proteus仿真和调试183
9.3.1 利用Proteus绘制电路图183
9.3.2 利用Proteus软件仿真184
9.4 系统调试186
9.4.1 单片机应用系统的一般调试方法186
9.4.2 数码管显示系统调试187
第10章 数字电子钟设计实例189
10.1 设计要求189
10.2 硬件设计189
10.2.1 按键电路设计190
10.2.2 时钟芯片DS1302的性能特点和工作原理190
10.2.3 时钟芯片DS1302与单片机的连接192
10.2.4 电路原理图193
10.3 软件设计194
10.3.1 显示子程序软件流程图194
10.3.2 显示子程序的代码194
10.3.3 主函数软件流程图195
10.3.4 总的汇编语言源程序代码195
第11章 LED阵列动态显示设计实例209
11.1 设计要求209
11.2 硬件设计209
11.2.1 74HC595简介209
11.2.2 点阵LED简介212
11.2.3 Protel电路原理图212
11.3 软件设计214
11.3.1 程序流程图214
11.3.2 源程序代码214
第12章 数字温度计设计实例218
12.1 设计要求218
12.2 硬件设计218
12.2.1 温度芯片DS18B20的介绍218
12.2.2 一线式总线的概念220
12.2.3 硬件总体设计电路图220
12.3 软件设计222
12.3.1 DS18B20子程序流程图222
12.3.2 DS18B20子程序代码222
12.3.3 数码管串行方式显示子程序流程图224
12.3.4 数码管串行方式显示子程序代码224
12.3.5 主函数软件流程图225
12.3.6 整体源程序代码225
附录A MCS-51系列单片机汇编指令表229
参考文献234