8255 的工作模式
8255 支持三种工作模式:模式 0、模式 1 和模式 2。
模式 0 称为简单输入输出或基本输入输出,用于执行最简单的操作模式。8255 的每个端口都可以编程为在模式 0 下工作。
模式 1 称为带应答的输入输出或握手输入输出。当微处理器以不规则的时间间隔向输入设备提供数据时,它非常有用。最后,当处理器读取数据时,端口会通知输入设备处理器已经读取了数据。此信息由称为握手信号的信号提供。这些握手信号由端口 C 提供。只有端口 A 和 B 在模式 1 下工作。然后端口 C 的 5 条线使用模式 0。在模式 0 和 1 中,端口充当输入端口或输出端口。这取决于连接到端口的是输入设备还是输出设备。它对于微处理器接收信息以及有时向连接到端口的输入输出设备发送信息非常有用。
模式 2 称为双向握手输入输出。例如,软盘控制器卡。此外,在模式 0 或 1 中,端口充当输入或输出端口。
因此,可以得出结论:
端口 A 分别工作在模式 0、模式 1 或模式 2;
端口 B 只能工作在模式 0 或模式 1;
当且仅当端口 A 和端口 B 处于模式 0 时,端口 C 才工作在模式 0。否则,在分配握手线后,端口 C 的任何空闲线都将用于模式 0。
8255 的引脚图如下所示
我们寻址端口 C 上部和端口 C 下部,以便它们构成一个唯一的 8 位端口。因此,我们将端口 C 分成 2 个 4 位的部分。因此,我们将端口 C 下部编程为输入,端口 C 上部编程为输出。
下表描述了如何在 8255 中进行端口选择。
A1 | A0 | 所选端口 |
---|---|---|
0 | 0 | 端口 A |
0 | 1 | 端口 B |
1 | 0 | 端口 C |
1 | 1 | 控制端口 |
广告