收藏 分享(赏)

第1节3 8255工作方式.ppt

上传人:oil007 文档编号:2741023 上传时间:2018-09-26 格式:PPT 页数:29 大小:525KB
下载 相关 举报
第1节3 8255工作方式.ppt_第1页
第1页 / 共29页
第1节3 8255工作方式.ppt_第2页
第2页 / 共29页
第1节3 8255工作方式.ppt_第3页
第3页 / 共29页
第1节3 8255工作方式.ppt_第4页
第4页 / 共29页
第1节3 8255工作方式.ppt_第5页
第5页 / 共29页
点击查看更多>>
资源描述

1、方式0基本的输入/输出方式 方式1选通输入/输出方式 方式2双向传输方式 端口A可处于3种工作方式:0、1、2 端口B只可处于2种工作方式:0、1 端口C常常分为高4位和低4位,分别传送数据和控制信息。,可用软件来分别定义3个端口的工作方式,可使用的控制字有定义工作方式控制字和置位/复位控制字。,8255A中各端口可具有三种基本工作方式:,7.1.3 8255的工作方式,7.1.3 8255的工作方式,1.方式0基本输入/输出方式,CPU与端口之间交换数据仅通过输入指令IN与输出指令OUT完成;,不提供任何“握手”信息,适用于各种同步并行传送系统,适合用于无条件传送和查询方式的接口电路中,端口

2、A和端口B可定义为输入端口或输出端口,端口C分成两个四位端口,它们可分别定义为输入或输出端口。CPU和3个端口交换数据可以直接由CPU执行IN和OUT指令来完成。适用于在各种同步并行传送系统中。用于连接简单的外设,如键盘、开关、指示器等。 如果3个端口均处于工作方式0,则有16种工作方式的组合,具体情况应如表7.2所示。P266,1、工作方式0:是一种基本的输入输出工作方式。没有固定的用于应答的联络信号。其基本功能可概括如下:,7.1.3 8255的工作方式,2.方式1选通输入/输出方式,适用于查询和中断方式的接口电路,端口A或端口B仍作为数据的输入/输出口,但同时规定端口C的某些位作为控制或

3、状态信息。,方式1的特点 端口A、B可分别工作在方式1。 端口C配合方式1工作。,2.工作方式1:被称作选通输入/输出方式,在这种工作方式下,数据输入/输出操作要在选通信号控制下完成。(部分PC线作为选通控制信号) 采用工作方式1进行输入操作(外设接口 CPU)时,需要使用的控制信号如下: STB选通信号。由外部输入,低电平有效。 STB有效时,将外部输入的数据锁存到所选端口的输入锁存器中。对A组来说,指定端口C的第4位(PC4)用来接收向端口A输入的STB信号;对B组来说,指定端口C的第2位(PC2)用来接收向端口B输入的STB信号。 IBF输入缓冲存储器满信号。向外部输出,高电平有效。,I

4、BF有效时,表示由输入设备输入的数据已占用该端口的输入锁存器,它实际上是对STB信号的回答信号,待CPU执行IN指令时,RD有效,将输入数据读入CPU,其后沿把IBF置“0”,表示输入缓冲存储器已空,外部设备可继续输入后续数据。对A组来说,指定端口C的第5位(PC5)作为从端口A输出的IBF信号;对B组来说,指定端口的第一位(PC1)作为从端口B输出的IBF信号。 INTR中断请求信号。向CPU输出,高电平有效。 在A组和B组控制电路中分别设置一个内部中断触发器INTEA和INTEB,前者由STBA(PC4)控制置位,后者由STBB(PC2)控制置位。 (书上有错!),当任一组中的STB有效,

5、则把IBF置“1”,表示当前输入缓冲存储器已满,并由STB后沿置“1”各组的INTE,于是输出INTR有效,向CPU发出中断请求信号。待CPU响应这一中断请求,可在中断服务程序中安排IN指令读取数据后置“0”于IBF,外部设备才可继续输入后续数据。 显然,8255A中的端口A和端口B均可工作于工作方式1完成输入操作功能,这种情况下经这样定义的端口状态如图7.6所示。,选通信号,低电平有效,由外设提供的输入信号,当其有效时,将输入设备送来的数据锁存至8255A的输入锁存器,输入缓冲器满信号,高电平有效8255A输出的联络信号。当其有效时,表示数据已锁存在输入锁存器,中断请求信号,高电平有效,82

