《MCS51单片机扩展存储器的设计ppt课件.ppt》由会员分享,可在线阅读,更多相关《MCS51单片机扩展存储器的设计ppt课件.ppt(48页珍藏版)》请在三一办公上搜索。
1、1,MCS-51单片机扩展存储器的设计,2,MCS-51单片机扩展存 储器的设计,一.概述二.系统总线及总线构造 三. 读写控制、地址空间分配和外部地址锁存器四.程序存储器EPROM的扩展五. 静态数据存储器的扩展六.EPROM和RAM的综合扩展七.E2PROM的扩展,3,4,一. 概述,1. 单片机扩展的基本概念,单片机中虽然已经集成了CPU、I/O口、定时器、中断系统、存储器等计算机的基本部件(即系统资源),但是对一些较复杂应用系统来说有时感到以上资源中的一种或几种不够用,这就需要在单片机芯片外加相应的芯片、电路,使得有关功能得以扩充,我们称为系统扩展(即系统资源的扩充)。 MCS-51系
2、列单片机有很强的外部扩展功能,大部分常规芯片可用于其外围扩展电路中。扩展的内容主要有总线、程序存储器、数据存储器、I/O口扩展等。,5,2. 系统扩展分类 单一功能的扩展 综合功能的扩展,3. 系统扩展需要解决的问题 单片机与相应芯片的接口电路连接(即地址总线、数据总线、控制总线的连接)与编程。,6,51系列单片机没有专用的对外地址总线和数据总线,其P0口和P2口既是通用I/O口,同时P0口还是分时复用的双向数据总线和低8位地址总线(一般需要加一级锁存器),而P2口则是高8位地址总线。,4. 单片机的地址总线和数据总线,要进行系统扩展,首先要构造系统总线。,7,二. 系统总线及总线构造,所谓总
3、线,就是连接计算机各部件的一组公共信号线。MCS-51使用的是并行总线结构,按其功能分三类:1. 地址总线 地址总线用于传送单片机发出的地址信号,以便进行存储单元和I/O端口的选择。地址总线是单向的,只能由单片机向外送出。地址总线的数目决定着可以直接访问的存储单元的数目。 如MCS-51系列单片机地址总线宽为16位,所以可寻址范围为216=64KB。其中,P0口作低8位,P0口作地址线时要锁存, P2口作高8位。,8,2. 数据总线 数据总线用于在单片机与存储器之间或单片机与I/O之间传送数据。单片机系统数据总线的位数与单片机处理数据的字长一致。 MCS-51单片机是8位字长,所以数据总线的位
4、数也是8位的。数据总线是双向的,可以进行两个方向的传送。3. 控制总线 控制总线实际上就是一组控制信号线,包括单片机发出的,以及从其他部件传送给单片机的。对于一条具体的控制信号线来说,其传送方向是单向的,但是由不同方向的控制信号线组合的控制总线则表示为双向。,9,4. 构造系统总线 由于单片机的扩展系统是并行总线结构,因此单片机系统扩展的首要问题是构造系统总线,然后再往系统总线上“挂”存储器芯片或I/O接口芯片。 MCS-51单片机受引脚数目的限制,数据线和低8位地址线是复用的,由P0口线兼用。为了将他们分离出来,需要在单片机外部增加地址锁存器,从而构成与一般CPU相类似的片外三总线。如图1所
5、示。 地址锁存器一般采用74LS373,P0口送出的低8位有效地址信号是在ALE(地址锁存允许)信号变高的同时出现的,并在ALE由高变低时,将出现在P0口的地址信号锁存到外部地址锁存器74LS373中,随后,P0口又作为数据总线口。,10,图1 MCS-51扩展的三总线,11,构造系统总线的具体方法 地址总线:以P0口作为低8位地址总线(必须外接 一个锁存器74LS373 )。以P2口的口线作为高位地 址线。需用几位就引几条口线。 数据总线:以P0口的口线作为数据总线。 控制总线: 使用ALE信号作为低8位地址的锁存控制信号。 用/PSEN信号作为扩展程序存储器的读选通信号。 用/EA信号作为
6、内外程序存储器的选择控制信号。 用/RD和/WR信号作为扩展数据存储器和I/O的读选通 信号。,12,三. 读写控制、地址空间分配和外部地址锁存器,3.1 存储器扩展的读写控制 外扩的RAM芯片的读、写控制引脚/OE和/WE分别与MCS-51的/RD和/WR引脚相连。 外扩的EPROM正常使用时只能读,不能写,故芯片无写控制引脚,只有读出引脚/OE,与51的/PSEN相连。3.2 存储器地址空间分配 存储器的地址空间分配,实际上就是通过地址线,与存储器芯片的地址引脚适当连接,最终达到一个存储器单元对应一个地址的要求。,13,存储器地址空间分配,通常把单片机系统的地址笼统地分为低位和高位地址,存
7、储器芯片的某一存储单元选择使用低位地址,剩下的高位地址才作为芯片选择使用,因此芯片的选择都是使用高位地址线。 在16根地址线中,高、低位地址线的数目并不是固定的,我们只是把用于存储单元选择所使用的地址线,都称为低位地址线,其余的就为高位地址线。 存储器地址空间分配除了考虑地址线的连接外,还需考虑各存储器芯片在整个存储空间中所占据的地址范围,以便在程序设计时正确地应用它们。 常用的存储器地址分配方法有:线选法、译码法。,14,存储器地址空间分配,a. 线选法 线选法就是直接利用系统的高位地址线作为存储器芯片(或I/O接口芯片)的片选信号。为此,只需要把用到的地址线与存储器芯片的片选端直接连接即可
8、。 线选法的优点是电路简单,不需要地址译码器硬件,体积小,成本低。缺点是可寻址的器件数目受到限制,故只用于不太复杂的系统中,另外,地址空间不连续,每个存储单元的地址不惟一,这会给程序设计带来一些不方便。 外部程序存储器和数据存储器的地址空间可以重叠,由控制信号区分。(外部程序存储器/PSEN;数据存储器/RD,/WR),15,线选法,存储器地址空间分配,16,典型存储器的扩展器件,(1)6116静态RAM的扩展 A10A0:地址线D7D0:数据线/CE:片选信号/OE:数据输出允许信号/WE:写选通信号VCC:电源(+5V)GND:地,存储器地址空间分配,17,D7D6D5D4D3D2D1D0
9、G,74LS373,GND,+5V,E,Q7Q6Q5Q4Q3Q2Q1Q0,使能端,当E=0,G=1时, 输出Q=输入D(透明);当E=0,G=0时, 输出Q端不变(锁存)当E=0,输出高阻态,(2)74LS373锁存器,18,扩展6116静态RAM,存储器地址空间分配,19,2764引脚功能,(3)EPROM,27648K EPROM,VPP A12 A7 A6 A5 A4 A3 A2 A1 A0 D0 D1 D2GND,VccPGMN.CA8A9A11OEA10CED7D6D5D4D3,2764,存储器地址空间分配,20,扩展电路连接,图7-4 扩展电路,单片机 8031,P2.0,:,.,
10、A8,.,.,.,ALE,PSEN,74LS373,G,2764,A7.A0,O0.O7,P0.0 :P0.7,OE,CE,Q0.Q7,D0.D7,8031 2764数据总线的连接:P0.0-P0.7(数据总线)-O0-O7地址总线的连接:P0.0-P0.7(地址总线低8位)- A0-A7P2.0-P2.4(地址总线高8位中的5位)- A8-A12控制总线的连接: PSEN(程序存储器允许,即读指令) - OE ALE(地址锁存允许)-接373的使能端G,经过锁存器373,A12,P2.4,21,6264-8K SRAM,6264引脚功能,N.CA12A7A6A5A4A3A2A1A0D0D1D
11、2GND,VccWECSA8A9A11OEA10CED7D6D5D4D3,6264,(4)数据存储器6264,存储器地址空间分配,22,扩展电路连接,图7-9 扩展电路,数据总线的连接:P0.0P0.7(数据总线)-D0D7 地址总线的连接:P0.0P0.7(地址总线低8位)- A0A7P2.0P2.4(地址总线高8位中的5位)- A8A12控制总线的连接: RD(读外部数据) - OE WR(写外部数据)- WE ALE(地址锁存允许)-接373的使能端 G,经过373,A8,6264,WE,单片机 8031,P2.0,:,.,A8,.,ALE,RD,74LS373,G,A7.A0,P0.0
12、 :P0.7,OE,CE,Q0.Q7,D0.D7,A12,P2.4,WR,8031,6264,23,存储器地址空间分配,b. 译码法 译码法就是使用译码器对MCS-51的高位地址进行译码,译码器的译码输出作为存储器芯片的片选信号。 这是一种最常用的存储器地址分配方法,能有效的利用存储器空间,适用于大容量多芯片的存储器扩展。 译码电路可以使用现有的译码器芯片。最常用的芯片有:74LS138(3线-8线译码器)、74LS139(双2线-4线译码器)、 74LS154(4线-16线译码器)。 若全部高位地址线都参加译码,称为全译码;若仅仅部分高位地址线都参加译码,称为部分译码,部分译码存在着部分存储
13、器地址空间相重叠的情况。,24,地址译码法,存储器地址空间分配,25,常用译码器芯片介绍3-8 地址译码器:74LS138,存储器地址空间分配,26,Y0、Y1、Y2分别连接三片存储器的片选端CE1 CE2、CE3,各片存储器芯片分配地址:,:0000H1FFFH:2000H3FFFH:4000H5FFFH,存储器地址空间分配,27,3.3 外部地址锁存器 由于引脚的限制,数据线和地址线复用,因此,需要用外部地址锁存器将它们分离出来。常见的地址锁存器芯片有:74LS373、8282、74LS573等。,74LS373与74LS573只是引脚布置的不同。74LS273的11脚G逻辑与以上相反。,
14、28,单片机复用总线结构,数据与地址分时共用一 组总线。,29,四. 程序存储器EPROM的扩展,工作时,ROM中的信息只能读出,要用特殊方式写入(固化信息),失电后可保持信息不丢失。按编程方式分为: 1. 掩膜ROM:不可改写ROM 由生产芯片的厂家固化信息。在最后一道工序用掩膜工艺写入信息,用户只可读。 2. PROM:可编程ROM 用户可进行一次编程。存储单元电路由熔丝相连,当加入写脉冲,某些存储单元熔丝熔断,信息永久写入,不可再次改写。,30,3. EPROM:可光擦除PROM 用户可以多次编程。编程加写脉冲后,某些存储单元的PN结表面形成浮动栅,阻挡通路,实现信息写入。用紫外线照射可
15、驱散浮动栅,原有信息全部擦除,便可再次改写。4. EEPROM:可电擦除PROM 既可全片擦除也可字节擦除,可在线擦除信息,又能失电保存信息,具备RAM、ROM的优点。但写入时间较长。5. Flash ROM:闪存,31,1. 27xx的引脚,4.1 常用EPROM芯片介绍,xx的含义?表示其位存储容量。,CE片选输入端,OE输出允许控制端,VPP编程电压输入端,PGM编程脉冲输入端,32,2. EPROM芯片的工作方式 一般有5种工作方式,由CE、OE、PGM的组合状态决定 读出方式 一般情况下,EPROM工作于该方式。此时, CE、OE为低,VPP为5V。(2) 未选中方式 CE为高。(3
16、) 编程方式 VPP为规定电压, CE、OE端加上合适的电压。(4) 编程校验方式(5) 编程禁止方式,33,4.2 典型EPROM接口电路,1. 单片EPROM,与RAM的不同点:只有一片ROM时,CE可以接地,OE接PSEN,34,2. 多片EPROM 除片选线CE外,其他与单片扩展电路相同。,35,五. 静态数据存储器的扩展,MCS-51单片机内部有128B RAM。应用时可能不够。 数据存储器一般采用RAM芯片,这种存储器在电源关断后,存储的数据将全部丢失。RAM器件有两大类: 动态RAM(DRAM),一般容量较大,易受干扰,使用略复杂。 静态RAM(SRAM),在工业现场常使用SRA
17、M。 单片机应用系统中,外扩的数据存储器都采用静态数据存储器。空间地址由P0(低8位)和P2(高8位)提供,P0口还提供8位双向数据总线。读写由/RD(P3.7)、/WR(P3.6)控制,36,1. 引脚,5.1 常用静态RAM(SRAM)芯片,CE片选输入端,WE写允许信号输入线,6264 逻辑图,6264 引脚图,OE读选通信号输入,型号:6264 前两位数62, 表示SRAM后两位648=8k字节容量62128 有1288=16k 字节容量62256 有2568=32k 字节容量,37,5.2 典型的外扩数据存储器的接口电路,存储器与微型机三总线的连接:1)数据线 D0n 连接数据总线
18、DB0n 2)地址线 A0N 连接地址总线低位AB0N。3)片选线 CS 连接地址总线高位ABN+x。4) 读写线OE、WE(R/W) 连接读写控制线RD、WR。,38,62128与MCS51的连接,39,六 EPROM和RAM的综合扩展,6.1 综合扩展的硬件接口电路,MCS51同时扩展ROM和RAM,40,七. EEPROM的扩展,优点:,能在应用系统中进行在线改写,断电时可保护数据而不需要加保护电源,1、EEPROM的应用特性,2、EEPROM2816A的扩展电路,41,EEPROM的应用特性, 对硬件无特殊要求, 采用5VEEPROM不需要再设置单独的擦除操作, EEPROM期间一般采
19、用并行总线传输, EEPROM作为程序存储器时,应按程序存储器连接方式编址, EEPROM作为数据存储器时,连接方式很灵活,作数据存储器使用,作I/O口编址使用,再通过扩展IO口和系统总线相连,作串行EEPROM使用,42,2864-8K E2PROM,2864引脚功能,N.CA12A7A6A5A4A3A2A1A0D0D1D2GND,VccWEN.CA8A9A11OEA10CED7D6D5D4D3,2864,7.1 E2PROM的扩展芯片,EEPROM 2864芯片,43,EEPROM 2816A芯片,44,7.2 E2PROM2816A的工作方式选择,45,7.3 MCS-51扩展E2PROM的方法,单片机 8031,P2.4,P2.0,A8,A12,ALE,RD,74LS373,G,2864,A7A6A5A4A3A2A1A0,D0D1D2D3D4D5D6D7,P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7,OE,CE,Q0Q1Q2Q3Q4Q5Q6Q7,D0D1D2D3D4D5D6D7,WE,WR,P2.7,PSEN,&,2864扩展电路图,46,请思考:什么情况下上图的与门输出低电平,使E2PRAM的内容可以被读出,读出的是什么方面的内容?图中扩展的E2PRAM是外部数据存储器?外部程序存储器?两者都扩展了?,47,48,The End,