51单片机外围电路扩展
第4章MCS-51单片机系统功能扩展

74LS373结构示意图
74LS373的引脚
引脚说明如下: D7~D0: 8位数据输入端。 Q7~Q0: 8位数据输出端。 G:数据输入锁存控制端:当G为“1” 时,锁存器 输出端与输入端数据相同;当G由“1” 变“0” 时,数据输入锁存器中。 OE#: 输出允许端。
P0口与地址锁存器74LS373的连接
4.1 系统扩展概述
4.1.1 最小应用系统
图4.1 MCS–51单片机最小化系统 (a) 8051/8751最小系统结构图;(b) 8031最小系统结构图
4.1.2 单片机系统扩展的内容与方法
1.单片机的三总线结构
图4.2 MCS–51单片机的三总线结构形式
(1)以P0口作为低8位地址/数据总线。 (2)以P2口的口线作高位地址线。 (3)控制信号线。 *使用ALE信号作为低8位地址的锁存控制信号。 *以PSEN#信号作为扩展程序存储器的读选通信号。 *以EA#信号作为内外程序存储器的选择控制信号。 *由RD#和WR#信号作为扩展数据存储器和I/O口的 读选通、写选通信号。 尽管MCS-51有4个并行I/O口,共32条口线,但由于系 统扩展需要,真正作为数据I/O使用的,就剩下P1 口和P3口的部分口线。
锁存器8282 功能及内部结构与74LS373完全一样,只是其引脚的排 列与74LS373不同 ,8282的引脚如下图。
4.2.2 74LS244和74LS245芯片
在单片机应用系统中, 扩展的三总线上挂接
很多负载, 如存储器、并行接口、A/D接口、显
示接口等, 但总线接口的负载能力有限, 因此常
3) 采用地址译码器的多片程序存储器的扩展
例3 要求用2764芯片扩展8031的片外程序存储器,分配的 地址范围为0000H~3FFFH。
项目 一 汽车单片机原理应用(任务五 MCS-51单片机系统扩展)

(3) MCS-51单片机系统地址空间的分配 系统空间分配:通过适当的地址线产生各外部扩展器件的片 选/使能等信号就是系统空间分配。
编址:编址就是利用系统提供的地址总线,通过适当的连接, 实现一个编址惟一地对应系统中的一个外围芯片的过程。编 址就是研究系统地址空间的分配问题。
片内寻址:若某芯片内部还有多个可寻址单元,则称为片内 寻址。
2)全地址译码法
利用译码器对系统地址总线中未被外扩芯片用到的高位 地址线进行译码,以译码器的输出作为外围芯片的片选信 号。常用的译码器有:74LS139,74LS138,74LS154等。 优点是存储器的每个存储单元只有惟一的一个系统空间地 址,不存在地址重叠现象;对存储空间的使用是连续的, 能有效地利用系统的存储空间。缺点是所需地址译码电路 较多,。全地址译码法是单片机应用系统设计中经常采用 的方法。
1。程序和数据之和不大于 存储器总容量。 2。程序必须存放在低地址,
数据存放在高地址。
三、并行I/O口扩展 MCS-51单片机具有四个并行8位I/O口原理均可用做双向并行 I/O接口,但在实际应用中,可提供给用户使用的I/O口只有P1 口和部分P3口线及作为数据总线用的P0口。在单片机的I/O口 线不够用的情况下,可以借助外部器件对I/O口进行扩展 (1)概述 1)单片机I/O口扩展方法 并行I/O口扩展的目的:为外围设备提供一个输入输出通道。 ①并行总线扩展的方法 ②串行口扩展方法(只介绍总线扩展方式下I/O接口扩展方法) ③I/O端口模拟串行方法
二、存储器的扩展 存储器是计算机系统中的记忆装置,用来存放要运行的程 序和程序运行所需要的数据。单片机系统扩展的存储器可分为 程序存储器和数据存储器两种类型。
(1)MCS-51单片机对外部存储器的扩展应考虑的问题
《单片机原理与应用及上机指导》第7章:80C51单片机系统扩展

