第7章AT89C51单片机系统扩展1课件.ppt

上传人:春哥&#****71; 文档编号:15244065 上传时间:2022-05-11 格式:PPT 页数:40 大小:3.22MB
返回 下载 相关 举报
第7章AT89C51单片机系统扩展1课件.ppt_第1页
第1页 / 共40页
第7章AT89C51单片机系统扩展1课件.ppt_第2页
第2页 / 共40页
点击查看更多>>
资源描述

《第7章AT89C51单片机系统扩展1课件.ppt》由会员分享,可在线阅读,更多相关《第7章AT89C51单片机系统扩展1课件.ppt(40页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第第7章章 AT89C51单片机系统扩展单片机系统扩展 张定祥制作张定祥制作 7.1 AT89C51单片机系统的扩展及结构单片机系统的扩展及结构 7.2 AT89C51单片机的存储器扩展单片机的存储器扩展7.3 并行并行I/O口扩展口扩展实训八:用实训八:用8255实现接口扩展实现接口扩展小结小结习题与思考题习题与思考题7.1 AT89C51单片机系统扩展及结构单片机系统扩展及结构7.1.1 系统总线系统总线 所谓系统总线,就是连接计算机中各部件以进行信息传输的一组公共信号线。按其功能通常把系统总线分为三组,即地址总线(AB)、数据总线(DB)和控制总线(CB),如图7-1所示。XTAL1 X

2、TAL2 地址锁存器P2888A15A8A7A0D7D0 (AB)(DB) (CB)TXDRXDVccVss图7-1 MCS-51单片机的扩展三总线P0ALET0RDWRPSENINT0INT1T1RESETEA(1)地址总线(Address Bus,简写为AB) 在地址总线上传送的是地址信号,用于存储单元和I/O端口的选择。在51系列单片机中,由P2口提供高8位地址线,由P0口提供低8位地址线,故最多可以扩展64KB个地址单元。在实际应用中,由于P0口为分时复用地址/数据线,需要外加地址锁存器锁存低8位地址,通常选用的地址锁存器是74LS373。(2)数据总线(Data Bus,简写为DB)

3、 数据总线用于在单片机与存储器之间或单片机与I/O端口之间传送数据。单片机系统数据总线的位数与单片机处理数据的字长一致。 (3)控制总线(Control Bus,简写为CB) 控制总线可以用来传送使单片机中各部件协调工作的定时信号和控制信号,从而保证正确执行指令所要求的各种操作。系统扩展用控制总线: 、 :用于片外数据存储器(RAM)读、写控制信号线。 :用于片外程序存储器(ROM)取指令控制信号线。 ALE:用于锁存P0口输出的低8位地址A0A7的控制信号线。它通常在下降沿控制锁存器锁存地址信号。 :用于选择片内或片外程序存储器。片外信号对单片机的控制线: 、 :用作外部中断输入线,其触发方

4、式可由程序设定。 T0、T1:既可以用作单片机的内部定时器,也可以作为单片机的外部计数器,以实现外部对单片机工作的控制。 RESET:复位信号输入线。当该引脚保持2个机器周期以上的高电平(通常为10ms)时,可使单片机复位。RDWRPSENEAINT0INT17.1.2 存储器扩展的编址技术存储器扩展的编址技术 片内片外程序存储器的选择靠硬件结构实现:当 =0(低电平)时,不论片内有无程序存储器,CPU都从外部程序存储器0000H单元开始访问;当 =1(高电平)时,则先访问片内程序存储器,当PC值超过片内ROM范围时,则自动转向执行片外程序存储器中的程序,但只能从1000H单元开始。 所谓存储

5、器编址,就是使用系统提供的地址总线(A0A15),通过适当的连接方式,最终达到一个编址唯一地对应存储器中一个存储单元的目的。在进行存储器扩展时,可供使用的编址方法有两种,即线选法和译码法。 EAEA(1)线选法 所谓线选法,就是将存储器芯片的地址线与单片机系统的地址线依次相连后,剩余的高位地址线直接作为存储器芯片的片选信号。 特点:简单明了,不需另外增加电路。 缺点:存储空间不连续,存在空地址。 适用于小规模单片机系统的存储器扩展。 (2)译码法 所谓译码法,就是使用译码器对系统的高位地址进行译码,以其译码输出作为存储芯片的片选信号。 特点:存储空间连续,没有空地址,但需增加译码器电路,硬件比

6、线选法复杂。 适用于大容量多芯片存储器扩展。 【例【例7.1】现有2K8位存储器芯片,需扩展为8K8位存储器结构。试采用线选法进行扩展。 【例7-2】现有2K8位存储器芯片,需扩展8K8位存储器结构。试采用译码法进行扩展。7.2 AT89C51单片机的存储器扩展单片机的存储器扩展 存储器主要是存放程序或数据。按照存储器存取功能的不同,半导体存储器又可分为只读存储器(ROM)和随机存储器(RAM)。7.2.1 程序存储器的扩展程序存储器的扩展 AT89C51单片机内部有4KB Flash ROM,当程序大于4KB时,就需要扩展程序存储器。 单片机系统中最常见的程序存储器是用紫外线擦除的27系列E

7、PROM芯片,如27C64(8KB)、27C128(16KB)、27C256(32KB)以及27C512(64KB)等。在一些特殊的场合,可能需要系统有在线编程功能,这时就只能用E2PROM和Flash ROM作为程序存储器了。(1)EPROM 紫外线可擦除的可编程半导体只读存储器。一般以27开头,双列直插式28脚封装结构,掉电后信息不会丢失,编程时需要专用的编程器写入。27系列芯片上一般都有一个小石英窗口,用于擦除其中的信息,当写入调试好的程序后,一定要将小石英窗口用不透明的胶纸帖上,否则,阳光中的紫外线可能会破坏其中的信息。常用EPROM芯片有 Intel 2716 (2KB8位)、273

8、2 (4KB8位)、2764 (8KB8位)、27128(16KB8位)、27256(32KB8位)、27512(64KB8位)。 在此以2764作为单片机程序存储器扩展的典型芯片为例进行说明。 2764的引线 2764是的管脚图如图7-5所示。 A12A0:13位地址信号输入线,说明芯片的容量为8K个存储单元。 D7D0 :8位数据输入线,表明芯片的每个存贮单元存放一个字节。 :片选输入信号线。当它为有效低电平时,能选中该芯片。 :输出允许信号。当为低电平时,芯片中的数据可由D7D0输出。 :编程脉冲输入端。当对EPROM编程时,由此加入编程脉冲。读时为高电平。CEOEPGMVppA12A7

9、A6A5A4A3A2A1A0D0D1D2GNDVccPGMNCA8A9A11A10OECED7D6D5D4D32764图7-5 EPROM封装引脚图11415282764的连接使用 a. 地址线的连接b. 数据线的连接c. 控制线的连接P2A12|A8ALEA7|A0P0D7|D0高5位地址线低8位地址线8位数据线地址锁存器74LS373PSENOEEACE89C51图7-6 单片ROM扩展连线图2764(2)E2PROM 电可擦除可编程只读存储器。一种掉电后数据不丢失的存储器芯片。E2PROM的使用非常简单方便,不用紫外线擦除,在单一的+5V电压下写入的新数据即覆盖了旧数据。 在此以E2PR

10、OM2864芯片为例进行介绍。它是8KB电可擦除可编程只读存储器,采用单一的+5V供电,最大工作电流为160mA,具有28个引脚的双列直插式集成电路芯片。 由于片内设有编程所需的高压脉冲产生电路,因此无需编程电源和编程脉冲即可完成写入工作。既可作为程序存储器也可作为数据存储器使用,只是连接方法有所不同。 E2PROM2864芯片引脚分布如图7-7所示,各引脚的含义如下: A0A12为13根地址线,可寻址片内8KB。 D0D7为数据输入/输出线。 为片选输入线,当为低电平时选中该芯片。 为数据输出选通线,当为低电平时数据可由D0D7输出。 WE为写入使能端,当为低电平时数据可写入片内。 VCC为

11、电源,一般为+5V。CEOENCA12A7A6A5A4A3A2A1A0D0D1D2GNDVccNCA8A9A11A10OECED7D6D5D4D32864WE图7-7 E2PROM2864芯片封装引脚图1281415(3)闪速存储器 可编程可擦除的ROM(简称PEROM)。具有掉电情况下信息可保存,且可以在线写入(写入前自动擦除)等特点,写入时可以按页连续字节写入,读出也是快速的。它有比E2PROM更优越的性能和更低的价格。很多厂商都生产Flash芯片,如ATMEL 公司的AT29C256(32KB Flash)、AT29C512(64KB Flash)等。 下面以AT29C256芯片为例介绍

12、闪速存储器的有关知识和使用方法。AT29C256芯片的容量为32KB,引脚数量为28条。 AT29C256芯片的引脚排列如图7-8所示。 主要引脚功能如下: A0A14:地址线,可寻址片内32KB。 I/O0I/O7:三态双向数据线。 :片选信号线,低电平输入有效。 :输出允许(读允许)信号线,低电平输入有效。 :写允许信号线,低电平输入有效。CEOEWEA12A7A6A5A4A3A2A1A0GNDVccA8A9A11A10OECEA14图7-8 Flash ROM ATC29C256芯片引脚图1281415WEI/O0I/O1I/O2I/O7I/O6I/O5I/O4I/O3A13AT29C2

13、567.2.2 数据存储器的扩展数据存储器的扩展 单片机系统扩展数据存储器按存储器接口类型可分为两种,即扩展并行接口的数据存储器和扩展串行接口的数据存储器。传统的扩展数据存储器的方法即是指扩展并行接口的数据存储器。 (1)数据存储器的扩展概述 单片机与数据存储器的连接方法和程序存储器连接方法大致相同,简述如下: a. 地址线的连接,与程序存储器连法相同。 b. 数据线的连接,与程序存储器连法相同。 c. 控制线的连接,主要有下列控制信号: 存储器输出信号和单片机读信号相连即和P3.7相连。 存储器写入信号和单片机写信号相连即和P3.6相连。 ALE:其连接方法与程序存储器相同。 使用时应注意,

14、访问内部或外部数据存储器时,应分别使用MOV及MOVX指令。OE外部数据存储器通常设置二个数据区: 低8位地址线寻址的外部数据区。此区域寻址空间为256个字节。CPU可以使用下列读写指令来访问此存贮区。 读存储器数据指令:MOVXA,Ri 写存储器数据指令:MOVXRi,A 由于8位地址线寻址指令占字节少,程序运行速度快,所以经常采用。 16位地址线寻址的外部数据区。当外部RAM容量较大,要访问RAM地址空间大于256个字节时,则要采用如下16位寻址指令。 读存储器数据指令:MOVXA,DPTR 写存储器数据指令:MOVXDPTR,A 由于DPTR为16位的地址指针,故可寻址64KB RAM字

15、节单元。(2)数据存储器扩展使用的典型芯片数据存储器扩展常使用随机存储器芯片,用得较多的是Intel公司的6116(容量为2KB8bit)和6264(容量为8KB8bit)。(3)数据存储器扩展方法 单片数据存储器扩展 89C51与6264的连接如表7-10所示。多片数据存储器扩展7.3 并行并行I/O口扩展口扩展 在51系列单片机的4个并行I/O口中,P0口和P2口通常用作地址线,不能作I/O口,P3口作为第二功能使用时,某些位要做控制线使用,所以只有P1口可以完全作为I/O口使用。因此,对复杂的应用系统往往不够用,必须进行I/O口扩展。 51系列单片机的片外扩展I/O口和片外RAM统一编址

16、,扩展的接口相当于扩展的片外RAM,CPU访问外部接口如同访问外部RAM,也使用“MOVX”指令。7.3.1 基本基本I/O口的扩展口的扩展 在一般的应用系统中,常用TTL电路或CMOS电路进行并行数据的输入输出。根据“输入三态,输出锁存”与总线相连的原则,选择74HC系列的TTL电路或MOS电路即可组成简单的扩展I/O口。简单的并行输入、输出口扩展电路。 从图7-12可知,输入和输出接口都是在P2.7为0时有效,故输入和输出口占有相同的地址编码(设为7FFFH),但由于它们分别由和信号控制,仍然不会发生冲突。 如果要访问74HC273可以使用指令MOV DPTR,#7FFFH和写外部I/O口

17、指令MOVX DPTR,A实现。要是访问74HC244可以使用指令MOV DPTR,#7FFFH和读外部I/O口指令MOVX A,DPTR实现。 用串行口扩展I/O口 在图7-14中,单片机的RXD作为串行输入端与并入串出移位寄存器74LS165的串行输出端QH相连。TXD为移位脉冲输出端,与所有的74LS 165芯片的移位脉冲输入端CP相连。用一根I/O线P1.0与74LS 165的置位/移位端S/L相连,以控制74LS 165的置位和移位。扩展多个8位输出口时,应将两芯片的首尾(QH与SIN)相连。从图7-14可知,利用74LS165可将外部16位数据并行输入74LS165,再串行读入单片

18、机,并把它们转存到内部RAM数据区。 在图7-15中,使用8位串入并出移位寄存器74LS164扩展并行输出口,用单片机的RXD(P3.0)端作为串行输出与74LS164的数据输入端A、B(1、2脚)相连。TXD(P3.1)为移位脉冲输出端,与74LS164的时钟脉冲输入端CP(8脚)相连。由P1.0线控制74LS164的清除端S/L(9脚)。7.3.2 可编程可编程I/O口芯口芯片片8255及应用及应用(1)内部结构 8255是Intel公司生产的可编程并行I/O接口芯片,该芯片有A、B、C共3个8位并行I/O口,具有3个通道3种工作方式。8255可作为单片机与多种外设连接时的中间接口电路。

19、8255是一个40引脚的双列直插式集成电路芯片,其内部结构如图7-16所示。 图7-16 8255内部结构图 数据总线缓冲器:这是一个双向三态的8位数据缓冲器,它是8255与CPU数据总线的接口。 三个I/O端口A,B和C:三个端口都是8位的,但是在结构和功能上有所不同。A端口包含一个8位数据输出锁存器/缓冲器和一个8位数据输入锁存器。B端口包含一个8位数据输入/输出锁存器/缓冲器和一个8位数据输入缓冲器。C端口包含一个8位数据输出锁存器/缓冲器和一个8位数据输入缓冲器,无输入缓冲功能。 A组和B组控制电路:8255的三个端口在使用时分为A、B组。A组包括A端口8位和C端口的高4位,B组包括B

20、端口8位和C端口的低4位。 读写控制逻辑: A0、A1两位地址信号,用于端口选择; 和 为8255的读写控制信号; 为片选信号;RESET为复位信号,芯片复位后,控制寄存器清0,各端口被置为输入方式。对8255的端口寻址见表7-13。RDWRCSCSRDWR表7-13 8255端口寻址操操 作作A0A0A1A1功功 能能读操作00001A口数据总线00101B口数据总线01001C口数据总线写操作00010数据总线A口00110数据总线B口01010数据总线C口01110数据总线控制字寄存器禁止功能1D7D0数据总线呈高阻状态01101非法状态011D7D0数据总线呈高阻状态(2)工作方式和控

21、制字 工作方式控制字。8255的工作方式控制字有两个:方式控制字、端口C按位置位/复位控制字。8255有三种工作方式: 方式0基本输入/输出方式; 方式1选通输入/输出方式; 方式2双向选通输入/输出方式。 由CPU输出指令输出一个控制字到8255的控制寄存器来选择各端口的工作方式。 a方式控制字。 例如,要求8255的工作方式为:A口为方式0输入,B口为方式1输入,C口高4位输入,C口低4位输出,则方式控制字为10011110B即9EH。b端口C按位置位/复位控制字。 例如,要将PC3置1,则C口置位控制字应写入00000111B即07H。 8255工作方式a方式0-基本输入/输出方式。适用

22、于无条件数据传送,可供使用的是两个8位口(A口和B口)和两个4位口(C口高4位部分和C口低4位部分)。没有规定固定的应答联络信号,可用A,B,C三个口的任一位充当查询信号,其余I/O口仍可作为独立的端口和外设相连。b方式1-选通输入/输出方式。该方式下A口和B口是数据口,C口是控制口,用于传送和保存数据口所需要的联络信号。其中C口需要6位(分成两个3位)分别作为A口和B口的应答联络线,其余2位仍可工作在方式0,可通过编程设置为输入或输出。方式1是有条件的,适用于以查询或中断方式进行控制。c方式2-双向传送方式。只有A口才能选择这种工作方式,这时A口既能输入数据又能输出数据。方式2适用于查询或中

23、断方式的双向数据传送。如果把A口置于方式2下,则B口只能工作于方式0。在这种方式下需使用C口的5位口线作控制线。C口作为联络信号时其分布情况见表7-14所示。 OBFAOBFAACKAACKASTBASTBAACKBSTBBOBFB表7-14 8255 C口的联络信号C口位线口位线方式方式1方式方式2输入输入输出输出输入输入输出输出PC7PC6PC5IBFAIBFAPC4PC3INTRAINTRAINTRAINTRAPC2IBFBPC1PC0INTRBINTRB实训八:用实训八:用8255实现接口扩展实现接口扩展1实训目的实训目的 通过本次实训,(1)学会可编程I/O口芯片8255A的使用;(

24、2)学会锁存器74LS373的使用;(3)熟练掌握单片机用8255实现扩展控制数码管滚动显示数字串的方法与技巧;(4)进一步熟悉调试C51源程序的方法与技巧。2知识要点知识要点 (1)硬件电路及工作原理 本实训是通过可编程I/O芯片8255A扩展控制数码管动态显示一串数字。硬件电路图见教材176页。其中AT89C51为美国ATMEL公司生产的MCS-51单片机。电阻R1、电容C3组成上电自动复位电路。X1为石英晶体振荡器,它与电容C1和C2共同组成时钟振荡电路。八位LED数码管显示数字,为共阳极结构,数码管采用动态扫描显示方式。 74LS373为地址锁存器,用来锁存P0口输出的低8位地址。82

25、55A扩展使用PA口控制数码管段码,PB口控制数码管位码。 (2)参考程序见教材177页。3实训器材实训器材 (1)DICE-5208K开发型单片机综合实验仪1套。 (2)PC机1台。 (3)DICE-3000仿真器1台。 (4)带插针的导线若干。4实训内容及步骤实训内容及步骤 (1)启动ISIS7 professional软件(具体使用方法见本教材附录五),并用其绘制图7-20所示电路原理图。 (2)启动Keil C51 uvision4软件(具体使用方法见本教材附录四)。建立工程,输入上述C51参考源程序并编译调试生成二进制的目标文件。 (3)将第(2)步生成的二进制目标文件加载到第(1)

26、步所绘图7-20所示电路原理图的AT89C51单片机中,然后仿真运行观察数码管的显示情况是否符合要求。 (4)按硬件电路焊好电路板,将参考程序写入AT89C51单片机中,通电,观察数码管的显示情况是否符合要求。5思考题思考题(1)简述锁存器74LS373的作用。(2)说明8255A分别用哪个端口控制段码和位码?(3)本实训有哪些注意事项?(4)如何用汇编语言编程实现该功能?小小 结结本章主要介绍了单片机系统扩展的结构与方法,存储器的类型及与单片机的连接方法,并行I/O端口扩展与可编程芯片8255的使用。第一,单片机系统扩展的结构。MCS-51单片机常使用并行总线结构,采用三总线方式。其存储器扩

27、展编址方法有线选法和译码法两种。译码法中常用的译码芯片是74LS138和74LS139。第二,存储器扩展包括程序存储器扩展和数据存储器扩展两种。其中程序存储器常用芯片有EPROM、E2PROM和Flash ROM。数据存储器主要是SRAM芯片,另外E2PROM和Flash ROM也可作数据存储器使用,只是读写的速度较SRAM慢。 第三,单片机I/O口的扩展包括并行和串行I/O口的扩展两种。简单I/O口扩展主要是使用74LS244和74LS273实现扩展输入和输出。另外常用可编程I/O接口芯片8255进行扩展,它可用编程的方法扩展三个端口:A口、B口和C口。习题与思考题习题与思考题一、填空题一、

28、填空题 1MCS-51单片机在访问片外存储器时,利用 信号锁存来自 口的低8位地址信号。 28051单片机扩展I/O口时占用片外 存储器的地址。 38051单片机寻址外设端口时用 寻址方式。 4三态缓冲寄存器输出端的“三态”是指 态、 态和 态。 5扩展外围芯片时,片选信号的二种产生方法为: 、 。 674LS138是具有3个输入端的译码器芯片,其输出作为片选信号时,最多可以选中 块芯片。 774LS273通常用来作简单 接口扩展,74LS244通常用来作简单 接口扩展。 812根地址线可选 个存储单元,32KB存储单元需要 根地址线。二、选择题二、选择题 16264芯片是( )。 ARAM

29、BE2PROM CFlash ROM DEPROM 2使用8255可以扩展出的I/O口线是( )。 A16根 B22根 C24根 D32根 3当8031单片机外部需扩展8KB程序存储器时,需使用芯片EPROM 2716( )。 A2片 B3片 C4片 D5片 4访问外部数据存储器时,不起作用的信号是( )。 A B CALE D 5MCS-51外扩ROM,RAM和I/O口时,它的数据总线是( ) A P0 BP1 CP2 DP3 6扩展存储器时要加锁存器373,其作用是( )。 A锁存寻址单元的低八位地址 B锁存寻址单元的数据 C锁存寻址单元的高八位地址 D锁存相关的控制和选择信号三、综合题三

30、、综合题 1解释三总线的概念。2I/O 数据有几种传送方式?各有什么特点?3外设端口有几种编址方法?各有什么特点?4为什么当 P2 口作为地址总线后,如有剩余口线也不再适合做通用 I/O 口? 5MCS-51单片机系统中,片外程序存储器和片外数据存储器共用 16 位地址线和 8 位数据线,为何不会产生冲突?6某一单片机应用系统,需扩展 4KB 的EPROM 和 2KB 的 RAM,还需外扩一片 8255 并行接口芯片,采用线选法,画出硬件连接图,并指出各芯片的地址范围。7某单片机应用系统,需扩展2片8KB的EPROM 和2片8KB的RAM,采用地址译码法,画出硬件连接图,并指出各芯片的地址范围。88255A 有几种工作方式?如何选择工作方式?A口和B口的工作方式是否完全相 同? 98255A 的端口地址为7F00H 7F03H,试编程对8255A初始化,使A口按方式 0 输入,B口按方式 1 输出。108255A 的方式控制字和C口按位置位/复位控制字均写入8255A的控制寄存器,8255A 是如何来区分这两个控制字的?

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com