ACK输出缓冲器满信号,低电平有效。用来告诉外设, 在规定的接口上CPU已输出一个有效的数据,外设可以从该 口取走此数据。 今,OBF外设响应信号,低电平有效。用来通知接口外设 经将数据接收,并使 OBF=1° INTR:中断请求信号,高电平有效。当外设已从接口取 走数据,口的缓冲器变空,且接口允许中断时,INTR有效。 即,ACK=1OBF=且允许中断,则INTR=1
: 输出缓冲器满信号,低电平有效。用来告诉外设, 在规定的接口上CPU已输出一个有效的数据,外设可以从该 口取走此数据。 :外设响应信号,低电平有效。用来通知接口外设 已经将数据接收,并使 。 INTR:中断请求信号,高电平有效。当外设已从接口取 走数据,口的缓冲器变空,且接口允许中断时,INTR有效。 即, 且允许中断,则INTR=1。 OBF ACK OBF =1 ACK =1OBF =1
(2)方式1下,A口和B口均为输入 这种情况和两口均为输出类似,各条控制引线的定义如 图7.11所示 A口 A口 PC BFA PCA STBA PC ACKA BFA INTRA PC3 INTRA 8255 0 e IntRB LINTRB OBFB 一IBFB ACKB PC2 STBB B口 B囗 图7.10A口和B口作输出口时,图7.11A口和B口作输入口时, C口提供的控制 C口提供的控制引线
(2)方式1下,A口和B口均为输入 这种情况和两口均为输出类似,各条控制引线的定义如 图7.11所示。 A口 B口 PC7 P C6 PC3 PC2 PC0 PC1 OBFA ACKA ACKB OBFB INTRA INTRB 8255 A口 B口 PC4 P C5 PC3 PC2 PC0 PC1 STBA STBB INTRA INTRB IBFA IBFB 8255 图7.10 A口和B口作输出口时, C口提供的控制引线 图7.11 A口和B口作输入口时, C口提供的控制引线
各控制信号的含义如下: STB:输入选通信号,低电平有效。它由外设提供,利用该 信号可以将外设数据锁存于8255的口锁存器中。 IBF:输入缓冲器满信号,高电平有效。当它有效时,表示 已有一个有效的外设数据锁存于8255的口锁存器中。可用此信号 通知外设数据已锁存于接口中,尚未被CPU读走,暂不能向接口 输入数据。 INTR:中断请求信号,高电平有效。当外设将数据锁存于 接口之中,且又允许中断请求发生时,就会产生中断请求 工作方式2,又称双向输入输出方式I/0操作 只有A口才能工作在方式2。A口工作方式2时要利用C口的5 条线才能实现。此时,B口只能工作在方式0或者方式1下,而C 口剩余的3条线可作为输入线、输出线或B口方式1之下的控制线。 C口提供的控制线如图7.12所示
各控制信号的含义如下: :输入选通信号,低电平有效。它由外设提供,利用该 信号可以将外设数据锁存于8255的口锁存器中。 IBF:输入缓冲器满信号,高电平有效。当它有效时,表示 已有一个有效的外设数据锁存于8255的口锁存器中。可用此信号 通知外设数据已锁存于接口中,尚未被CPU读走,暂不能向接口 输入数据。 INTR:中断请求信号,高电平有效。当外设将数据锁存于 接口之中,且又允许中断请求发生时,就会产生中断请求。 2. 工作方式2,又称双向输入输出方式I/O操作 只有A口才能工作在方式2。A口工作方式2时要利用C口的5 条线才能实现。此时,B口只能工作在方式0或者方式1下,而C 口剩余的3条线可作为输入线、输出线或B口方式1之下的控制线。 C口提供的控制线如图7.12所示。 STB
A囗 PC P BFA PCe ACKA 8255 PO STBA BFA INTRA 图7.12工作方式2时,C口提供的控制线 7348255的控制字及初始化程序 8255是编程接口芯片,通过控制字(控制寄存器)对其端口 的工作方式和C口各位的状态进行设置。8255共有两个控制字 个是工作方式控制字,另一个是C口置位/复位控制字。这两个 控制字共用一个地址,通过最高位来选择使用那个控制字 工作方式控制字 主要功能:确定8255接口的工作方式及数据的传送方向。 各位的控制功能如图713所示
A口 PC4 P C5 PC3 OBFA ACKA STBA P C6 PC7 IBFA INTRA 8255 图7.12 工作方式2时,C口提供的控制线 7.3.4 8255的控制字及初始化程序 8255是编程接口芯片,通过控制字(控制寄存器)对其端口 的工作方式和C口各位的状态进行设置。8255共有两个控制字, 一个是工作方式控制字,另一个是C口置位/复位控制字。这两个 控制字共用一个地址,通过最高位来选择使用那个控制字。 1. 工作方式控制字 主要功能:确定8255接口的工作方式及数据的传送方向。 各位的控制功能如图7.13所示