表7.4 常用SRAM芯片的主要性能
表7.6 80C51与6264的线路连接
7.2 并行I/O扩展
MCS-51系列单片机共有4个并行I/O口,分别是P0、P1、 P2和P3。其中P0口一般作地址线的低8位和数据线使用; P2口作地址线的高8位使用;P3口是一个双功能口,其第 二功能是一些很重要的控制信号,所以P3一般使用其第二 功能。这样供用户使用的I/O口就只剩下P1口了。另外,这 些I/O口没有状态寄存和命令寄存的功能,所以难以满足复 杂的I/O操作要求。因此,在大部分MCS-5l单片机应用系 统的设计中都不可避免地要进行I/O口的扩展。 7.2.1 并行I/O扩展原理 7.2.2 常用的并行I/O扩展芯片
线选法
若系统只扩展少量的RAM和I/O口芯片,可采用线选法。 线选法是把单片机高位地址分别与要扩展芯片的片选端相连,控制选 择各条线的电路以达到选片目的,其优点是接线简单,适用于扩展芯 片较少的场合,缺点是芯片的地址不连续,地址空间的利用率低。
图7.7 片外RAM的读时序
图7.8 片外RAM的写时序
4.数据存储器芯片及扩展电路
(1) 数据存储器 数据存储器扩展常使用随机存储器芯片,用得较多的是 Intel公司的6116(容量为2KB)和6264(容量为8KB), 其性能 如表7.4所示。 (2) 数据存储器扩展电路 80C51与6264的连接 如表7.6所示。
全地址译码法
利用译码器对系统地址总线中未被外扩芯片用到的高位地址线进行译 码,以译码器的输出作为外围芯片的片选信号。常用的译码器有 74LS139、74LS138、74LS154等。优点是存储器的每个存储单元只 有唯一的一个系统空间地址,不存在地址重叠现象;对存储空间的使 用是连续的,能有效地利用系统的存储空间。缺点是所需地址译码电 路较多,全地址译码法是单片机应用系统设计中经常采用的方法 。
单片机的IO扩展

8.3 用51单片机的串行口扩展并行口
串口的方式0用于I/O扩展。方式0为同步移位寄存器工作方
式,波特率为fosc/12。数据由RXD端(P3.0)输入,同步移
位时钟由TXD端(P3.1)输出。
1. 用74LS165扩展并行输入口
如图8-13,用51单片机的串口扩展两个8位并行输入口。
• 74LS165是8位并行输入串行输出的寄存器。当74LS165的S/L#端由高到低 跳变,并行输入端的数据被置入寄存器;
MOVX @DPTR,A
;WR#为低,数据经74LS273口输出
第26页/共97页
【例8-1】 程序编写程序把按钮开关状态通过图8-12的发光二
极管显示出来。
程序如下:
DDIS: MOV DPTR,#0FEFFH ;输入口地址→DPTR
LP: MOVX A,@DPTR
;按钮开关状态读入A中
MOVX @DPTR,A
关状态。 • 当某条输入口线的按钮开关按下时,该输入口线为低电平,读入单片机后
,其相应位为“0”,然后再将口线的状态经74LS273输出,某位低电平时 二极管发光,从而显示出按下的按钮开关的位置。
第24页/共97页
【例8-1】 分析 该电路的工作原理如下
• 当P2.0=0,RD#=0(WR#=1)时,选中74LS244芯片,此时若无按钮开关按 下,输入全为高电平。当某开关按下时则对应位输入为“0”,74LS244的 输入端不全为“1”,其输入状态通过P0口数据线被读入AT89S51片内。
8.1 单片机的系统扩展概述
1. 系统扩展的含义
在单片机芯片外加相应的芯片、电路,使得有关功能得以扩 充,称为系统扩展。
系统扩展包括:外部存储器扩展,I/O接口扩展,总线扩展 等
第6章 MCS-51单片机系统扩展技术

