预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共47页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

单片机原理第八章MCS-51I/O接口扩展8.1存储器扩展概述8.2MCS-51与8255A的接口8.3MCS-51与8155H的接口8.4用74LSTTL扩展I/O口8.5用MCS-51的串行口扩展并行口8.1I/O扩展概述8.1I/O扩展概述8.2MCS-51与8255A的接口8.2MCS-51与8255A的接口2、内部结构(1)端口A、B、C均为8位I/O数据口,但功能和结构上有些差异PA口:输出锁存和缓冲;输入锁存PB口:输出锁存和缓冲;输入缓冲PC口:输出锁存;数据输入缓冲PC口可在软件的控制下,分为两个4位端口,作为PA口、PB口选通方式操作时的状态控制信号。三个端口都可以和外设相连,分别传送外设的输入/输出数据或控制信息。(2)A组和B组控制电路A组:PA口和PC口的上半部(PC7~PC4);B组:PB口和PC口的下半部(PC3~PC0),可根据命令字”对PC口按位“置1”或“清0”。(3)数据总线缓冲器线线三态双向,作为8255A与单片机数据线之间接口,传送数据、指令、控制命令及外部状态信息。(4)读/写控制逻辑电路线该电路接收CPU发来的控制信号、RESET、地址信号A1、A0等。对端口进行读写。A13、工作方式选择控制字及C口置位/复位控制字8255A有三种工作方式:(1)方式0:基本输入输出;(2)方式1:选通输入输出;(3)方式2:双向传送(仅A口有)。8255的三个端口具体工作在什么方式下,是通过CPU对控制口的写入控制字来决定的。8255有两个控制字:方式选择控制字和C口置/复位控制字。用户通过程序把这两个控制字送到8255的控制寄存器(A0A1=11),这两个控制字以D7来作为标志。工作方式选择控制字C口上半部分(PC7~PC4)随A口称为A组,C口下半部分(PC3~PC0)随B口称为B组。其中A口可工作于方式0、1、和2,而B口只能工作在方式0和1。例如:写入工作方式控制字95H(1001,0101B)可将8255A编程为:A口方式0输入,B口方式1输出,C口的上半部分(PC7~PC4)输出,C口的下半部分(PC3~PC0)输入。C口按位置位/复位控制字可对C口8位中的任一位置“1”或清“0”。用于位控。4、8255A的三种工作方式1方式0(基本输入/输出方式):A口、B口及C口高4位、低4位都可以设置输入或输出,不需要选通信号。基本功能为:(1)具有两个8位端口(A、B)和两个4位端口(C的上半部分和下半部分)。(2)任一个端口都可以设定为输入或输出,各端口的输入、输出可构成16种组合。(3)数据输出锁存,输入不锁存。2方式1(选通输入/输出工作方式):A口和B口通常用于I/O数据传送,C口用作A口和B口的联络线,以中断方式传送数据。方式1输入/STB:选通输入,是由输入外设送来的输入信号。IBF:输入缓冲器满,高电平有效。表示数据已送入8255A的输入锁存器,它由/STB信号的下降沿置位,由/RD信号的上升沿使其复位。INTR:中断请求信号,高电平有效。由8255A输出,向单片机发中断请求。INTEA:A口中断允许,由PC4控制,INTEB:B口中断允许,由PC2控制。8.2MCS-51与8255A的接口A口的方式1输入工作过程:a.当输入设备输入一个数据并送到PA7~PA0上时,输入设备自动在选通输入线/STBA上发送一个低电平选通信号。b.8255A收到/STBA上负脉冲后自动做两件事:一是把PA7~PA0上输人数据存入A口的输入数据缓冲/锁存器;二是使输入缓冲器输出线IBFA变为高电平,以通知输入设备8255A的A口已收到它送来的输入数据。c.8255A同时检测到/STBA变为高电平、IBFA为高电平时使INTRA变为高电平,向CPU发出中断请求。d.CPU响应中断后,可以通过中断服务程序从A口的“输入数据缓冲/锁存器”读取输入设备送来的输入数据。当输入数据被CPU读走后,8255A撤消INTRA上中断请求,并使IBFA变为低电平,以通知输入设备可以送下一个输入数据。A口的方式1输入工作过程(2)方式1输出/OBF:输出缓冲器满信号,8255A给外设的联络信号,外设可以将数据取走。它由/WR信号的上升沿清“0”,由/ACK信号的下降沿置“1”。/ACK:外设的响应信号,外设已将数据取走。INTR:中断请求信号。表示该数据已被外设取走,请求单片机继续输出下一个数据。由/WR的下降沿复位。INTEA:中断允许,由PC6控制。INTEB:中断允许,由PC2控制。8.2MCS-51与8255A的接口B口的方式1输出工作过程:a.8031可以通过MOVX@Ri,A指令把输出数据送到B口的输出数据锁存器,8255A收到后便令输出缓冲器满引脚线/OBFB(PC1)变为低电平,以通知输出设备输出数据已