您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 交通运输 > 第8章AT89S51单片机外部存储器的扩展
第8章AT89S51单片机外部存储器的扩展1内容概要8.1AT89S51单片机的总线及系统扩展结构8.2地址空间分配和锁存器8.3程序存储器的扩展8.4数据存储器的扩展8.5综合扩展28.1总线及系统扩展结构AT89S51总线结构如图8-1所示。图8-1AT89S51单片机的总线及系统扩展结构3AT89S51的三总线(1)地址总线(AddressBus,AB):用于传送单片机发出的地址信号,以便进行存储单元和I/O接口芯片中的寄存器单元的选择。地址总线是单向的。P0口作为低8为地址总线(A7~A0);P2口作为高8位地址总线(A15~A8);2者结合构成了16位地址总线(A15~A0);(2)数据总线(DataBus,DB):用于单片机与外部存储器之间或与I/O接口之间传送数据,数据总线是双向的。P0口作为AT89S51的数据总线(D8~D0);P0口即作为地址总线,又作为数据总线,有问题吗???需增加一个8位锁存器。AT89S51访问外部扩展的存储器单元或I/O接口寄存器时,先发出低8位地址送地址锁存器锁存,锁存器输出作为系统的低8位地址(A7~A0)。(3)控制总线(ControlBus,CB):控制总线是单片机发出的各种控制信号线,用于对外部设备进行控制。包括:(1)PSEN*作为外扩程序存储器的读控制信号;(2)RD*和WR*为外扩数据存储器和I/O的读、写控制信号;(3)ALE作为P0口发出的低8位地址锁存控制信号;67图8-2AT89C51单片机扩展的片外三总线8.2地址空间分配和外部地址锁存器本节讨论如何进行存储器空间的地址分配,并介绍用于输出低8位地址的地址锁存器。8.2.1存储器地址空间分配实际设计中,有时需扩展程序存储器,又需要扩展数据存储器,如何把片外的两个64KB地址空间分配给各个程序存储器、数据存储器芯片,使一个存储单元只对应一个地址,避免单片机发出一个地址时,同时访问两个单元而发生数据冲突。这就是存储器地址空间分配问题。8AT89S51发出的地址码用于选择某个存储器单元时,单片机必须进行如下操作:一、选中该存储器芯片,这称为“片选”,未被选中的芯片不能被访问。二、在“片选”的基础“选中”芯片的某一单元进行访问,即“单元选择”。9常用的存储器地址空间分配方法有两种:线性选择法(简称线选法)和地址译码法(简称译码法)。1.线选法是直接利用系统的某一高位地址线作为存储器芯片(或I/O接口芯片)的“片选”控制信号。为此,只需要把用到的高位地址线与存储器芯片的“片选”端直接连接即可。优点:电路简单,不需要另外增加地址译码器硬件电路,体积小,成本低。缺点:可寻址的芯片数目受到限制。只适用于外扩芯片数目不多的单片机系统的存储器扩展。112.译码法使用译码器对AT89S51单片机的高位地址进行译码,译码输出作为存储器芯片的片选信号。优点:能够有效地利用存储器空间,适用于多芯片的存储器扩展。常用的译码器芯片有74LS138(3-8译码器)、74LS139(双2-4译码器)和74LS154(4-16译码器)。12常用的译码器芯片介绍:(1)74LS1383-8译码器,有3个数据输入端,经译码产生8种状态。13(2)74LS139双2-4译码器。两个译码器完全独立,分别有各自的数据输入端、译码状态输出端以及数据输入允许端。14地址分配举例:例如,要扩8片8KB的RAM6264,如何通过74LS138把64KB空间分配给各个芯片?根据74LS138真值表:G1:接高电平;G2A和G2B:接低电平;C、B、A:分别接P2.7、P2.6、P2.5;8个输出Y7~Y0,分别接到8片6264的“片选”端,实现8选1的片选。AT89S51的低13位地址(P2.4~P2.0,P0.7~P0.0)完成对选中的6264芯片中的各个存储单元的“单元选择”。1564KB地址空间分配如图8-5。图8-564KB地址空间划分成8个8KB空间168.2.2外部地址锁存器受引脚数的限制,P0口兼用数据线和低8位地址线,为了将它们分离出来,需在单片机外部增加地址锁存器。常用的地址锁存器芯片有74LS373、74LS573等。1.锁存器74LS373带三态门的8D锁存器,其引脚如图8-7,内部结构如图8-8。1718图8-7锁存器74LS373的引脚图8-874LS373的内部结构引脚说明:D7~D0:8位数据输入线,Q7~Q0:8位数据输出线。G:数据输入锁存选通信号。当该引脚的信号为高时,外部数据选通到内部锁存器,负跳变时,数据锁存到锁存器中。OE*:数据输出允许信号,低电平有效。当该信号为低电平时,三态门打开,锁存器中数据输出到数据输出线。当该信号为高电平时,输出线为高阻态。74LS373锁存器功能如表8-3。1920OE图8-9AT89S51的P0口与74LS373的连接2.锁存器74LS573也是一种带有三态门的锁存器,功能及内部结构与74LS373完全一样,只是其引脚排列与74LS373不同。由图8-10,与74LS373相比,74LS573的输入D端和输出Q端依次排列在芯片两侧,为绘制印制电路板提供方便引脚说明:D7~D0:8位数据输入线。Q7~Q0:8位数据输出线。G:数据输入锁存选通信号,该引脚与74LS373的G端功能相同。21OE*:数据输出允许信号,低电平有效。当该信号为低电平时,三态门打开,锁存器中数据输出到数据输出线。当该信号为高电平时,输出线为高阻态。图8-10锁存器74LS573的引脚8.3程序存储器EPROM的扩展程序存储器为只读存储器,在电源关断后,仍能保存程序(非易失性的),系统上电后,CPU可取出这些指令重新执行。只读存储器简称ROM(ReadOnlyMemory)。ROM中的信息一旦写入,就不能随意更改。向ROM中写入信息称为ROM编程。根据编程方式不同,分以下几种。(1)掩膜ROM。制造过程中编程,以掩膜工艺实现,因此称为掩膜ROM。这种芯片存储结构简单,集成度高,但由于掩膜工艺成本较高,因此只适合于大批量生产。(2)可编程ROM(PROM)。芯片出厂时没有任何程序信息,用独立编程器写入。但PROM只能写一次,写入内容后,就不能再修改。24(3)EPROM。用紫外线擦除,用电信号编程。在芯片外壳的中间位置有一个圆形窗口,对该窗口照射紫外线就可擦除原有的信息。使用编程器可将调试完毕的程序写入。(4)E2PROM(EEPROM)。一种用电信号编程,也用电信号擦除的ROM芯片。对E2PROM的读写操作与RAM存储器几乎没有什么差别,只是写入速度慢一些,但断电后仍能保存信息。25(5)FlashMemory。又称闪烁存储器(简称闪存),是电擦除型只读存储器。特点是可快速在线修改其存储单元中的数据,改写次数可达1万次,其读写速度很快,存取时间可达70ns,而成本比E2PROM低得多。268.3.1常用的EPROM芯片使用较多的是并行EPROM,首先介绍常用EPROM芯片。EPROM的典型芯片是27系列产品,例如,2764(8KB)、27128(16KB)、27256(32KB)、27512(64KB)。型号“27”后面的数字表示其位存储容量。如果换算成字节容量,只需将该数字除以8即可。例如,“27128”中的“27”后的数字“128”,128/8=16KB随着大规模集成电路技术的发展,大容量存储器芯片产量剧增,售价不断下降,性价比明显增高,且由于小容量芯片停止生产,使市场某些小容量芯片价格反而比大容量芯片还贵。所以,应尽量采用大容量芯片。271.常用EPROM芯片引脚27系列EPROM芯片的引脚如图8-11。芯片引脚功能:A0~A15:地址线引脚。它的数目由芯片的存储容量决定,用于进行单元选择。D7~D0:数据线引脚。CE*:片选控制端。OE*:输出允许控制端。PGM*:编程时,编程脉冲的输入端。28图8-11常用EPROM芯片引脚Vpp:编程时,编程电压(+12V或+25V)输入端。VCC:+5V,芯片的工作电压。GND:数字地。NC:无用端。表8-4为27系列EPROM芯片的技术参数,其中VCC是芯片供电电压,Vpp是编程电压,Im为最大静态电流,Is为维持电流,TRM为最大读出时间。30312.EPROM芯片的工作方式5种工作方式,由CE*、OE*、PGM*信号的组合确定。5种工作方式如表8-5。32CE/PGMOE8.3.2程序存储器的操作时序1.访问程序存储器的控制信号AT89S51单片机访问片外扩展的程序存储器时,所用的控制信号有以下3种。(1)ALE:用于低8位地址锁存控制。(2)PSEN*:片外程序存储器“读选通”控制信号。它接外扩EPROM的OE*引脚。(3)EA*:片内、片外程序存储器访问的控制信号。当EA*=1时,在单片机发出的地址小于片内程序存储器最大地址时,访问片内程序存储器;当EA*=0时,只访问片外程序存储器。342.操作时序AT89S51对片外ROM的操作时序分两种,即执行非MOVX指令的时序和执行MOVX指令的时序。(1)应用系统中无片外RAM系统无片外RAM(或I/O)时,不用执行MOVX指令。在执行非MOVX指令时,时序如图8-12(a)35同时,PSEN*也是每个机器周期两次有效,用于选通片外程序存储器,将指令读入片内。36图8-12(a)执行非MOVX指令的时序(2)应用系统中接有片外RAM在执行访问片外RAM(或I/O)的MOVX指令时,16位地址应转而指向数据存储器,时序如下图:378.3.3AT89S51单片机与EPROM的接口电路设计1.AT89S51与单片EPROM的硬件接口电路外扩的EPROM在正常使用中只读不写,故EPROM芯片只有读出控制引脚OE*,该引脚与AT89S51单片机的PSEN*相连,地址线、数据线分别与AT89S51单片机的地址线、数据线相连,片选端控制可采用线选法或译码法。介绍2764、27128芯片与AT89S51的接口。更大容量的27256、27512与AT89S51的连接,差别只是连接的地址线数目不同。图8-11常用EPROM芯片引脚图8KB16KB32KB64KB图8-13AT89S51单片机与27128的接口电路2.使用多片EPROM的扩展电路图8-14为利用4片27128EPROM扩展成64KB程序存储器的方法。片选信号由译码器产生。。41图8-14AT89S51与4片27128EPROM的接口电路8.4静态数据存储器RAM的扩展在单片机应用系统中,外部扩展的数据存储器都采用静态数据存储器(SRAM)。片外数据存储器RAM的读和写由AT89S51的RD*(P3.7)和WR*(P3.6)信号控制。片外程序存储器EPROM的输出端允许(OE*)由单片机的读选通PSEN*信号控制。尽管与EPROM的地址空间范围相同,但由于控制信号不同,因此不会发生总线冲突。428.4.1常用的静态RAM(SRAM)芯片单片机系统中常用的RAM芯片的典型型号有6116(2KB),6264(8KB),62128(16KB),62256(32KB)。6116为24脚封装,6264、62128、62256为28脚封装。这些RAM芯片的引脚如图8-15。4344图8-15常用的RAM引脚图各引脚功能:A0~A14:地址输入线。D0~D7:双向三态数据线。CE*:片选信号输入线。对6264芯片,当24脚(CS)为高电平且CE*为低电平时才选中该片。OE*:读选通信号输入线,低电平有效。WE*:写允许信号输入线,低电平有效。VCC—工作电源+5V。GND—地。RAM存储器有读出、写入、维持3种工作方式,工作方式的控制如表8-6。45478.4.2外扩数据存储器的读写操作时序对片外RAM读和写两种操作时序的基本过程相同。1.读片外RAM操作时序若外扩一片RAM,应将WR*脚与RAM的WE*脚连接,RD*脚与芯片OE*脚连接。图8-16AT89S51单片机读片外RAM操作时序图482.写片外RAM操作时序图8-17AT89S5
本文标题:第8章AT89S51单片机外部存储器的扩展
链接地址:https://www.777doc.com/doc-5730637 .html