6.3 数据存储器扩展
6.3.1 静态RAM扩展电路
6.3.2 动态RAM扩展电路
返回本章首页
6.3.1 静态RAM扩展电路
常用的静态RAM芯片有6116,6264,62256等,其 管脚配置如图6-13所示。
1.6264静态RAM扩展 额定功耗200mW,典型存取时间200ns,28脚双列直插 式封装。表6-1给出了6264的操作方式,图6-14为6264静 态RAM扩展电路。
图 6 9
A EEPROM
28 17
扩 展 电 路
写入数据
不是指令
查询 中断 延时
2.2864A EEPROM 扩展
2864A有四种工作方式: (1)维持方式 (2)写入方式 (3)读出方式 (4)数据查询方式
图 6 12
28 64
返回本节
A EEPROM
扩 展 电 路
串行E2PROM简介 串行E2PROM占用引线少、接线简单,适用于作为数据存储 器且保存信息量不大的场合。 以AT93C46/56/57/66为例,它是三线串行接口E2PROM, 能提供128×8、256×8、512×8或64×16、128×16、256×16 位,具有高可靠性、能重复擦写100,000次、保存数据100年 不丢失的特点,采用8脚封装。
第6章 MCS-51单片机系统扩展技术
6.1 MCS-51单片机系统扩展的基本概念
6.2 程序存储器扩展技术
6.3 数据存储器扩展 6.4 输入/输出口扩展技术
T0 T1
时钟电路
ROM
RAM
定时计数器
CPU
并行接口 串行接口 中断系统
P0 P1 P2 P3
TXD RXD
INT0 INT1
51系列单片机教程(共15章) 第8章

在大多数应用的场合,还是并行扩展占主导地位。
8.3 读写控制、地址空间分配和外部地址锁存器 8.3.1 存储器扩展的读写控制 RAM芯片:读写控制引脚,记为OE*和WE* ,与MCS-51 的RD*和WR*相连。 EPROM芯片:只能读出,故只有读出引脚,记为OE* , 该引脚与MCS-51的PSEN*相连。 8.3.2 存储器地址空间分配
口部件的扩展下一章介绍。
系统扩展结构如下图:
MCS-51单片机外部存储器结构:哈佛结构 。 MCS-96单片机的存储器结构:普林斯顿结构。 MCS-51数据存储器和程序存储器的最大扩展空间各为 64KB。 系统扩展首先要构造系统总线。 8.2 系统总线及总线构造 8.2.1 系统总线 按其功能通常把系统总线分为三组: 1.地址总线(Adress Bus,简写AB) 2.数据总线(Data Bus,简写DB) 3.控制总线(Control Bus,简写CB) 8.2.2 构造系统总线
地址锁存器一般采用74LS373,采用74LS373的地址总 线的扩展电路如下图(图8-3)。
1.以P0口作为低8位地址/数据总线。 2.以P2口的口线作高位地址线。 3.控制信号线。 *使用ALE信号作为低8位地址的锁存控制信号。 *以PSEN*信号作为扩展程序存储器的读选通信号。 *以EA*信号作为内外程序存储器的选择控制信号。 *由RD*和WR*信号作为扩展数据存储器和I/O口的 读选通、写选通信号。 尽管MCS-51有4个并行I/O口,共32条口线,但由于系 统扩展需要,真正作为数据I/O使用的,就剩下P1 口和P3口的部分口线。 8.2.3 单片机系统的串行扩展技术
8.3.3 外部地址锁存器
常用的地址锁存器芯片有: 74LS373、8282、74LS573 等。 1. 锁存器74LS373 带有三态门的8D锁存器,其引脚其内部结构如下图。
51单片机原理图

