中国矿业大学硬件课程报告--温度控制系统 - 图文 下载本文

是为Intel系列微处理器设计配套电路,也可用于其他微处理器系统中。通过对它编程,芯片可工作于不同的工作方式。在微型计算机系统中,用8255A做接口时,通常不需要附加外部逻辑电路就可直接为CPU与外设之间提供数据通道,因此得到了极为广泛的应用。

结构和功能

8255A的外部引脚和内部结构如下图

图4-2 8255外部引脚图 图4-3 8255内部功能图

由图可见,8255A由数据端口A、B、C(期中,C口被分为C口上半部分和C口下半部分),A组和B组控制逻辑,数据总线缓冲器和读写控制逻辑。

8255A内部包含3个8位输入输出端口,通过外部的24根输入输出线与外设进行通信联络。A口和B口可以用作8位输入口或8位输出口。C口既可以用作8位输入输出口用,也可作为两个4位的输入输出口。还常常用来配合A口和B口工作,分别用来产生A口和B口的输出

- 13 -

控制信号和输入A口和B口的端口状态端口信号。

A组和B组控制逻辑内部有控制字寄存器,用来接收CPU送来的命令字,然后分别决定A组和B组的工作方式,或对端口C的每一位执行臵位/复位等操作。8255A的端口A和端口C的上半部分(PC7-PC4)由A组控制逻辑管理,端口B和端口C的下半部分(PC3-PC0)由B组控制逻辑管理。这两组控制逻辑都从读/写控制逻辑接收命令信号,从内部数据总线接收控制字,然后向各有关端口发出相应的控制命令。

数据总线缓冲器是一个双向三态的8位缓冲器,用作8255A和系统数据总线之间的接口。通过这个缓冲器和与之相连的8位数据总线D7-D0,接收CPU送来的数据或控制字,外设传送给CPU的数据或状态信息,也通过这个数据总线缓冲器送给CPU。

读/写控制逻辑用来管理所有的内部或外部数据信息,控制字或状态字的传送过程。它从CPU的地址总线和控制总线来的信号,并产生对A组和B组控制逻辑进行操作的控制信号。

表4-1 8255A的基本操作 A1 0 0 1 0 0 1

A0 0 1 0 0 1 0 RD 0 0 0 1 1 1 WR 1 1 1 0 0 0 - 14 -

CS 0 0 0 0 0 0 操作 端口A→数据总线 端口B→数据总线 端口C→数据总线 数据总线→端口A 数据总线→端口B 数据总线→端口C 1 X 1 X 1 X 1 X 1 X 0 1 X 1 1 1 0 0 数据总线→控制字寄存器 数据总线三态 非法状态 数据总线三态 8255A的控制字

方式选择控制字

8255A具有3种基本工作方式。 方式0:基本输入输出方式; 方式1:选通输入输出方式; 方式2:双向总线I/O方式。

端口A可以工作于3种方式中的任一种;端口B只能工作于方式0和方式1,而不能工作于方式2;端口C常被分成2个4位端口,除了用做输入输出端口外,还能用来配合A口和B口工作,为这两个端口的输入输出操作提供联络信号。

图4-4 8255方式选择控制字格式

A. 置位/复位控制字

端口C的数位常用作控制或应答信号,通过对

- 15 -

8255A的控制口写入臵位/复位控制字,可使端口C的任意一个引脚输出单独臵1或臵0,或者为应答式数据传送发出中断请求信号。

D7 D6 D5 D4 D3 D2 D1 D0

任意值 选择PC0-PC7 1 置位 D0=7,标志位 0 复位

图4-5 8255置位/复位控制字格式

工作方式

A.方式0

基本输入输出方式,它适用于不需要应答信号的简单输入输出场合。在这种方式下,A口和B口可作为8位端口,C口的高4和低4为可作为两个4为端口。

CPU与这些端口交换数据时,可以直接输入指令从端口读取数据,或用输出指令将数据写入指定端口,不需要任何其他联络信号。 B.方式1

选通输入/输出方式。在这种方式下,A口和B口作为数据口,均可用于输入或输出方式。而且这两个8位数据口的输入、输出数据都能锁存,但它们必须在联络信号的控制下才能完成I/O操作。端口C的6根线用来产生或接受这些联络信号。 C.方式2

双向总线方式。只有A口可以工作于这种方式。

- 16 -