模式1—锁存I/O
我们将模式1称为锁存输入输出或握手输入输出。当输入设备以不规则的时间间隔向微处理器提供数据时,我们使用此模式。一个以模式编程的端口使用三个握手信号。这些握手信号由端口C提供。只有端口A和B在模式1下工作。当我们将它配置为输入端口或输出端口时,引脚PC2、PC1和PC0为端口B提供握手信号。此外,引脚PC7、PC6和PC3为端口A提供握手信号。需要注意的是,PC3引脚是输入端端口A的握手线,也执行输出操作。如果端口A和B都以模式1工作,则端口C的其余两个引脚用于在模式0下执行简单的输入输出操作。如果端口A或B中的任何一个以模式1工作,则端口C的其余5个引脚完全空闲。
示例1:将端口A配置为锁存输入端口,端口B配置为锁存输出端口,并将PC7、PC6配置为输出线。
所需的模式定义控制字如下图所示:
需要注意的是,最低位(LS位)是一个无关紧要的位。这是因为端口C的下四条线
用于握手目的,其中一些将是输入引脚,另一些是输出引脚。8255将自动配置这些握手引脚,因此此LS位是0还是1并不重要。
位3必须为0,以指示PC7和PC6是输出线。在这种情况下,它并不意味着
整个端口C上部是输出,因为PC5和PC4用于握手目的。假设片选电路,实现此要求的指令如下所示。
MVI A, B4H ; Treating X as 0 OUT 23H
广告