1.系统总线构造
存储器的扩展实际上就是单片机和片外存储器之间地址总线、数据总线和控制总线的具体连接。由于受引脚数目的限制。MCS-51系列单片机没有专用的对外地址总线和数据总线。其P0接口是通用的I/O接口,同时还是双向数据总线和低8位的地址总线,P2接口则是高8位的地址总线,结合相应的控制线就可以进行存储器的扩展。图8-10所示是MCS-51系列单片机扩展总线构造图。
P0接口是数据总线和低8位地址总线分时复用接口,输出地址时ALE变为高电平有效,输出数据时ALE无效。扩展时需外接地址锁存器把地址和数据分开。常用的地址锁存器有74LS373等。74LS373是带三态输出的8位锁存器,当三态端为有效低电平,使能端G为高电平时,输出跟随输入变化;当G端由高变低时,输出端8位信息被锁存,直到G端再次有效。所以选用74LS373做地址锁存器时,可以直接将AT89S51的ALE接它们的使能端,而将锁存器的三态控制端接地。
图8-10 MCS-51系列单片机扩展总线构造图
2.扩展存储器编址技术
存储器编址就是使用系统提供的地址线,通过适当的连接,使系统的每一个存储单元都有一个唯一的地址。当扩展有多个存储器芯片时,涉及芯片的选择问题,由于存储器芯片都有片选信号引脚,因此存储器编址实质上就是如何产生芯片的片选信号。通常有两种编址方法:线选法和译码法。
(1)线选法 直接用地址位作为存储芯片的片选信号,即将地址线直接与存储芯片的片选端相连接。这种编址方式的特点是连接简单,不需外加电路,但对存储空间的使用是断续的,不能充分利用存储空间,扩展的存储容量受到一定限制,只适用于小规模单片机系统的存储器扩展。
(2)译码法 用译码器对系统的高位地址进行译码,把译码器的输出信号作为存储芯片的片选信号。这是一种常用的存储器编址方法,能有效地利用存储空间地址,适合于大容量多芯片存储器扩展。常用的译码器芯片有74LS138(3线—8线译码器)、74LS139(双2线—4线译码器)和74LS154(4线—16线译码器)。译码法扩展法如图8-11所示。
(www.xing528.com)
图8-11 译码法扩展法
3.片外存储器的扩展
MCS-51系列单片机具有很强的系统扩展能力,可以扩展64KB的程序存储器和64KB的数据存储器,使得应用系统的设计更灵活,对用户要求的适应性更强。
MCS-51系列单片机的P0接口和P2接口通常用作扩展总线使用,进行系统扩展。P2接口作为外部存储器的高8位地址(A8~A15)输出口,P0接口作为外部存储器的低8位地址(A0~A7)输出口。片外数据存储器是用和作为读/写选通信号,而片外程序存储器是用作为读选通信号。MCS-51系列单片机在访问片外数据存储器时,或R有效而无效;反之,有效而、无效。这样,MCS-51系列单片机不会同时访问程序存储器和数据存储器空间,因此MCS-51系列单片机可以同时扩展数据存储器和程序存储器。
图8-12 MCS-51系列单片机与片外程序存储器的一种接口逻辑
(1)程序存储器扩展 由于MCS-51系列单片机在扩展存储器时,P0接口既作为数据总线D0~D7的信号线,又作为地址总线A0~A7的信号线,因此需外加一个锁存器以把数据线和地址线隔离。程序存储器的片选引脚可以接P2的某一位或者用地址译码法,应根据系统扩展存储器容量和芯片数量来设计。图8-12所示是MCS-51系列单片机与片外程序存储器的一种接口逻辑。
(2)数据存储器扩展 图8-13所示是MCS-51系列单片机与片外数据存储器的一种接口逻辑。图中,片外数据存储器的地址高8位A8~A15接P2接口,低8位地址线A0~A7接地址锁存器(74LS373)输出端。读/写控制信号分别连MCS-51系列单片机的、。片选引脚的连接同程序存储器扩展。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。