资源预览内容
第1页 / 共49页
第2页 / 共49页
第3页 / 共49页
第4页 / 共49页
第5页 / 共49页
第6页 / 共49页
第7页 / 共49页
第8页 / 共49页
第9页 / 共49页
第10页 / 共49页
亲,该文档总共49页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
5.1单片机系统扩展及结构单片机系统扩展及结构使单片机能运行的最少器件构成的系统,就是最小系统。无ROM芯片:8031必须扩展ROM,复位、晶振电路有ROM芯片:89c51等,不必扩展ROM,只要有复位、晶振电路第第5章章 单片机存储器扩展单片机存储器扩展二、扩展使用的三总线二、扩展使用的三总线地址总线:P0低8位P2高8位数据总线:P0控制总线:RD、WR、ALE、PSEN(读、写、地址锁存允许、外程序存储器读选通)1.线选法微型机剩余高位地址总线直接连接各存储器片选线。2.译码片选法微型机剩余高位地址总线通过地址译码器输出片选信号。多片存储器芯片组成大容量存储器连接常用片选方法。5.2 单片机存储器扩展与编址单片机存储器扩展与编址1. 线选线选法法 P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 A7 A6 A5 A4 A3 A2 A1 A0P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 A7 A6 A5 A4 A3 A2 A1 A0 : 1 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 =C000H =C000H 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 DFFFHDFFFH : 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 0 0 0 =A000H =A000H 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 1 BFFFH BFFFH :0110110 0000 0000 00000 0000 0000 00000110111 1111 1111 11111 1111 1111 1111 =6000H =6000H7FFFH 7FFFH 2译码片选法译码片选法 3-8 地址译码器:地址译码器:74LS138Y Y0 0、Y Y1 1、Y Y2 2分别连接三片存储器的片选端分别连接三片存储器的片选端CECE1 1、CECE2 2、CECE3 3各片存储器芯片分配地址:各片存储器芯片分配地址:AB13AB14AB15 +5V A Y0 B Y1 C Y2 G1 G2A.B Y774LS138CE1CE2CE3:0000H1FFFH:2000H3FFFH:4000H5FFFH二、扩展使用的三总线二、扩展使用的三总线地址总线:P0低8位P2高8位数据总线:P0控制总线:RD、WR、ALE、PSEN(读、写、地址锁存允许、外程序存储器读选通) 当当单单片片机机外外接接芯芯片片较较多多,超超出出总总线线负负载载能能力力,必必须须加加总线驱动器。总线驱动器。单向驱动器单向驱动器74LS244用于用于地址总线驱动地址总线驱动双向驱动器双向驱动器74LS245用于用于数据总线驱动数据总线驱动3. 微型机总线扩展驱动微型机总线扩展驱动 5.3.1 单片机程序存储器单片机程序存储器ROM概述概述单片机应用系统由硬件和软件组成,软件的载体就是硬件中的程序存储器。对于MCS-51系列8位单片机,片内程序存储器的类型及容量如表5.1所示。表5.1 MCS-51系列单片机片内程序存储器一览表单片机型号单片机型号片内程序存储器片内程序存储器ROM类型类型容量容量/B8031 无无 8051 ROM4K8751 EPROM 4K8951 Flash 4K对于没有内部ROM的单片机或者当程序较长、片内ROM容量不够时,用户必须在单片机外部扩展程序存储器。MCS-51单片机片外有16条地址线,即P0口和P2口,因此最大寻址范围为64KB(0000HFFFFH)。这里要注意的是,MCS-51单片机有一个管脚EA跟程序存储器的扩展有关。如果EA接高电平,那么片内存储器地址范围是0000H0FFFH(4 KB),片外程序存储器地址范围是1000HFFFFH(60KB)。如果EA接低电平,不使用片内程序存储器,片外程序存储器地址范围为0000HFFFFH(64KB)。8031单片机没有片内程序存储器,因此管脚总是接低电平。扩展程序存储器常用的芯片是EPROM(ErasableProgrammableReadOnlyMemory)型(紫外线可擦除型),如2716(2K8)、2732(4K8)、2764(8K8)、27128(16K8)、27256(32K8)、27512(64K8)等。另外,还有+5V电可擦除EEPROM,如2816(2K8)、2864(8K8)等等。如果程序总量不超过4KB,一般选用具有内部ROM的单片机。8051内部ROM只能由厂家将程序一次性固化,不适合小批量用户和程序调试时使用,因此选用8751、8951的用户较多。如果程序超过4KB,用户一般不会选用8751、8951,而是直接选用8031,利用外部扩展存储器来存放程序。工作时,ROM中的信息只能读出,要用特殊方式写入(固化信息),失电后可保持信息不丢失。1.掩膜ROM:不可改写ROM由生产芯片的厂家固化信息。在最后一道工序用掩膜工艺写入信息,用户只可读。2.PROM:可编程ROM用户可进行一次编程。存储单元电路由熔丝相连,当加入写脉冲,某些存储单元熔丝熔断,信息永久写入,不可再次改写。3.EPROM:可光擦除PROM用户可以多次编程。编程加写脉冲后,某些存储单元的PN结表面形成浮动栅,阻挡通路,实现信息写入。用紫外线照射可驱散浮动栅,原有信息全部擦除,便可再次改写。4.EEPROM:可电擦除PROM既可全片擦除也可字节擦除,可在线擦除信息,又能失电保存信息,具备RAM、ROM的优点。但写入时间较长。 一一. 27xx的引脚的引脚 5.3.2. 只读存储器只读存储器ROM芯片及其芯片及其扩展扩展1) EPROM 27162716是2K8位的紫外线擦除电可编程只读存储器,单一+5V供电,运行时最大功耗为252mW,维持功耗为132mW,读出时间最大为450ns,封装形式为DIP24。2716有地址线11条(A0A10),数据线8条(O0O7),CE为片选线,低电平有效,OE为数据输出允许信号,低电平有效,VPP为编程电源,VCC为工作电源。 2) EPROM 27642764是8K8位的EPROM,单一+5V供电,工作电流为75mA,维持电流为35mA,读出时间最大为250ns,DIP28封装。2764A有13条(A0A12)地址线,数据输出线O0O7,为片选线,为数据输出允许线,为编程脉冲输入端,VPP为编程电源,VCC为工作电源。 3) EPROM 2712827128是16K8位的EPROM,单一+5V供电,工作电流为100mA,维持电流为40mA,读出时间最大为250ns,DIP28封装。27128A有14条(A0A13)地址线,数据输出线O0O7,为片选线,为数据输出允许线,为编程脉冲输入端,VPP为编程电源,VCC为工作电源。 常用常用EPROMEPROM芯片管脚图芯片管脚图二二. 常用常用EEPROM芯片芯片1) EEPROM 2816A2816A的存储容量为2K8位,单一+5V供电,不需要专门配置写入电源。2816A能随时写入和读出数据,其读取时间完全能满足一般程序存储器的要求,但写入时间较长,需915ms。写入时间完全由软件控制。2816A的管脚如图6.9所示。图图6.96.9常用常用EEPROMEEPROM管脚图管脚图2)EEPROM2864A2864A是8K8位EEPROM,单一+5V供电,最大工作电流160mA,最大维持电流60mA,典型读出时间250ns。由于芯片内部设有“页缓冲器”,因而允许对其快速写入。2864A内部可提供编程所需的全部定时,编程结束可以给出查询标志。2864A的封装形式为DIP28,其管脚如图6.9所示。三. 单片机扩展单片机扩展EPROM典型电路典型电路紫外线擦除电可编程只读存储器EPROM是国内用得较多的程序存储器。EPROM芯片上有一个玻璃窗口,在紫外线照射下,存储器中的各位信息均变1,即处于擦除状态。擦除干净的EPROM可以通过编程器将应用程序固化到芯片中。 例5.1 在8031单片机上扩展4KBEPROM程序存储器。(1)选择芯片。本例要求选用8031单片机,内部无ROM区,无论程序长短都必须扩展程序存储器(目前较少这样使用,但扩展方法比较典型、实用)。在选择程序存储器芯片时,首先必须满足程序容量,其次在价格合理情况下尽量选用容量大的芯片。这样做的话,使用的芯片少,从而接线简单,芯片存储容量大,程序调整余量也大。如估计程序总长3KB左右,最好是扩展一片4KB的EPROM2732,而不是选用2片2716(2KB)。在单片机应用系统硬件设计中应注意,尽量减少芯片使用个数,使得电路结构简单,提高可靠性,这也是8951比8031使用更加广泛的原因之一。(2)硬件电路图。8031单片机扩展一片2732程序存储器电路如图6.2所示。图图6.26.2单片机扩展单片机扩展2732EPROM2732EPROM电路电路(3)芯片说明。74LS373。74LS373是带三态缓冲输出的8D锁存器,由于片机的三总线结构中,数据线与地址线的低8位共用P0口,因此必须用地址锁存器将地址信号和数据信号区分开。74LS373的锁存控制端G直接与单片机的锁存控制信号ALE相连,在ALE的下降沿锁存低8位地址。EPROM2732。EPROM2732的容量为4K8位。4K表示有41024(22210=212)个存储单元,8位表示每个单元存储数据的宽度是8位。前者确定了地址线的位数是12位(A0A11),后者确定了数据线的位数是8位(O0O7)。目前,除了串行存储器之外,一般情况下,我们使用的都是8位数据存储器。2732采用单一+5V供电,最大静态工作电流为100mA,维持电流为35mA,读出时间最大为250ns。2732的封装形式为DIP24,管脚如图6.3所示。(4)连线说明:地址线。单片机扩展片外存储器时,地址是由P0和P2口提供的。图6.2中,2732的12条地址线(A0A11)中,低8位A0A7通过锁存器74LS373与P0口连接,高4位A8A11直接与P2口的P2.0P2.3连接,P2口本身有锁存功能。注意,锁存器的锁存使能端G必须和单片机的ALE管脚相连。数据线。2732的8位数据线直接与单片机的P0口相连。因此,P0口是一个分时复用的地址/数据线。控制线。CPU执行2732中存放的程序指令时,取指阶段就是对2732进行读操作。注意,CPU对EPROM只能进行读操作,不能进行写操作。CPU对2732的读操作控制都是通过控制线实现的。2732控制线的连接有以下几条:直接接地。由于系统中只扩展了一个程序存储器芯片,因此,2732的片选端直接接地,表示2732一直被选中。若同时扩展多片,需通过译码器来完成片选工作。:接8031的读选通信号端。在访问片外程序存储器时,只要端出现负脉冲,即可从2732中读出程序。(5)扩展程序存储器地址范围的确定。单片机扩展存储器的关键是搞清楚扩展芯片的地址范围,8031最大可以扩展64KB(0000HFFFFH)。决定存储器芯片地址范围的因素有两个:一个是片选端的连接方法,一个是存储器芯片的地址线与单片机地址线的连接。在确定地址范围时,必须保证片选端为低电平。本例中,2732的片选端总是接地,因此第一个条件总是满足的,另外,2732有12条地址线,与8031的低12位地址相连,编码结果如下:(6)EPROM的使用。存储器扩展电路是单片机应用系统的功能扩展部分,只有当应用系统的软件设计完成了,才能把程序通过特定的编程工具(一般称为编程器或EPROM固化器)固化到2732中,然后再将2732插到用户板的插座上(扩展程序存储器一定要焊插座)。当上电复位时,PC=0000H,自动从2732的0000H单元取指令,然后开始执行指令。如果程序需要反复调试,可以用紫外线擦除器先将2732中的内容擦除,然后再固化修改后的程序,进行调试。如果要从EPROM中读出程序中定义的表格,需使用查表指令:MOVCA,A+DPTRMOVCA,A+PC图图6.86.8单片机扩展单片机扩展2764EPROM2764EPROM电路电路附:用译码法扩展一片2764电路图6.7单片机扩展27128EPROM电路用线选法扩展一片27128电路四. 单片机扩展单片机扩展EEPROM典型电路典型电路电擦除可编程只读存储器EEPROM是一种可用电气方法在线擦除和再编程的只读存储器,它既有RAM可读可改写的特性,又具有非易失性存储器ROM在掉电后仍能保持所存储数据的优点。因此,EEPROM在单片机存储器扩展中,可以用作程序存储器,也可以用作数据存储器,至于具体做什么使用,由硬件电路确定。EEPROM作为程序存储器使用时,CPU读取EEPROM数据同读取一般EPROM操作相同;但EEPROM的写入时间较长,必须用软件或硬件来检测写入周期。 例5.2 在8031单片机上扩展2KBEEPROM。 (1) 选择芯片。选择芯片。2816A和2817A均属于5V电擦除可编程只读存储器,其容量都是2K8位。2816A与2817A的不同之处在于:2816A的写入时间为915ms,完全由软件延时控制,与硬件电路无关;2817A利用硬件引脚来检测写操作是否完成。在此,我们选用2817A芯片来完成扩展2KBEEPROM,2817A的封装是DIP28,采用单一+5V供电,最大工作电流为150mA,维持电流为55mA,读出时间最大为250ns。片内设有编程所需的高压脉冲产生电路,无需外加编程电源和写入脉冲即可工作。2817A在写入一个字节的指令码或数据之前,自动地对所要写入的单元进行擦除,因而无需进行专门的字节/芯片擦除操作。2817A的管脚如图6.4所示。其中,A0A10为地址线;I/O0I/O7为读写数据线;为片选线;为读允许线,低电平有效;为写允许线,低电平有效;为低电平时,表示2817A正在写操作,处于忙状态,高电平时,表示写操作完毕;VCC为+5V电源;GND为接地端。2817A的读操作与普通EPROM的读出相同,所不同的只是可以在线进行字节的写入。图图6.42817A6.42817A的管脚的管脚2817A的写入过程如下:CPU向2817A发出字节写入命令后,2817A便锁存地址、数据及控制信号,从而启动一次写操作。2817A的写入时间大约为16ms左右,在此期间,2817A的脚呈低电平,表示2817A正在进行写操作,此时它的数据总线呈高阻状态,因而允许CPU在此期间执行其它的任务。当一次字节写入操作完毕,2817A便将线置高,由此来通知CPU。 (2) 硬件电路图。硬件电路图。单片机扩展2817A的硬件电路图如图6.5所示。图图6.56.5单片机扩展单片机扩展2817AEEPROM2817AEEPROM电路电路 (3) 连线说明:连线说明:地址线。图6.5中,2817A的11条地址线(A0A10,容量为 2K8位 , 211=21024=2K) 中 的 低 8位 A0 A7通 过 锁 存 器74LS373与P0口连接,高3位A8A10直接与P2口的P2.0P2.2连接。数据线。2817A的8位数据线直接与单片机的P0口相连。控制线。单片机与2817A的控制线连接采用了将外部数据存储器空间和程序存储器空间合并的方法,使得2817A既可以作为程序存储器使用,又可以作为数据存储器使用。单片机中用于控制存储器的管脚有以三个:控制程序存储器的读操作,执行指令的取指阶段和执行MOVCA,A+DPTR指令时有效;控制数据存储器的读操作,执行MOVXDPTR,A和MOVXRi,A时有效;控制数据存储器的写操作,执行MOVXA,DPTR和MOVXA,Ri时有效。在图6.5中,2817A控制线的连线方法如下:直接接地。由于系统中只扩展了一个程序存储器芯片,因此片选端直接接地,表示2817A一直被选中。:8031的程序存储器读选通信号和数据存储器读信号经过“与”操作后,与2817A的读允许信号相连。这样,只要、中有一个有效,就可以对2817A进行读操作了。也就是说,对2817A既可以看作程序存储器取指令,也可以看作数据存储器读出数据。:与8031的数据存储器写信号相连,只要执行数据存储器写操作指令,就可以往2817A中写入数据。:与8031的P1.0相连,采用查询方法对2817A的写操作进行管理。在擦、写操作期间,脚为低电平,当字节擦、写完毕时,为高电平。其实,检测2817A写操作是否完成也可以用中断方式实现,方法是将2817A的反相后与8031的中断输入脚相连。当2817A每擦、写完一个字节,便向单片机提出中断请求。图6.5中,2817A的地址范围是0000H07FFH(无关的管脚取0,该地址范围不是惟一的)。 (4) 2817A的使用。的使用。按照图6.5连接好后,如果只是把2817A作为程序存储器使用,使用方法同EPROM相同。EEPROM也可以通过编程器将程序固化进去。如果将2817A作为数据存储器,读操作同使用静态RAM一样,直接从给定的地址单元中读取数据即可。向2817A中写数据采用MOVXDPTR,A指令。5.4 数据存储器扩展数据存储器扩展 5.4.1 单片机单片机RAM概述概述RAM是用来存放各种数据的,MCS-51系列8位单片机内部有128BRAM存储器,CPU对内部RAM具有丰富的操作指令。但是,当单片机用于实时数据采集或处理大批量数据时,仅靠片内提供的RAM是远远不够的。此时,我们可以利用单片机的扩展功能,扩展外部数据存储器。常用的外部数据存储器有静态RAM(StaticRandomAccessMemorySRAM) 和 动 态 RAM( Dynamic Random AccessMemoryDRAM)两种。前者读/写速度高,一般都是8位宽度,易于扩展,且大多数与相同容量的EPROM引脚兼容,有利于印刷板电路设计,使用方便;缺点是集成度低,成本高,功耗大。后者集成度高,成本低,功耗相对较低;缺点是需要增加一个刷新电路,附加另外的成本。MCS-51单片机扩展片外数据存储器的地址线也是由P0口和P2口提供的,因此最大寻址范围为64KB(0000HFFFFH)。一般情况下,SRAM用于仅需要小于64KB数据存储器的小系统,DRAM经常用于需要大于64KB的大系统。1. SRAM的引脚的引脚6264逻辑图6264引脚图型号:6264前两位数62,表示SRAM后两位648=8k字节容量62128有1288=16k字节容量62256有2568=32k字节容量2. RAM存储器的连接存储器的连接 DBDB0 0n n ABAB0 0N ND D0 0n nA A0 0N N ABABN+xN+xCSCSR/ WR/ WR/ WR/ W微型机微型机存储器存储器存储器与微型机三总线的连接:1)数据线D0n连接数据总线DB0n2)地址线A0N连接地址总线低位AB0N。3)片选线CS连接地址总线高位ABN+x。4)读写线OE、WE(R/W)连接读写控制线RD、WR。图图6.1161166.116116管脚图管脚图6116的管脚与EPROM2716管脚兼容,管脚如图6.11所示。5.4.2 单片机单片机RAM芯片芯片6116有11条(A0A10)地址线;8条(D0D7)双向数据线;CS(CE)为片选线,低电平有效;WE为写允许线,低电平有效;为OE读允许线,低电平有效。6116的操作方式如表6.2所示。方式I/O0I/O7H未选中高阻LLH读O0O7LHL写I0I7LLL写I0I7表6.26116的操作方式
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号