8255A 是Intel公司生产的可编程的并行I/O接口芯片,它具有3个8位的并行I/O 图1 8255A的引脚 图2 8255A的内部结构 自动控制网www.eadianqi.com版权所有 口,三种工作方式,可通过编程进行设置,因而使用灵活方便,通用性强,可作为单片机与多种设备连接时的中间接口电路。8255A的引脚及内部的结构如图1和图2所示。 本文来自www.eadianqi.com 1、引脚说明 本文来自www.eadianqi.com 8255A共有40个引脚,采用双列直插式封装,各引脚功能如下: 本文来自www.eadianqi.com
D7~D0:三态双向数据线,与单片机数据总线连接,用来传送数据信息。 本文来自www.eadianqi.com CS:片选信号线,低电平有效,表示芯片被选中。 本文来自www.eadianqi.com RD:读出信号线,低电平有效,控制数据的读出。 自动控制网www.eadianqi.com版权所有 WR:写人信号线,低电平有效,控制数据的写人。 自动控制网www.eadianqi.com版权所有 Vcc、GND:+5V 电源、接地。 自动控制网www.eadianqi.com版权所有 PA7~PA0:A口输入/输出线。 自动控制网www.eadianqi.com版权所有 PB7~PB0:B口输入/输出线。 本文来自www.eadianqi.com PC7~PC0:B口输入/输出线。 自动控制网www.eadianqi.com版权所有
RESET:复位信号线。 本文来自www.eadianqi.com
A1、A0:地址线,用来选择8255A内部端口。 本文来自www.eadianqi.com 2、内部结构 本文来自www.eadianqi.com 8255A内部结构见图2,其中包括三个并行数据输入/输出端口,2个工作方式控制电路,1个读/写控制逻辑电路和8 位数据总线缓冲器。各部分功能如下: 本文来自www.eadianqi.com 1.端口A、 B 、C 本文来自www.eadianqi.com 8255A有三个8位并行口,PA、PB 和 PC 。都可以选择作为输人输出工作模式,但在功能和结构上有些差异。 自动控制网www.eadianqi.com版权所有 ①PA口:一个8位数据输出锁存器和缓冲器;一个8位数据输人锁存器。 自动控制网www.eadianqi.com版权所有 ②PB口:一个8位数据输出锁存器和缓冲器;一个8位数据输人缓冲器(输人不锁存)。 自动控制网www.eadianqi.com版权所有
③PC口:一个8位数据输出锁存器;一个8位数据输人缓冲器(输人不锁存)。 自动控制网www.eadianqi.com版权所有 2.A 组和 B 组控制电路 自动控制网www.eadianqi.com版权所有 这是两组根据 CPU 写人的“控制字”来控制 8255A 工作方式的控制电路。A组控制PA和PC口的上半部(PC7一PC4) ; B组控制PB口和PC口的下半部(PC3一PC0 ) ,并可根据“控制字”对端口的每一位实现按位“置位”或“复位”。 自动控制网www.eadianqi.com版权所有 3.数据总线缓冲器 本文来自www.eadianqi.com 数据总线缓冲器是一个三态双向8位缓冲器,作为8255A与系统总线之间的接口,用来传送数据、指令、控制命令以及外部状态信息。 本文来自www.eadianqi.com
4.读/写控制逻辑电路 自动控制网www.eadianqi.com版权所有 读/写控制逻辑电路接收 CPU发来的控制信号RD、WR、RESET、地址信号Al、A0 自动控制网www.eadianqi.com版权所有 然后根据控制信号的要求,将端口数据读出,送往CPU,或者将CPU送来的数据写入 自动控制网www.eadianqi.com版权所有 端口。各端口的工作状态与控制信号的关系如表1所示。 自动控制网www.eadianqi.com版权所有
表1 8255A端口工作状态选择表 自动控制网www.eadianqi.com版权所有
3、工作方式选择控制字及C口置位/复位控制字 自动控制网www.eadianqi.com版权所有 1.工作方式选择控制字 本文来自www.eadianqi.com 8255 有三种基本工作方式:方式0,基本输入输出;方式1,选通输人输出;方式2,双向传送。三种工作方式由写人控制字寄存器的方式控制字来决定示。三个端口中C口被分为两个部分,上半部分随A口称为A组,下半部分随B口称为B组。其中A口可工作于方式 0、l和2,而B口只能工作在方式0和1。方式控制字的格式如下: 自动控制网www.eadianqi.com版权所有
D7:控制选择位。D7=1,工作方式控制字。 本文来自www.eadianqi.com
D6、D5:A组方式选择位。D6D5=00,方式0。 D6D5=01,方式1。 D6D5=1X,方式2。 自动控制网www.eadianqi.com版权所有
D4:A口控制位。D4=0,输出。 D4=1,输入。 自动控制网www.eadianqi.com版权所有 D3:C口上口(PC4-PC7)控制位。D3=0,输出。 D3=1,输入。 自动控制网www.eadianqi.com版权所有 D2: B组方式选择位。D2=0,方式0。 D2=1,方式1。 自动控制网www.eadianqi.com版权所有 D1: B口控制位。D1=0,输出。 D1=1,输入。 自动控制网www.eadianqi.com版权所有
D0:C口下口(PC0-PC3)控制位。D0=0,输出。 D0=1,输入。 自动控制网www.eadianqi.com版权所有 例如:写人工作方式控制字95H ,可将8255A编程为:A口方式0输入,B口方式1输出,C口的上半部分(PC7一PC4)输出,C口的下半部分(PC3一PC0)输人。 本文来自www.eadianqi.com 2.C 口按位置位/复位控制字 本文来自www.eadianqi.com C口8位中的任一位,可用一个写人控制口的置位/复位控制字来对 C 口按位置“1”或清“0”。这个功能主要用于位控。C口按位置位/复位控制字的格式如下: 自动控制网www.eadianqi.com版权所有
D7:控制选择位。D7=0,C口置位/复位控制字。 自动控制网www.eadianqi.com版权所有 D6、D5、D4:无关,置0。 自动控制网www.eadianqi.com版权所有 D3、D2、D1:为选择位。D3D2D1=000~111,分别选择PC0~ PC7。 本文来自www.eadianqi.com D0:位置位\复位控制位。D0=1,置位。D0=0,复位。 自动控制网www.eadianqi.com版权所有 例如,07H写人控制口,置“1”PC3 ; 08H写人控制口,PC4清“0”。 本文来自www.eadianqi.com
|