您好,欢迎访问三七文档
第7章MCS-51单片机系统扩展教学目的与要求1.了解51单片机扩展系统结构;2.掌握程序存储器和数据存储器的扩展方法。教学重、难点存储器的编址。系统扩展是指在单片机外部连接相应的外围芯片,对单片机的功能进行扩展,以满足应用要求。单片机的系统扩展主要指程序存储器、数据存储器及并行I/O口的扩展。7.1MCS-51扩展系统概述MCS-51单片机系统扩展主要包括存储器扩展和I/O口的扩展,其扩展能力为:①程序存储器最多可扩展64KB;②数据存储器最多可扩展64KB。利用“MOVX”完成读写操作7.1.1MCS-51扩展系统结构MCS-51单片机的扩展系统结构如图7-1所示。在扩展系统中采用3总线结构,即数据总线、地址总线和控制总线,各总线构成如下:1.数据总线数据总线由MCS-51单片机的P0口提供,总线宽度为8位,即D0~D7。2.地址总线地址总线由MCS-51单片机的P0口和P2口提供,总线宽度为16位。其中P0口提供低8位地址线A0~A7,P2口提供高8位地址线A8~A15。P0口既当数据线使用又当低8位地址线使用,在访问外部存储器时,由于先送地址信号,后传送数据,为了保证地址信息不丢失,所以要使用地址锁存器(如74LS373)将P0口传送的地址信息锁存起来。3.控制总线控制总线由P3口的P3.6(WR)、P3.7(RD)及ALE、PSEN和EA构成。7.1.2存储器及外部I/O口的编址技术所谓编址,就是使用系统提供的地址线,通过适当的连接,使存储器中的任一单元,或I/O接口任意一个端口都惟一对应一个地址。存储器编址分为两步:存储器芯片的编址和芯片内部存储单元的编址。芯片内部存储单元的编址由芯片内部的地址译码电路完成。芯片的编址实际上就是如何产生片选信号。在进行系统扩展时,通常把与芯片地址线相对应的地址线称为低端地址线,剩余的地址线称为高端地址线。进行芯片编址时只能使用高端地址线。下面分别介绍目前比较常用的两种编址方法:线选法和译码法:1.线选法编址所谓线选法,就是直接用系统的高端地址线作为芯片的片选信号。因此,采用线选法只需把选定的高端地址线和芯片的片选端直接相连即可。线选法的特点是连接简单,不必专门设计逻辑电路,但是地址空间的利用率较低,只能用于简单的系统扩展。2.译码法编址所谓译码法,就是利用译码器对高端地址线进行译码,译出的信号作为芯片的片选信号,用低端地址线选择芯片的片内地址。这种方法适用于大容量、多芯片存储器扩展,也适用于其他外围芯片的扩展。常用的译码器芯片有74LS139(双2-4译码器)、74LS138(3-8译码器)等。下面分别介绍这两种译码芯片。1GVCC1A2G1B2A1Y02B1Y12Y01Y22Y11Y32Y2GND2Y374LS139AVCCBY0CY1E1Y2E2Y3E3Y4Y7Y5GNDY674LS1387.2程序存储器扩展当单片机内部的程序存储器容量不足或者采用内部没有程序存储器的单片机时,就需要扩展程序存储器或者数据存储器,扩展的容量可视应用系统的需要而定。7.2.1常用程序存储器芯片MCS-51单片机所扩展的程序存储器有两类:1.EPROM存储器常用的EPROM为27xx系列,如2716、2732、2764、27128、27256、27512等。27后面的数字表示芯片的容量,用字数(K)与每个字的位数的乘积表示。如2716表示该芯片为2K×8位的EPROM、2732位4K×8位的EPROM。2.E2PROM存储器常用的E2PROM为28xx系列,如:2816、2864A等。28后面的数字表示芯片的容量,其意义同27xx系列EPROM。28xx系列E2PROM也有3类引脚,其中地址引脚和数据引脚的个数及表示形式同27xx系列EPROM。28xx系列E2PROM的控制引脚有:读引脚OE、写引脚WR、片选引脚CE、电源引脚Vcc和GND。7.2.2程序存储器的扩展程序存储器的扩展方法比较简单,硬件连接形式固定,基本上无技术可言。具体连接方法为:(1)低8位地址引脚的连接EPROM或E2PROM的低8位地址引脚A0~A7对应与地址锁存器74LS373的Q0~Q7相连(74LS373的D0~D7连接P0.0~P0.7)。(2)高8位地址引脚的连接EPROM或E2PROM的高位地址引脚A8~An-1直接与MCS-51的P2.0~P2.n-9对应相连。(3)数据引脚的连接EPROM或E2PROM的数据引脚D0~D7直接与MCS-51的P0.0~P0.7对应相连。(4)读写控制引脚的连接EPROM或E2PROM的OE引脚直接与MCS-51的PSEN端相连;E2PROM的WR引脚直接接Vcc(程序只能读)。(5)片选控制引脚的连接EPROM或E2PROM的片选引脚CE可直接与MCS-51未用的P2口的一个口线相连(采用线选法),也可与地址译码器的一个输出端相连(译码法)。程序存储器扩展的原则:①要扩展程序存储器,一般选择内部无程序存储器的单片机,如8031或80C31等。②要扩展程序存储器,一般选择容量较大的芯片,保证在一个系统内只有一个程序存储器。因为不同容量的EPROM或EEPROM价格相差寥寥,且芯片越少,总成本越低,体积越小,更能适应单片机的嵌入式应用要求。③如果在无ROM的单片机外部扩展程序存储器,所扩展的程序存储器地址范围必须从0000H开始,并使EA接地;如果在有ROM的单片机外部扩展程序存储器,所扩展的程序存储器的地址范围要与内部ROM连续,并使EA接高电平。1.EPROM程序存储器扩展举例【例7-1】用线选法在8031单片机外部扩展一片2764EPROM假设P2口内未用的高位地址线P2.5、P2.6为“0”状态,则该2764芯片所占的地址空间为:最低地址:A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0=0000000000000000B=0000H最高地址:A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0=0001111111111111B=1FFFH2.E2PROM作为程序存储器的扩展【例7-2】用地址译码法在8031单片机外部扩展一片2864AE2PROM因为当译码器的Y0有效时,CBA必须输入为000B,所以该2864A芯片所占地址空间为:最低地址:A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0=0000000000000000B=0000H最高地址:A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0=0001111111111111B=1FFFH7.3数据存储器的扩展在MCS-51系列单片机中,片内数据存储器的容量一般为128~256字节,当数据量较大时,就需要在片外扩展数据存储器RAM,扩展容量最大可达64K字节。7.3.1常用数据存储器芯片MCS-51扩展的数据存储器有61xx和62xx系列RAM及28xx系列E2PROM。61xx与62xx后面数字表示芯片的容量,其意义与27xx系列EPROM相同。61xx与62xx系列芯片兼容,与27xx系列EPROM引脚排列基本兼容,也包括3类引脚。其中地址引脚和数据引脚的个数及表示形式同27xx系列EPROM。61xx与62xx系列RAM的控制引脚有:读引脚OE、写引脚WR、片选引脚CE、电源引脚VCC和GND。7.3.2数据存储器扩展不同之处:OE与51的RD相连,写引脚WR与51的WR相连。MOVXA,@RiMOVXA,@DPTRMOVX@Ri,AMOVX@DPTR,A1.RAM芯片的扩展举例【例6-3】使用6116芯片,在AT89C51单片机(与MCS51兼容)的外部扩展2KB的数据存储器,要求所扩展RAM的地址范围为0000H~07FFH。解:假设未用的高端地址线为“0”状态,则该芯片占用的地址空间为:0000H~07FFH。2.E2PROM作为程序存储器及数据存储器的扩展【例7-4】在8031单片机的外部扩展一片2864A,使其既可当作程序存储器使用,又可当作数据存储器使用。解:2864A的片选引脚与8031的P2.5相连,表示当A13为低电平时选中该芯片,因此2864A的地址范围是0000H~1FFFH。7.4I/O口的扩展7.4.1简单的I/O口扩展采用TTL或CMOS锁存器、三态门作为I/O口扩展芯片,具有电路简单、成本低、配置灵活等优点,是单片机应用系统中经常采用的方法。能够作为输入接口使用的芯片有74LS244和74LS245等;能够当作输出接口使用的芯片有74LS273、74LS373、74LS377、74LS573等。图7-8是采用74LS273作为输出扩展、4LS244作为输入扩展的简单I/O扩展电路。对于图7-8,如果需要实现的功能是按下任一按键时,对应的LED发光,可编程如下:LOOP:MOVDPTR,#0FEFFH;数据指针指向扩展I/O口地址MOVXA,@DPTR;从74LS244读入数据,检测按键MOVX@DPTR,A;向74LS273输出数据,驱动LEDAJMPLOOP;循环7.4.28155可编程I/O接口扩展8155是一种多功能的通用可编程接口芯片,它具有3个可编程I/O端口(PA和PB是8位口,PC是6位口),1个14位可编程定时器和256字节的静态RAM,能方便与MCS-51系列单片机连接。2.8155与MCS-51单片机的连接8155可以直接和MCS-51单片机相连接,不需要任何外加逻辑电路。图7-10为8031单片机与8155的连接电路,其RAM和I/O端口地址分配如下:RAM:P2.7=0,P2.0=0,其地址范围为:0111111000000000B~0111111011111111B,即:7E00H~7EFFH。I/O口:P2.7=0,P2.0=1,口地址范围为:0111111100000000B~0111111100000101B,即7F00H~7F05H。
本文标题:单片机7
链接地址:https://www.777doc.com/doc-5538920 .html