10.5方式2 (1)方式2的基本功能 这是一种双向工作方式,使外设在单一的 8位数据总线上,既能发送数据,也能接收数 据,实现与CPU的双向通信。 有端口A具有双向工作方式,并占用C端 口的5位作控制联络线 (2)方式2工作时的控制信号,如下图示
2 (1)方式2的基本功能 这是一种双向工作方式,使外设在单一的 8位数据总线上,既能发送数据,也能接收数 据,实现与CPU的双向通信。 只有端口A具有双向工作方式,并占用C端 口的5位作控制联络线。 (2)方式2工作时的控制信号,如下图示: 10.5 方式 2
PC INTRA PAPAO KM PO OBFA inte PC ACKA INTE PC STB A PC IBE WR RD PC 1/O (新书有错) 图10-10方式2工作时的控制信号
3 PC3 PC7 PC6 PC4 PC5 PC2~0 PA7~PA0 INTE 1 INTE 2 >1 & & 8 STBA ACKA OBFA (新书有错) INTRA IBFA WR RD I/O 图10-10 方式2工作时的控制信号
各个信号的意义如下: a.INTR中断请求,高电平有效,在输入或 输出时,都可以用来作为向CPU发中断请求信 b.OBF输出缓冲器满信号,低电平有效, 当其有效,表示CP将一个数据写入到8255A 的A端口。 C.ACK这是外设对OBF的响应信号,ACK的 上升沿是数据已输出的回答信号
4 各个信号的意义如下: 各个信号的意义如下: a.INTR 中断请求,高电平有效,在输入或 输出时,都可以用来作为向CPU发中断请求信 号。 b.OBF 输出缓冲器满信号,低电平有效, 当其有效,表示CPU将一个数据写入到8255A 的A端口。 c.ACK 这是外设对OBF的响应信号,ACK的 上升沿是数据已输出的回答信号
d.INTE中断允许信号,当PC设置为1,则 INTE1=1,表示允许8255A由INTR向CPU发中断 请求信号,以通知CPU现可往8255A的端口A输 出一个数据。若INTE1=0,则屏蔽了中断请求 e.STB外设给8255A的选通信号,低电平 有效,此信号将外设送到8255A的数据打入输 入锁存器
5 d.INTE1 中断允许信号,当PC6设置为1,则 INTE1=1,表示允许8255A由INTR向CPU发中断 请求信号,以通知CPU现可往8255A的端口A输 出一个数据。若INTE1=0,则屏蔽了中断请求。 e.STB 外设给8255A的选通信号,低电平 有效,此信号将外设送到8255A的数据打入输 入锁存器
f.IBF输入锁存器满信号,这是8255A 送给CPU的状态信号,高电平有效,表示当 前已有一个新数据送到输入锁存器,等待 CPU取走。 g.INTE2中断允许信号,当PC设置为1 则INTE2=1,表示端口A的输入处于中断允 许状态。 (2)方式2的时序 请参阅P297的图7-27,它相当于方式1 的输入时序和输出时序的组合,不再详述
6 f.IBF 输入锁存器满信号,这是8255A 送给CPU的状态信号,高电平有效,表示当 前已有一个新数据送到输入锁存器,等待 CPU取走。 g.INTE2 中断允许信号,当PC4设置为1, 则INTE2=1,表示端口A的输入处于中断允 许状态。 (2)方式2的时序 请参阅P297的图7-27,它相当于方式1 的输入时序和输出时序的组合,不再详述
(3)方式2的控制字 当端口A工作在方式2时,端口B可工作 在方式0,亦可工作在方式1,既可作输入 口也可作输出口。而端口C剩下3位视B囗 而定,若B口工作在方式0,C口剩下3位可 工作在方式0,若B口工作在方式1,则C口 剩下3位作B口的联络线
7 (3)方式2的控制字 当端口A工作在方式2时,端口B可工作 在方式0,亦可工作在方式1,既可作输入 口也可作输出口。而端口C剩下3位视B口 而定,若B口工作在方式0,C口剩下3位可 工作在方式0,若B口工作在方式1,则C口 剩下3位作B口的联络线
例1:设A端口工作于方式2,B端口工作 于方式0输出,PC2~PC工作在方式0输入。 则控制字为: 11××001=CH 设为0
8 例1: 设A端口工作于方式2,B端口工作 于方式0输出,PC2~PC0工作在方式0输入。 则控制字为: D7 D 0 1 1 ╳ ╳ ╳ 0 0 1 =C1H 设为0
例2:设A端口工作在方式2,B端口工作 于方式1输入 11XX11×=C6H B B 方式1入 允许方式2中断: 允许输出中断(置位PC)0000101B→0DH 允许输入中断(置位PC0000018→09H
9 例2:设A端口工作在方式2,B端口工作 于方式1输入。 允许方式2中断: 允许输出中断(置位PC6)00001101B→0DH 允许输入中断(置位PC4)00001001B→09H 1 1 ╳ ╳ ╳ 1 1 ╳ =C6H B B 方式 1 入
10.68255A应用举例 8255A作为打印机接口,工作于方式1,采用中 断方式向打印机输出数据,如下图示: 个宽行打印机需要一个数据选通信号,现由 CPU控制PC来产生选通脉冲,打印机的 ACKNLG连 到PC端作ACK,OBF在这里没有用,将它悬空。设 把PC2连到PC总线的IRQ2上,对应于中断类型号 0FH,其中断向量存在0:003CH开始的4个单元中
10 10.6 8255 10.6 8255A应用举例 8255A作为打印机接口,工作于方式1,采用中 断方式向打印机输出数据,如下图示: 一个宽行打印机需要一个数据选通信号,现由 CPU控制PC0来产生选通脉冲,打印机的ACKNLG连 到PC6端作ACK,OBF在这里没有用,将它悬空。设 把PC3连到PC总线的IRQ7上,对应于中断类型号 0FH,其中断向量存在0:003CH开始的4个单元中
8255A 打印机 PATPAOr A口 RD DATA WR PC 0 STROBE 驱动器 CPU PC ACKNLG ACK PC7 OBF PC CS INTR至系统 总线的RQ7 设为F4~F7H 图10-118255A应用举例
11 8255A 打印机 D7~D0 WR CPU A口 PC3 PC7 PC6 PC0 驱动器 PA7~PA0 INTR至系统 总线的IRQ7 ACKNLG DATA STROBE RD A1 ACK A0 OBF CS 设为F4~F7H 图10-11 8255A应用举例