6、55A输出的信号,可用于向CPU提出中断请求,要求CPU读取外设数据,中断允许触发器 只有当INTE =1时,端口A才能向CPU发出中断请求,用户可通过PC4的置位(INTE=1),复位(INTE=0)来控制中断的允许或禁止。(书上有错!),A端口方式1输入:,选通信号,低电平有效由外设提供的输入信号,当其有效时,将输入设备送来的数据锁存至8255A的输入锁存器,输入缓冲器满信号,高电平有效8255A输出的联络信号。当其有效时,表示数据已锁存在输入锁存器,中断请求信号,高电平有效,8255A输出的信号,可用于向CPU提出中断请求,要求CPU读取外设数据,B端口方式1输入:,方式1需借用端口C用

7、做联络信号,端口C还具有中断请求和屏蔽功能,只有当INTE =1时,端口B才能向CPU发出中断请求,可由用户通过PC2的置位(INTE=1)/复位(INTE=0)来控制。 (书上有错!),图7.6,高电平有效,高电平有效,具体输入过程见下页:,STB:选通信号输入,外设发出 IBF:输入缓冲器满,8255发出 INTE:内部中断触发器, INTR:中断请求, 当外设数据准备好,将数据送至端口线PA7PA0 外设发出选通信号STB:(1) 将数据锁存在输入端口内。(2) STB的下降沿使IBF变高,表示输入端口满,用于阻止外设输入新数据。(3) STB的上升沿使INTE=1, 从而INTR变高,

8、发出中断请求。 中断处理程序中CPU 读取数据,发出RD信号:(1) RD 的下降沿清除INTR(2) RD 的上升沿清除IBF(3) 端口内的数据进入CPU,图 端口A方式 1 输入,INTE A,PA7 PA0,PC4,PC5,PC3,STBA,IBFA,INTRA,I / O,PC6 , PC7,O,RD,&,图 端口B方式 1 输入,当端口A和端口B均定义为工作方式1完成输入操作时,端口C的PC5PC0被用作控制信号,只有PC7和PC6可以完成数据输入或输出操作。,INTE A,PB7 PB0,PC2,PC1,PC0,STBB,IBFB,INTRB,O,RD,&,图7.7 8255方式

9、1输入时序图P269(自学!),IN AL , 数据端口地址,采用工作方式1也可完成输出操作(外设接口 CPU) ,这时需要使用的控制信号如下: OBF输出缓冲存储器满信号。向外部输出,低电平有效。 OBF有效时,表示CPU已将数据写入该端口正等待输出。当CPU执行OUT指令,WR有效时,表示将数据锁存到数据输出缓冲寄存器,由WR的上升沿,将OBF置为有效。对于A组,系统规定端口C的第7位(PC7)用作从端口A输出的OBF信号,对于B组,规定端口C的第1位(PC1)用作从端口B输出的OBF信号。 ACK 外部应答信号。由外部输入,低电平有效。 ACK有效,表示外部设备已收到由8255A输出的八

10、位数据,它实际上是对OBF信号的回答信号。对于A组,指定端口C的第6位(PC6)用来接收向端口A输入的ACK信号;对于B组,指定端口C的第2位(PC2)用来接收向端口B输入的ACK信号。 INTR中断请求信号。向CPU输出,高电平有效。,对于端口A,内部中断触发器INTEA由PC6(ACKA)置位,对于端口B,INTEB由PC2(ACKB)置位。当ACK有效时,OBF被复位为高电平,并将相应端口的INTE置“1”,于是INTR输出高电平,向CPU发出输出中断请求,待CPU响应该中断请求,可在中断服务程序中安排OUT指令继续输出后续字节。对于A组,指定端口C的第3位(PC3)作为由端口A发出的I

11、NTR信号;对于B组,指定端口C的第0位(PC0)作为由端口B发出的INTR信号。 (书上有错!) 如果将8255A中的端口A和端口B均定义为工作方式1完成输出操作功能,那么经这样定义的端口状态如图7.4所示。,经这样定义的端口状态如图7.4所示。,图7.4,响应信号,低电平有效外设的响应信号,指示8255A的端口数据已由外设接受,输出缓冲器满信号,低电平有效8255A输出给外设的一个控制信号,当其有效时,表示CPU已把数据输出给指定的端口,外设可以取走,中断请求信号,高电平有效,当输出设备已接受数据后,8255A输出此信号向CPU提出中断请求,要求CPU继续提供数据,A端口方式1输出:,PC

