图书简介:
目 录
第1章 认识51单片机 1
1.1 单片机基本概念 1
1.2 51系列单片机介绍 2
1.2.1 51单片机的特点和分类 2
1.2.2 MCS-51系列单片机 4
1.2.3 Atmel的51系列单片机 4
1.2.4 STC-51单片机 4
1.2.5 51单片机产品标号与引脚信息 5
1.2.6 单片机的应用 6
1.3 51单片机应用系统开发流程与开发工具 7
1.3.1 51单片机应用系统的开发流程 7
1.3.2 Keil C51开发工具简介 8
1.3.3 Proteus软件使用简介 8
1.3.4 单片机开发仿真器 9
1.3.5 编程器 9
本章小结 10
习题一 10
第2章 51系列单片机基本结构 11
2.1 51单片机的内部结构 11
2.1.1 中央处理器(CPU) 12
2.1.2 存储器 13
2.2 51系列单片机的端口及引脚介绍 19
2.3 51单片机最小系统 23
2.3.1 51单片机最小系统设计 23
2.3.2 51单片机复位电路 24
2.3.4 时钟电路 26
2.4 51单片机的CPU时序 26
本章小结 27
习题二 28
第3章 51单片机汇编语言程序设计 33
3.1 51单片机指令系统简介 33
3.1.1 51单片机汇编指令格式 34
3.1.2 51单片机的指令符号 35
3.1.3 51单片机汇编语言的语句格式 35
3.1.4 51单片机汇编语言的语句格式 36
3.2 51单片机指令的寻址方式 38
3.2.1 立即寻址 38
3.2.2 直接寻址 38
3.2.3 寄存器寻址 39
3.2.4 寄存器间接寻址 39
3.2.5 变址寻址 40
3.2.6 相对寻址 40
3.2.7 位寻址 41
3.3 数据传送类指令 42
3.3.1 内部RAM间的数据传送 42
3.3.2 ACC与外部数据存储器(或扩展的I/O口)传递数据 43
3.3.3 程序存储器数据传送类指令 44
3.3.4 堆栈操作 45
3.3.5 数据交换指令 46
3.4 算术运算类指令 47
3.4.1 加法指令 47
3.4.2 减法指令 47
3.4.3 加1减1指令 48
3.4.4 十进制调整指令 49
3.4.5 乘法和除法指令 50
3.5 逻辑运算的指令 50
3.6 循环移位类指令 52
3.7 控制转移类指令 53
3.7.1 无条件转移指令 53
3.7.2 条件转移指令 55
3.7.3 数值比较不相等转移指令 55
3.7.4 循环转移指令 55
3.7.5 子程序调用及返回指令 56
3.8 位操作类指令 57
3.8.1 位数据传送指令 58
3.8.2 置位和清零指令 58
3.8.3 位逻辑运算指令 58
3.9 51单片机汇编语言程序设计 59
3.9.1 汇编语言概述 59
3.9.2 汇编语言指令 59
3.9.3 顺序程序设计 62
3.9.4 分支程序设计 63
3.9.5 循环程序设计 64
3.9.6 查表程序设计 65
本章小结 66
习题三 66
第4章 单片机C51程序设计 72
4.1 单片机C51语言的基本结构 72
4.2 C51语言数据 75
4.2.1 C51数据类型 75
4.2.2 标识符和关键字 80
4.2.3 常量和变量 82
4.3 C51运算符和表达式 85
4.4 C51语句 89
4.4.1 简单语句与复合语句 89
4.4.2 分支控制语句 89
4.4.3 循环控制语句 92
4.4.4 转移语句 93
4.5 C51函数与预处理命令 94
4.5.1 函数的说明与定义 94
4.5.2 函数的调用 96
4.5.3 内部函数与外部函数 97
4.5.4 C51语言的预处理命令 98
本章小结 99
习题四 100
第5章 51单片机系统的显示和按键接口 102
5.1 LED与51单片机接口设计 102
5.2 LED数码显示原理及应用实现 105
5.2.1 LED数码管显示原理 105
5.2.2 单片机控制的数码管静态显示设计 107
5.2.3 单片机控制的数码管动态显示设计 109
5.2.4 单片机控制的字符型LCD液晶显示及接口设计 111
5.2.5 单片机与LED点阵屏的接口设计 119
5.3 51单片机系统的按键接口 121
5.3.1 常用按键 121
5.3.2 51单片机独立式按键设计 124
5.3.3 51单片机矩阵键盘设计 127
本章小结 132
习题五 132
第6章 51单片机的中断应用 138
6.1 中断系统概述 138
6.1.1 中断的相关概念 138
6.1.2 CPU与外设之间的数据传送方式 138
6.1.3 中断的种类 139
6.2 51系列单片机的中断系统 140
6.2.1 51单片机中断类型 140
6.2.2 中断控制寄存器 141
6.2.3 中断向量地址与中断控制 143
6.2.4 中断处理过程 144
6.3 中断服务程序设计 147
6.3.1 中断初始化 147
6.3.2 中断子程序 147
6.3.3 运用中断法设计信号灯 148
本章小结 151
习题六 151
第7章 51单片机定时/计数器应用 157
7.1 定时/计数器的结构及工作原理 157
7.1.1 定时/计数器的组成 157
7.1.2 定时/计数器的控制寄存器与工作方式 158
7.1.3 定时/计数器的工作方式 159
7.2 定时/计数器的应用 162
7.2.1 51单片机控制的蜂鸣器设计 163
7.2.2 运用51单片机的定时中断方式控制8个LED闪烁 166
7.2.3 运用51单片机的定时/计数器设计简易频率发生器 169
本章小结 172
习题七 172
第8章 51单片机串行通信 176
8.1 串行通信基础 176
8.1.1 波特率 176
8.1.2 串行通信的方式 177
8.1.3 RS-232C电平与TTL电平的转换 178
8.2 认识51单片机串行口 181
8.2.1 51单片机串行口结构 181
8.2.2 51单片机串行口工作方式 183
8.2.3 波特率的设置 186
8.3 51单片机串行口设计 188
8.3.1 用51单片机的串行口扩展控制流水灯设计 188
8.3.2 51单片机串行口的并行转串行设计 190
8.3.3 51单片机与单片机之间的双机通信设计 192
8.3.4 51单片机与PC机之间的通信设计 196
本章小结 198
习题八 198
第9章 51单片机系统的存储器扩展 200
9.1 51单片机的总线结构 200
9.2 51单片机系统扩展结构与编址技术 201
9.3 51单片机系统的存储器并行扩展 203
9.3.1 存储器简介 203
9.3.2 51单片机系统存储器并行扩展设计 205
9.3.3 51单片机的Flash存储器扩展设计 207
9.3.4 I2C总线和串行E2PROM芯片AT24C02介绍 210
9.4 E2PROM芯片AT24C02与51单片机的通信设计 216
本章小结 220
习题九 220
第10章 A/D与D/A转换接口设计 221
10.1 A/D转换基本知识 221
10.2 ADC0809模数转换器 222
10.3 基于ADC0809的简易数字电压表设计 225
10.4 D/A转换的基本知识 229
10.5 集成D/A转换器——DAC0832 231
10.6 51单片机控制简单波形发生器设计 234
10.7 I2C总线A/D与D/A转换器PCF8591 235
10.7.1 PCF8591芯片介绍 235
10.7.2 PCF8591的I2C总线连接与通信 236
10.7.3 PCF8591的A/D和D/A转换器程序设计 237
本章小结 242
习题十 242
第11章 51单片机综合实验开发板设计 244
11.1 单片机应用系统开发过程 244
11.1.1 总体设计 244
11.1.2 硬件设计 245
11.1.3 资源分配 245
11.2 单片机开发工具及选择 246
11.2.1 仿真器 246
11.2.2 其他工具 246
11.3 系统可靠性设计 247
11.4 51单片机综合实验系统设计 248
11.4.1 电源电路 248
11.4.2 51单片机最小系统 249
11.4.3 数码管动态显示接口电路 250
11.4.4 液晶接口电路 252
11.4.5 矩阵键盘电路 254
11.4.6 与PC串行通信电路 256
11.4.7 LED控制电路 258
11.4.8 I2C总线器件电路 260
11.4.9 继电器、蜂鸣器和电机控制电路 261
11.4.10 温度控制电路 265
11.4.11 红外遥控系统 269
11.4.12 实时时钟电路 272
附录A 51系列单片机指令表 273
附录B Keil ?Vision集成开发环境 276
附录C 基于51单片机仿真的Proteus软件使用简介 284
部分习题参考答案 292
参考文献 294
展开
前 言
李克强总理提出要实施“中国制造2025”,坚持创新驱动、智能转型、强化基础、绿色发展,加快从制造大国转向制造强国。基于单片机技术的设计方法正在成为电子系统设计的主流,单片机技术将为国家战略——智能制造提供强有力的支持,因此单片机技术已经成为高等学校电子信息类专业学生必须掌握的一门重要技术。
本书在编写过程中,根据多年来对不同专业单片机课程的教学经验,总结出的一种新的教学思想——诱导和小模块制作教学思想,力求在内容、结构、理论教学与实践教学等方面充分体现单片机教学的特点。与同类教材相比,本书具有以下特点。
(1)教、学、做相结合,将理论与实践相结合。
单片机技术及应用是一门应用性很强的课程,我们在多年的教学过程中,一直采用教、学、做相结合的教学模式,教学效果好。这种经验充分体现在本书内容的编排上,从最基本的应用出发,由实际问题入手,列举大量的与教学内容相关的应用实例,希望通过这些实例使读者对课程产生兴趣,达到更好理解相关教学内容的目的。
(2)理论够用为度,着眼于应用。
结合应用型本科和高职高专教育的特点,本书在编写时按照贴近目标、保证基础、面向更新、联系实际、突出应用,以“必需、够用”为度的原则,突出重点,注重学生的操作技能、分析问题、解决问题的能力培养。
(3)内容安排合理,注重学生学习需要。
为了方便教学和学生学习,在本书的案例分析中对所涉及的元器件、电路图、程序流程图及程序代码都进行了详细介绍;在课程内容上常结合具体案例,分别用汇编语言和C51语言同时编程,让读者体会两种语言的优缺点。在一些地方还对用两种语言完成同一项内容做了比较,这与目前大部分单片机教材基本都使用单一语言进行编程是有一定区别的。每个章节案例分析都用当前流行的Keil和Proteus软件进行仿真调试,使抽象的软件学习与形象的硬件仿真结合起来,对初学者的学习是有很大帮助的,部分解决了没有硬件环境就不能有效完成单片机教学的问题,也为学生自学提供了条件。
全书由11章和3个附录组成,系统地介绍了51单片机的基本知识和设计开发过程。李精华教授对本书的编写思路与大纲进行了总体策划,指导全书的编写,对全书统稿,并具体编写了第1、2、8、9、10、11章,第3、4章由桂林理工大学的邓酩老师编写,第5、6、7章由桂林航天工业学院的李云老师编写,附录A、B、C由桂林航天工业学院的卢望老师编写。
本书使用汇编语言和C51程序设计,案例分析使用当前流行的Keil和Proteus软件,并经过实验调试。本书提供配套PPT、案例程序、习题参考答案等,请登录华信教育资源网(http:// www.hxedu.com.cn)注册下载,也可联系本书编辑(010-88254113,wangxq@phei.com.cn)索取。
本书在编写过程中查阅和参考了相关参考文献和其他资料,从中得到很多帮助和启示;还得到“2017年桂林航天工业学院校级重点课程建设项目基金”的资助,桂林航天工业学院为本书配备了全套的实验板和元器件,在此表示深深的感谢。单片机技术是发展的,相应的教学内容和教学方法也应不断改进,其中一定有许多问题值得深入探讨。我们真诚地希望广大读者对书中的错误和不妥之处给予批评指正。作者E-mail:lijh@glcat.edu.cn。
作 者
2017年6月于桂林航天工业学院
展开