2.3 51单片机增强型学习系统各组成部份原理图及功能简介2.3.1 共阴极数码管动态扫描控制图2.2 51单片机增强型学习系统的四位共阴极数码管动态扫描硬件连接原理图AT89S51单片机P0口是一组8位漏极开路型双向I/O 口,也即地址/数据总线复用口。
作为输出口用时,每位能驱动8个TTL 逻辑门电路,对端口写“1”可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash 编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上接电阻。
AT89S51单片机P2口是一个带有内部上拉电阻的8位双向I/O 口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL 逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。
在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX @DPTR 指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器(如执行MOVX @Ri 指令)时,P2口线上的内容(也即特殊功能寄存器SFR 区中P2寄存器的内容),在整个访问期间不改变。
Flash 编程或校验时,P2亦接收高位地址和其它控制信号。
在上面的硬件连接原理图里,我们用到的是P0和P2口控制四位数码管显示的。
四位数码管显示的方式是动态扫描显示,动态扫描显示是单片机中应用最为广泛的一种显示方式之一。
其接口电路如上图是把所有显示器的8个笔划段a-h同名端连在一起由单51单片机增强型学习系统片机的P0.0~P0.7控制,而每一个数码管的公共极(阴极)是各自独立地受单片机P2.7~P2.4控制。
CPU向字段输出口P0口送出字形码时,所有数码管接收到相同的字形码,但究竟是那个数码管亮则取决于P2.7~P2.4的输入结果,所以我们就可以自行决定何时显示哪一位了。
51单片机外围电路