12、1,PC2,PC0,PB7PB0,INTEB,ACKB,INTRB,OBFB,输出缓冲器满信号,低电平有效8255A输出给外设的一个控制信号,当其有效时,表示CPU已把数据输出给指定的端口,外设可以取走,响应信号,低电平有效,外设的响应信号,指示8255A的端口数据已由外设接受,中断请求信号,高电平有效,当输出设备已接受数据后,8255A输出此信号向CPU提出中断请求,要求CPU继续提供数据,B端口方式1输出:,INTE A,PA7 PA0,PC6,PC7,PC3,PC4, PC5,ACKA,OBFA,INTRA,I / O,O,WR,ACK:外设应答 OBF:输出缓冲器满 INTE:中断允许

13、, INTR:中断请求,,图7.4 端口A方式 1 输出,&, CPU输出数据 CPU发出WR:(1) 数据写到 8255A的端口(2) WR的低电平清除中断请求信号INTR (3) WR的上升沿使OBF有效,表示输出端口满,通知外设取数据。 外设接受到数据后,发出ACK信号:(1) ACK的下降沿使OBF变高,(2) ACK的上升沿使INTE=1, 则INTR变高,发出中断请求,请求CPU输出新的数据。,具体输出过程:,当端口A和端口B均定义为工作方式1完成输出操作时,端口C的PC6、PC7 和PC3PC0被用作控制信号,只有PC4, 5完成数据输入或输出操作。,图7.5 8255方式1输出

14、时序图(自学!),OUT 数据端口地址 , AL,3.工作方式2:带选通的双向传送方式。8255A中只允许端口A处于工作方式2,可用来在两台处理机之间实现双向并行通信。相关的控制信号由端口C提供。 1. OBF 输出缓冲存储器满信号:向外部输出,低电平有效。 2. ACK 外部应答信号:外部输入,低电平有效。 3. STB 选通信号:由外设输入,低电平有效、 4. IBF 输入缓冲存储器满信号:向外部输出,高电平有效。 5. INTR 中断请求信号:向CPU发出,高电平有效。,端口A工作于方式2所需控制信号如下: OBFA输出缓冲存储器满信号。向外部输出,低电平有效。OBFA有效,表示要求输出

15、的数据已锁存到端口A的输出锁存器中,正等待向外部输出。CPU用OUT指令输出数据时,由WR信号后沿将OBFA置成有效。系统规定端口C的第7位(PC7)用作由端口A输出的OBFA信号。, ACKA应答信号。由外部输入,低电平有效。ACKA有效,表示外部已收到端口A输出的数据,由ACKA后沿将OBF置成无效(高电平),表示端口A输出缓冲存储器已空,CPU可继续向端口A输出后续数据。它实际上是OBFA的回答信号。系统规定端口C的第6位(PC6)用来接收输入的ACKA信号。 STBA数据选通信号。由外部输入,低电平有效。STBA有效,将外部输入的数据锁存到数据输入锁存器中,系统规定端口C的第4位(PC

16、4)用来接收输入的STBA信号。, IBFA输入缓冲存储器满信号。向外部输出,高电平有效。IBFA有效时,表示外部已将数据输入到端口A的数据输入锁存器中,等待向CPU输入,它实际上是对STBA的回答信号。系统规定端口C的第5位(PC5)用作输出的IBFA信号。 INTR中断请求信号。向本端CPU输入,高电平有效。无论是进行输入还是输出操作,都利用INTR向CPU发出中断请求。对于输出操作,ACKA有效时将内部触发器INTE1置“1”,当OBFA被置成无效时,表示输出缓冲存储器已空,向CPU发出输出中断请求(INTRA有效),待CPU响应该中断请求可在中断服务程序中继续输出后续数据;对于输入操作

17、,当STBA有效,外部将数据送入端口A,的输入锁存器后,使IBFA有效,STBA的后沿将内部触发器INTE2置“1”,向CPU发出输入中断请求(INTRA有效),待CPU响应该中断请求可在中断服务程序中安排IN指令读入从端口A输入的数据。系统规定端口C的第3位(PC3)用作INTRA信号。 8255A中端口A工作于方式2时,允许端口B工作于方式0或方式1,完成输入/输出功能。 8255A芯片的4种端口状态如图A所示。,用PC6设置INTE1(输出) 用PC4设置INTE2(输入) 输入和输出中断通过 或门输出INTRA信号,3.方式2:带选通双向传送方式,适用于与双向传送数据的外设,适用于查询和中断方式的接口电路,方式2只适用于端口A,既能发送数据也能接收数据(双向总线I/O)。,图A,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 中等教育 > 小学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报