描述
开 本: 16开纸 张: 轻型纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787122279309
单片机接口技术介绍全面:书中系统介绍了51单片机和外围器件的接口方法,详细说明了单片机接口芯片的功能、芯片与单片机的连接电路、芯片汇编语言程序设计、调试和注意事项。
实例丰富,程序代码可靠:书中51系列单片机实例部分,每一种实例选用一种接口芯片,对每一种芯片都提供配套的汇编语言程序。
本书主要基于当前广为应用的单片机开发软件Keil C51集成开发环境和单片机仿真软件Proteus,在介绍51单片机基本结构的基础上,进一步详细介绍了单片机仿真软件Proteus的使用方法、单片机开发软件Keil C51集成开发环境及Keil C51的使用方法、源代码级调试和Keil C与Proteus联合调试方法,用大量实例说明了单片机和外围芯片的连接方法,同时提供电子资料包,详细展示Proteus仿真原理图、程序代码和仿真调试方法,便于读者学习、实践。
本书适用于电工电子技术人员参考和套用,也可作为各工科大学、专科院校和中等专业学校(包括中技和职高)的51系列单片机辅助或参考教材。
1.1 51单片机基本结构 1
1.1.1 51单片机的基本组成 1
1.1.2 51单片机的引脚与功能 2
1.1.3 51单片机的内部存储器 3
1.1.4 专用寄存器 5
1.2 51单片机的汇编语言 6
1.2.1 一个极简单的汇编语言程序 6
1.2.2 汇编语言特点 6
1.2.3 汇编语言语句的种类和格式 6
1.2.4 汇编语言的基本语法规则 7
1.2.5 伪指令 8
1.2.6 51单片机的指令 9
1.3 51系列单片机 11
第2章 单片机仿真软件Proteus的使用
2.1 进入Proteus ISIS 15
2.2 工作界面 16
2.3 Proteus ISIS原理图设计 22
2.4 Proteus ISIS原理图设计中若干注意事项 32
2.5 Proteus 软件的仿真调试方法 34
2.5.1 直接用扩展名为HEX的十六进制文件调试 34
2.5.2 源代码级调试 37
2.5.3 Keil C与Proteus联合调试 45
2.6 Proteus VSM仿真工具简介 49
第3章 单片机开发软件Keil C51的使用
3.1 Keil C51简介 54
3.2 安装Keil C51 54
3.3 如何建立一个工程 56
3.4 单片机选型 57
3.5 创建源程序 58
3.6 把新创建源程序加入到工程文件中 60
3.7 工程的设置 61
3.8 编译 66
3.9 调试 66
3.10 调试窗口(DEBUG Window) 68
第4章 LED显示器
4.1 和单片机直接连接的LED显示器 71
4.1.1 两位LED显示器 71
4.1.2 四位LED显示器 72
4.2 通过显示译码器和单片机连接的LED显示器 76
4.2.1 74LS48七段显示译码器的应用 76
4.2.2 CD4543共阳极七段显示译码器的应用 79
4.3 通过触发器寄存器芯片和单片机连接的显示器 81
4.3.1 单片机AT89C51通过触发器74LS273连接的显示器 81
4.3.2 单片机AT89C51通过移位寄存器74LS164连接的显示器 83
4.4 通过专用显示器驱动芯片和单片机连接的显示器 84
4.4.1 MAX7219/7221新型高集成度七段共阴极LED驱动芯片简介 85
4.4.2 MAX7219/7221与单片机的连接 86
4.4.3 显示8位LED的汇编语言程序 88
4.4.4 显示16位LED的汇编语言程序 89
4.4.5 程序设计与调试 96
第5章 内存的扩展
5.1 关于存储器 98
5.2 程序存储器的扩展 101
5.2.1 2K-EPROM芯片2716 101
5.2.2 64K-EPROM芯片27512 103
5.3 数据存储器的扩展 105
5.3.1 2K-RAM芯片6116 105
5.3.2 32K-RAM芯片62256 106
5.4 程序存储器和数据存储器一同扩展 108
5.5 串行存储器的扩展 111
5.5.1 PCF8570简介 111
5.5.2 PCF8570 与单片机的连接 111
5.5.3 程序设计和调试 113
5.5.4 汇编语言程序 113
5.5.5 使用PCF8570的注意事项 118
第6章 A/D转换器
6.1 通用并行输出8位单路A/D转换器ADC0804 119
6.1.1 ADC0804简介 119
6.1.2 ADC0804与单片机AT89C52的连接 121
6.1.3 程序设计说明及调试 122
6.1.4 ADC0804的汇编语言程序1 123
6.1.5 ADC0804的汇编语言程序2 124
6.1.6 ADC0804的汇编语言程序3 125
6.1.7 使用ADC0804的注意事项 126
6.2 通用串行输出8位A/D转换器TLC549 127
6.2.1 TLC549简介 127
6.2.2 TLC549与单片机AT89C52的连接 128
6.2.3 程序设计说明及调试 128
6.2.4 TLC549的汇编语言程序1 130
6.2.5 TLC549的汇编语言程序2 131
6.2.6 使用TLC549的注意事项 132
6.3 串行输出8位A/D转换器ADC0832 132
6.3.1 ADC0832简介 132
6.3.2 ADC0832与单片机AT89C52的连接 134
6.3.3 程序设计说明及调试 134
6.3.4 ADC0832的汇编语言程序 136
6.3.5 使用ADC0832的注意事项 138
6.4 串行输出8通道12位A/D转换器MAX128 138
6.4.1 MAX128简介 138
6.4.2 MAX128与单片机AT89C52的连接 142
6.4.3 程序设计说明及调试 142
6.4.4 MAX128的汇编语言程序 145
6.4.5 使用MAX128的注意事项 149
第7章 D/A转换器
7.1 单路串行10位D/A转换器MAX504 151
7.1.1 MAX504简介 151
7.1.2 MAX504和单片机AT89C52的连接 154
7.1.3 程序设计说明及调试 155
7.1.4 MAX504汇编语言程序1 157
7.1.5 MAX504汇编语言程序2 159
7.1.6 使用MAX504的注意事项 161
7.2 通用串行输出10位D/A转换器TLC5615 161
7.2.1 TLC5615 D/A转换器简介 161
7.2.2 TLC5615 D/A转换器与单片机AT89C52的连接 164
7.2.3 程序设计说明及调试 164
7.2.4 汇编语言程序 166
7.2.5 使用TLC5615的注意事项 166
第8章 时钟芯片
8.1 不用时钟芯片构成的时钟 168
8.1.1 关于日历时钟的说明 168
8.1.2 不用时钟芯片构成时钟的单片机硬件电路 169
8.1.3 程序设计 169
8.1.4 仿真和调试 174
8.2 低功耗带RAM实时时钟芯片DS1302 175
8.2.1 DS1302芯片简介 175
8.2.2 DS1302与单片机AT89C52的连接 176
8.2.3 读写DS1302时钟区特定单元汇编语言程序 177
8.2.4 读写DS1302 RAM的汇编语言程序 180
8.2.5 程序设计说明及调试 183
8.2.6 使用DS1302的注意事项 184
8.3 低功耗、多功能时钟日历芯片PCF8563 184
8.3.1 PCF8563简介 184
8.3.2 PCF8563与单片机的连接 187
8.3.3 汇编语言程序 188
8.3.4 程序设计说明及调试 193
8.3.5 使用PCF8563的注意事项 194
第9章 模拟开关
9.1 四双向电子模拟开关74HC4066 195
9.1.1 单片机和74HC4066模拟电子开关的连接 195
9.1.2 程序设计 196
9.1.3 仿真和调试 197
9.2 16选1电子模拟开关CD4067 197
9.2.1 单片机AT89C52和CD4067模拟电子开关的连接 197
9.2.2 程序设计 198
9.2.3 仿真和调试 199
9.3 串行控制的8通道单刀单掷开关MAX335 200
9.3.1 MAX335简介 200
9.3.2 MAX335与单片机AT89C52的连接 202
9.3.3 程序设计说明及调试 204
9.3.4 汇编语言程序 205
9.3.5 使用MAX335的注意事项 207
9.4 串行控制的低电压8通道多路开关MAX349 208
9.4.1 MAX349简介 208
9.4.2 MAX349与单片机的连接 209
9.4.3 程序设计说明及调试 211
9.4.4 汇编语言程序 211
9.4.5 使用MAX349的注意事项 212
第10章 单总线器件
10.1 序列号或信息按钮(iButton)DS1990A 213
10.1.1 DS1990A简介 213
10.1.2 DS1990A与单片机AT89C52的连接 216
10.1.3 程序设计说明及调试 217
10.1.4 汇编语言程序 217
10.1.5 使用DS1990A的注意事项 219
10.2 1024位1-Wire EEPROMDS2431 220
10.2.1 DS2431简介 220
10.2.2 DS2431与单片机AT89C52的连接 225
10.2.3 程序设计说明及调试 226
10.2.4 汇编语言程序1 227
10.2.5 汇编语言程序2 229
10.2.6 使用DS2431的注意事项 233
第11章 传感器
11.1 2-Wire式数字温度传感器DS1621 234
11.1.1 DS1621简介 234
11.1.2 DS1621与单片机AT89C52的连接 236
11.1.3 程序设计说明及调试 236
11.1.4 DS1621的汇编语言程序 238
11.1.5 使用DS1621的注意事项 242
11.2 1-Wire数字温度传感器DS18B20 242
11.2.1 DS18B20简介 242
11.2.2 DS18B20与单片机AT89C52的连接 248
11.2.3 程序设计说明及调试 249
11.2.4 DS18B20的汇编语言程序 250
11.2.5 使用DS18B20的注意事项 252
第12章 数字电位器
12.1 256抽头低漂移双数字电位器MAX5413 254
12.1.1 MAX5413简介 254
12.1.2 MAX5413和单片机AT89C52的连接 256
12.1.3 程序设计说明及调试 256
12.1.4 汇编语言程序MAX5413.ASM 258
12.1.5 使用MAX5413的注意事项 259
12.2 线性32抽头数字电位器MAX5435 260
12.2.1 MAX5432-MAX5435简介 260
12.2.2 MAX5434/MAX5435和单片机AT89C52的连接 262
12.2.3 程序设计说明及调试 263
12.2.4 汇编语言程序 263
12.2.5 使用MAX5435的注意事项 268
第13章 I/O扩展器件
13.1 8255A可编程并行I/O芯片 269
13.1.1 8255A简介 269
13.1.2 8255A和单片机AT89C52的连接 272
13.1.3 程序设计 272
13.1.4 仿真和调试 274
13.2 8位并行输入、串行输出的同步移位寄存器74LS166 274
13.2.1 74LS166简介 274
13.2.2 74LS166与单片机AT89C52的连接 275
13.2.3 程序设计说明及调试 276
13.2.4 汇编语言程序 276
13.2.5 使用74LS166的注意事项 277
13.3 具有三态输出的8缓冲器和线驱动器74LS244 277
13.3.1 单片机AT89C52和74LS244 的连接 277
13.3.2 程序设计 278
13.3.3 仿真和调试 279
13.4 I2C总线16位远程I/O扩展口芯片PCF8575 279
13.4.1 PCF8575简介 280
13.4.2 PCF8575 与单片机的连接 282
13.4.3 程序设计说明及调试 282
13.4.4 PCF8575作为输入口的汇编语言程序 284
13.4.5 PCF8575作为输出口的汇编语言程序 287
13.4.6 使用PCF8575的注意事项 288
附录 51单片机指令集
参考文献
单片机应用和教学流行的是8051系列。8051是Intel公司1980年设计的8位MCU。20世纪80年代中期,Intel公司将8051单片机内核使用权以专利互换或出售形式转让给世界许多著名的IC制造厂商,如Philips、Atmel、Dallas、Infineon、ADI、Winbond和Silicon Labs公司等,这样8051就变成有众多制造厂商支持的、发展出上百个品种的大家族。到目前为止,其他任何一个单片机系列均未发展到如此的规模,近30年来8051一直是普遍流行的产品。8051是单片机教学的机型,因为它是目前应用广泛、使用人数也多的单片机,已成为单片机领域的实际标准。51系列单片机作为理想的学习用单片机的另一理由是:其内部资源丰富,样片容易得到,学习资料也非常丰富,包括汇编语言和C 语言的工程实例非常多,从而降低了进行单片机实验的门槛。
本书特点:
· 本书是一本介绍51单片机如何应用的入门读物。所应用的软件有两个:单片机开发软件Keil C51集成开发环境和单片机仿真软件Proteus。
· 本书大部分篇幅是介绍51单片机和外围器件接口方法的。每一种实例选用一种接口芯片。介绍的次序:首先是该单片机接口芯片功能简介,其次是该芯片与单片机连接电路原理,该芯片汇编语言程序,程序设计和调试,后是使用该芯片的注意事项。
· 本书中51系列单片机实例部分,对每一种芯片都提供配套的汇编语言程序。
为与Proteus软件中的电路图保持一致,本书电路中电阻、电容单位的不规范处不做更改,如10K不改为10 kΩ,10uF不改为10 μF。
本书共分13章,先将各章内容说明如下:
第1章介绍51单片机的基础知识,包括51单片机的基本结构、51单片机的汇编语言以及51系列单片机的常用型号及功能等。
第2章介绍单片机仿真软件Proteus的使用方法,包括源代码级调试和Keil C与Proteus联合调试方法。
第3章介绍单片机开发软件Keil C51集成开发环境及Keil C51的使用方法。第4章到第13章全是单片机和外围芯片连接的例子,每一章讨论一类芯片。
第4章介绍LED显示器,包括和单片机I/O线直接连接的LED、通过显示译码器和单片机连接的LED显示器、通过触发器和移位寄存器连接的LED显示器以及通过专用显示器驱动芯片和单片机连接的显示器。
第5章介绍内存的扩展,包括程序存储器的扩展、数据存储器的扩展、程序存储器和数据存储器的一同扩展以及串行存储器的扩展。
第6章介绍A/ D 转换器, 包括并行8位A/D转换器ADC0804、串行8位A/D转换器TLC549、串行8位A/D转换器ADC0832和串行12位A/D转换器MAX128。
第7章介绍 D/A 转换器, 包括串行10位D/A转换器MAX504和串行10位D/A转换器TLC5615。
第8章介绍时钟芯片, 包括带RAM实时时钟芯片DS1302和不带RAM实时时钟芯片PCF8563以及不用时钟芯片的时钟日历电路。
第9章介绍模拟开关, 包括模拟电子开关74HC4066和CD4067以及串行控制的8通道单刀单掷开关MAX335和串行控制的8通道多路开关MAX335。
第10章介绍单总线器件, 包括信息按钮DS1990A和1024位1-Wire EEPROM DS2431。
第11章介绍传感器, 包括两种数字传感器:温度传感器DS1621和温度传感器DS18B20。
第12章介绍数字电位器, 包括256抽头双数字电位器MAX5413和32抽头数字电位器MAX5435。
第13章介绍I/O口的扩展,包括通过可编程并行I/O接口芯片8255A、串行输出移位寄存器74LS166、8位缓冲器74LS244的扩展以及通过I2C总线16位远程I/O 扩展口芯片PCF8575的扩展。
此外,本书附录提供51单片机指令集。
电子资料包使用说明:电子资料包的内容,仍是以书中章节为单位。在每一章(指第4~13章)下,都有1个章文件夹,每章下面每节又有节文件夹,节文件夹内有多个文件。其中,扩展名是“DSN”的文件是Proteus仿真原理图文件。在Proteus 软件已安装在电脑中的前提下,双击具有“DSN”扩展名的文件就可进入显示电路原理图画面,也就是Proteus的调试状态。扩展名是“ASM”的是51系列汇编语言程序;扩展名是“UV2”的是Keil C51工程文件;扩展名是“HEX”的是用Keil C51软件对上述汇编语言程序编译生成的十六进制文件。在原理图的单片机上双击鼠标左键,在弹出的“编辑元件”对话框内的“Program Files”文本框中输入“XXX.HEX”,单击“确定”按钮即完成十六进制程序文件载入,之后就可以仿真和调试。
电子资料包下载链接:http://download.cip.com.cn/html/20161008/353163041.html。
适用读者:本书适用于51系列单片机包括51汇编语言的初学者,书中汇编语言的程序实例全部经过实际调试。对于有一定基础的人,书中的模块可以直接使用。本书既适用于工程技术人员参考和套用,也可作为各工科大学、专科院校和中等专业学校(包括中技和职高)的51系列单片机辅助或参考教材。
致谢:本书在编写过程中,得到了化学工业出版社有关编辑的指导和帮助。在此表示衷心感谢。
由于编著者水平有限且时间仓促,书中难免存在不足之处,恳请读者批评指正,可通过电子邮箱[email protected]联络。
编著者
评论
还没有评论。