8255内部包括三个并行数据输入/输出端口,两个工作方式控制电路,一个读/写控制逻辑电路和8位总线缓冲器。各部分功能概括如下:
(1)端口A、B、C
A口:是一个8位数据输出锁存器/缓冲器和一个8位数据输入锁存器。
B口:是一个8位数据输入/输出锁存器/缓冲器和一个8位数据输入锁存器。
C口:是一个8位数据输出锁存器/缓冲器和一个8位数据输入缓冲器(输入不锁存)。
通常A口、B口作为数据输入/输出端口。C口作为控制/状态信息端口,它在“方式控制字”的控制下可分为两个4位端口,每个端口有一个4位锁存器,分别与A口、B口配合使用,作为控制信号输出或状态信息输入端口。
(2)工作方式控制电路
工作方式控制电路有两个,一个是A组控制电路,另一个是B组控制电路。这两组控制电路具有一个控制命令寄存器,用来接受中央处理器发来的控制字,以决定两组端口的工作方式,也可根据控制字的要求对C口按位清“0”或者按位置“1”。
A组控制电路用来控制A口和C口的上半部分(PC7-PC4)。B组控制电路用来控制B口和C口的下半部分(PC3-PC0)。
(3)总线数据缓冲器
总线数据缓冲器是一个三态双向8位缓冲器,作为8255与系统总线之间的接口,用来传送数据、指令、控制命令以及外部状态信息。
(4)读/写控制逻辑电路
读/写控制逻辑电路接受CPU发来的控制信号RD、WR、RESET、地址信号A1-A0等,然后根据控制信号的要求,将端口数据读出,发往CPU,或者将CPU送来的数据写入端口。
工作方式控制字
D0 | 端口C(下半部) |
B组 |
D1 | 端口B |
|
D2 | 方式选择 |
|
D3 | 端口C(上半部) |
A组 |
D4 | 端口A |
|
D5D6 | 方式选择 00:方式0 |
|
D7 | 置方式标志 |
C口按位操作控制字:
D0 | 位:置位/复位 |
||||||||||||||||
D3D2D1 |
|
||||||||||||||||
D4 | 无关 | ||||||||||||||||
D5 | |||||||||||||||||
D6 | |||||||||||||||||
D7 | 位:置位/复位标志 |
工作方式0:
工作方式0是一种基本的输入/输出工作方式,在这种方式下,三个端口都可以由程序设置为输入或输出,没有固定的用于应答的联络信号.其基本的功能可概括如下:
1、可具有两个8位端口(A、B)和两个4位端口(C口的上半部分和下半部分)。
2、任何一个端口都可以设定为输入或者输出,各端口的输入、输出可构成16种组合。
3、数据输出时可以锁存,输出时不锁存。
按照方式0工作时,CPU可以通过简单的传送指令对人以一个端口进行读/写,这样各端口就可以作为查询式输入/输出接口。按照查询方式工作时, A口、B口可作为两个数据输入/输出端口,C口的某些位可作为这两个端口的控制/状态信号端。
工作方式1
工作方式1是一种选通式输入/输出工作方式。在这种工作方式下,选通信好于输入/输出数据一起传送,由选通信号对数据进行选通。其基本功能可概括如下:
1、三个端口分为两组,即A组和B组。
2、每一组包括一个8位数据端口和一个4位的控制/状态端口。
3、每一个8位数据端口均可设置为输入或者输出,输入端均可锁存。
4、4位端口作为8位数据端口的控制/状态信号端口。
工作方式2:
A口除了工作方式0、1之外,还有工作方式2。按照方式2工作时,A口称为双向数据总线端口,既可以发送数据,又可以接收数据。其主要功能可概括如下:
1、有一个8为双向数据输入/输出端口(A)和一个5位控制信号端口(C)。
2、输入、输出均可锁存。
3、5位控制信号端口(C)作为8位双向数据输入/输出端口A的控制/状态信号端口。
4、工作方式2只适合于A口。
按照工作方式2工作时,A口既可工作于查询方式,又可工作于中断方式.其控制联络信号如图所示:
8255A引脚功能及管脚定义图
8255共有40个引脚,采用双列直插式封装,各引脚功能如下:
D0--D7:三态双向数据线,与单片机数据总线连接,用来传送数据信息。
CS:片选信号线,低电平有效,表示芯片被选中。
RD:读出信号线,低电平有效,控制数据的读出。
WR:写入信号线,低电平有效,控制数据的写入。
Vcc:+5V电源。
PA0--PA7:A口输入/输出线。
PB0--PB7:B口输入/输出线。
PC0--PC7:C口输入/输出线。
RESET:复位信号线。
A1、A0:地址线,用来选择8255内部端口。
GND:地线。
8255 VHDL代码
上一篇:51单片机分频、机器周期、时钟周期、状态周期
下一篇:STC89C52定时器使用方法
推荐阅读最新更新时间:2024-03-16 14:27