C y7 B A 0 y
/CE1 A12 A8 A7 8K×8 A0 /OE1 O0~O7
/CE7 A12 A8 A7 8K×8 A0 /OE1 O0~O7
MCS–51
74LS138
采用LS138译码器实现ROM扩展示意表
P2.7~P2.5
138 输出
静态LED数码显示电路(共阳极)
七段译码器
七段译码器
七段译码器
七段译码器
七段译码器
Vcc
BCD码 0000 0001 0010 0011 0100
返回
数码管(五)
由于静态显示占用的I/O 口线较多, CPU 的开销很大, 所以为了节省单片机的I/O 口线, 常采用动态扫描方式来作为LED 数码管的接口电路。 动态显示的接口电路是把所有LED的8 个笔划段a~g, dp 同名端连在一起, 而每一个显示器的公共极COM 端与各自独立的I/O 口连接。当CPU 向字段输出口送出字形码时, 所有显示器接收到相同的字形码, 但究竟是那个显示器亮, 则取决于COM 端, 而这一端是由I/O 口控制的, 所以我们就可以自行决定何时显示哪一位了。
MCS-51与32K ROM的连接
P2.7 : : : P2.0 P0.7 : : : P0.0 ALE /EA Psen
CE A14 : : A8 A7 O7 : : : : : : A0 O0 OE
返回
51单片机
程序存储器
数据存储器
数码管显示
键盘
电源模块
指示灯
AD转换
温度传感器
IIC总线
LCD液晶
最小系统板
指示灯电路(一)
一、电源指示灯 通常的指示灯电路是使用发光二极管,接法如下: 当电源正常工作时发光二极管就正常显示
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数码管(二)
共阴与共阳的内部电路如下图所示:
数码管(三)
由图可以看出,共阳和共阴结构的LED 显 示器各笔划段名的安排位置是相同的,当 二极管导通时,相应的笔划段就发亮,由 发亮的笔划段组合而显示出各种字符(a~g 是7个笔段电极,DP为小数点) 需要注意的是:对于同一个字符的编码, 共阴和共阳接法对应的编码是不一样的, 两者互为反码。
0000H~1FFFH E000H~FFFFH
小结:
1,单片机的P0、P2口作为地址数据总线; 2,P0口为数据、地址复用总线,所以必须加入八位锁 存器74LS373来锁存P0口的低八位地址。 3,外接ROM是靠MOVC指令产生的Psen信号来打开数 据三态门,使ROM中的指令通过P0口送入单片机内部。 4,存储器的容量M与其地址线条数n的关系:M=2↑n 5,当使用两片ROM扩展时,可以使用一个反向器实现容 量的扩展,通过ROM芯片的/CE端实现。 6,当使用2片以上的ROM芯片扩展时,就要使用译码器 实现存储容量的扩展,译码器的输入与高位地址相连接, 输出端分别与各ROM芯片的/CE连接(如图所示)。 7,当外接ROM的高八位地址线与P2口高八位线没有完全 用足时,要注意外存储的地址重叠问题。
MCS-51单片机的系统扩展及应用
通过地址总线、数据总线和控制总线实现系统 的扩展 介绍外围电路的扩展
3.1:程序存储器的扩展 3.2:数据存储器的扩展 3.3:指示小灯 3.4:按键扩展 3.5:数码管应用 3.6:A/D转换器接口 3.7:温度传感器接口 3.8:IIC电路扩展 3.9:液晶电路
8K×8
A0
/OE1 O0~O7
8K×8
A0 /OE1 O0~O7
采用LS138译码器实现ROM扩展示意表
P2.7~ P2.5 138 输 出
选中 ROM P2.4~P0.0 有效地址范围
000
001 010
Y0=0
Y1=0 Y2=0
第1片
第2片 第3片
0000H~1FFFH 0000H~1FFFH
按键接口设计(五)
数据输入键盘
按键接口设计(六)
数据输入键是最常用的一种键盘: 上图所示的按键主要是实现了按键按下之 后,对应S0,S1,S2,S3分别由按下之前的 高电平变为低电平,从而实现了输入由1到 0的变化。此类按键一般需要对其进行编码 和确定键值。 当然还有其他种类的键盘,这里就不再一 一列举,希望我们用的时候自己总结。
转电路图 转时序图
外部ROM的容量扩展原理(一)
如何使用两片32K的ROM芯片扩展为64K的存储阵列。
A15 P2口
/CE1 A14 A8
/CE2 A14 A8 A7
MCS - 51
74LS373 A7
P0口 A0 /EA ALE Psen /OE1 O0~O7
A0
/OE2 O0~O7
由两片32K的ROM构成64K存储阵列与A15的 关系表
Vdd
Vdd
Px.y 灌电流方式 输出”0”点 亮LED
Vdd
Px.y
拉电流方式 输出高电平 点亮LED
当然,不是所有的单片机都是这样,PIC 单片机就可以提供30mA的拉电流和灌电流。 单对于大多数IC电路,最好还是使用“灌电流” 去推动负载。
返回
指示灯电路(二)
二、端口指示灯
可以将某一I/O口的输出端接在三极管 的基极,如下图的接法(当LED0端的输入为 高电平时,三极管饱和导通,此时三极管消耗 功率最小,LED亮)实现指示灯电路。
A15 /CE A14~A8 P2口 0000000 0 1111111 1 0000000 0 1111111 1 A7~A0 P0口 0000000 0 1111111 1 地址范围 ROM1工作 ROM2工作 状态 状态
0 0
0000H~ 07FFH
选中
未选中
1 1
0000000 0 8000H ~ 1111111 FFFFH 1
串行传输口设计(三)
由于51单片机接口输出的是TTL电平,而 串口通信需要RS232电平,所以要用 MAX232来实现TTL电平与RS232电平的 转换。如下图所示:
0000H~1FFFH 2000H~3FFFH 0000H~1FFFH 4000H~5FFFH
011
100 101 110 111
Y3=0
Y4=0 Y5=0 Y6=0 Y7=0
第4片
第5片 第6片 第7片 第8片
0000H~1FFFH 6000H~7FFFH
0000H~1FFFH 8000H~9FFFH 0000H~1FFFH A000H~BFFFH 0000H~1FFFH C000H~ DFFFH
数码管(四)
数码管显示器的显示常采用两种方法: 1.静态显示 2.动态扫描显示 静态显示:就是把多个LED 显示器的每一段 与一个独立的并行口连接起来,而公共端则 根据数码管的种类连接到“VCC”或“GND” 端。 这种方法当显示位数较多时单片机中I/O 口 的开销很大,需要提供的I/O 接口电路也较 复杂,但它具有编程简单,显示稳定,CPU 的效率较高的优点。
A
转电路图 返回前一次
B
(参考讲义70页)
片外存储器访问时序说明
P0、P2口作地址和数据总线。其中P0口作为地址和数据复 用总线,前半部(A段)作地址总线,后半部(B段)作为 数据总线。 外部程序存储器ROM的操作步骤如下: 1,单片机必须为其提供完整的(15位)地址信息; 2,ROM芯片的/CE 端=0,选中该芯片; 3,在满足上述条件的基础上,当ROM的/OE=0时(B时 间段),存储器输出数据的三态门打开,并将与输入地址 相对应的存储单元中的指令(数据)向外输出,单片机通 过P0口将指令送至CPU 内部。 74LS373锁存器:将A时间段P0口输出的低位地址进行保存, 使ROM在B时间段仍然可以得到完整的地址信号。
返回
AD转换 数码管显示 程序存储器 温度传感器 键盘 51单片机
IIC总线
电源模块
数据存储器
指示灯 LCD液晶
最小系统板
指示灯电路(一)
一、电源指示灯 通常的指示灯电路是使用发光二极管,接 法如下:
当电源正常工作时发光二极管就正常显示
1.6.5 并行端口在使用时应注意的几个问题
“拉电流”还是“灌电流”----与大电流负载的 连接 (我们以美国ATMEL公司生产的AT8951为例) 1, 使用灌电流的方式与电流较大的负载 直接连接时, 端口可以吸收约20mA的电流而保 证端口电平不高于0.45V(见右上图)。 2,采用拉电流方式连接负载时, AT89C51所能提供“拉电流”仅仅为80μA, 否则输出的高电平会急剧下降.如果我们采用右 下图的方式,向端口输出一个高电平去点亮 LED,会发现,端口输出的电平不是“1”而是 “0”!
复位电路的设计: 单片机的复位分为上电复位和按钮复位。 上电复位是指单片机在加电瞬间,要在 RST引脚上出现大于10ms的正脉冲,使单 片机进入复位状态。 按钮复位是指用户按下“复位”按钮,使 单片机进入复位状态。
按键接口设计(四)
功能转换按键:
此类按键主要是当I/O口用作多种用途时,可以使 用此类按键可以实现同一I/O口的复用。 如图所示:SW DIP-8的引脚1-8可以接某一 I/O口,当按键开关在不同的位置可以控制不同的 外部接口
数码管(六)
当用电平依次选通DS1,DS2,DS3,DS4时, 同时输入相应位的码段数据,这样就是动态 扫描的显示过程,只要扫描的频率不小于 25Hz,由于人眼的视觉停留特性,就不会感 觉闪烁,看起来是4位数码管同时发光的效果。
AD转换 数码管显示 程序存储器 温度传感器 键盘 51单片机
静态LED数码显示电路(共阳极)
Vcc
七段译码器 七段译码器 七段译码器 七段译码器 七段译码器
BCD码 0000
0001
0010
0011
0100
返回
数码管(五)
由于静态显示占用的I/O 口线较多,CPU 的开销很大,所以为了节省单片机的I/O 口线,常采用动态扫描方式来作为LED 数 码管的接口电路。 动态显示的接口电路是把所有LED的8 个笔 划段a~g,dp 同名端连在一起,而每一个 显示器的公共极COM 端与各自独立的I/O 口连接。当CPU 向字段输出口送出字形码 时,所有显示器接收到相同的字形码,但 究竟是那个显示器亮,则取决于COM 端, 而这一端是由I/O 口控制的,所以我们就 可以自行决定何时显示哪一位了。
地址范围
ROM工作 状态 选中
未选中
访问外部程序存储器ROM的时序:
MOVC A,@A+DPTR S1 S2 S3 S4 S5 S6
373地址锁存信号 ALE
存储器数据输出控制 /Psen 地址总线(高八位)P2口
地址数据总线(低8位)P0 口
A15-A8(PC) A7-A0 OP A15-A8 (DPTR+A) A7-A0 常数
数码管(一)
在单片机系统中,通常用LED 数码显示器 来显示各种数字或符号。 八段LED 显示器由8 个发光二极管组成。 LED 显示器有两种不同的连接形式:一种 是8 个发光二极管的正极连在一起,称之 为共阳极LED 显示器;另一种是8 个发光 二极管的负极连在一起,称之为共阴极 LED 显示器。
按键接口设计(一)
按键是人机会话的一个重要的输入工具。 常用按键举例 复位按键 功能转换按键 数据输入键盘 复位按键:对于MCS—51系列单片机的 复位引脚RST上只要出现10ms以上的高电 平,单片机就会实现复位。