微机接口 8255

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

传 输 说 明
CPU读端口C数据(或状态) CPU写入数据到端口A CPU写入数据到端口B CPU写入数据到端口C 如D7=1,则数据为控制字,写入控制寄存器; 如D7=0,则数据为对C端口的置位/复位命令 D7~D0进入高阻状态 非法的信号组合(不允许读控制寄存器) D7~D0进入高阻状态
14
图6-4 8255A芯片 引脚信号 输出联 络信 号:
23
2. 方式1----选通输入/输出方式
A端口和B端口可用方式1进行输入/输出传输; A、B端口工作于方式1时,要利用端口C提供选通信号和应答 信号,而这些信号与端口C中的引脚关系固定,无法改变。 方式1特点如下: (1)端口A、B均可为工作在方式1,作输入或输出口。 (2)若A 、 B有一个端口为方式1,则端口C中有3位被规定 为方式1的应答联络信号。此时,端口C中的其他引脚可作 输入或输出。 (3)若端口A、B都工作在方式1,则端口C中有6位作为应 答联络信号,剩下的2位仍可作为输入或输出。 (4)与CPU之间可以采用查询方式、中断方式通信。
D6
D5
D4
D3
Hale Waihona Puke D2D1D0 PC3~PC0:1—输入 0—输出 端口B:1—输入 0—输出 端口B方式选择 0—方式0 1—方式1
图6-5
8255A的方式选择控制字 17
8255A的方式选择控制字的几点说明: ① 8255A有3种基本工作方式:
─ ─ ─
方式0:基本的输入/输出方式 方式1:选通的输入/输出方式 方式2:双向传输方式
10


A组 控制
端口A
PA7~PA0
数据总线
数据总线 缓冲器
端口C (上半部分)
PC7~PC4
端口C (下半部分)
PC3~PC0
RD WR A0 A1 RESET CS
读/写 控制逻辑
B组 控制
端口B
PB7~PB0
图6-3 8255A的内部结构框图
11
(2) A组控制和B组控制

这两组控制电路接收CPU输出的控制字,以及读/ 写控制逻辑电路命令,决定两组端口的工作方式和 读/写操作。 A组控制电路控制端口A和端口C的高4位(PC7~ PC4)的工作方式和读/写操作。 B组控制电路控制端口B和端口C的高4位(PC3~ PC0)的工作方式和读/写操作。 双向三态的8位数据缓冲器,8255A通过它与系统数 据总线相连。用来传送输入/输出数据、CPU发给 8255A的控制字。
2


一个并行接口可以:
─ 只作为输出接口, ─ 只作为输入接口, ─ 既作为输入又作为输出的双向接口。
实现双向的接口有两种方法:
─ 利用同一个接口中的两个通路,一个作为输入通路,一
个作为输出通路; ─ 用一个双向通路,既作为输入又作为输出。
输出接口
输入接口
双向接口
双向接口
3
74LS373
I0 D Q CK O0 O0
18
(2) 端口C置1/置0控制字
端口C的数据位常常作为控制位使用,所 以,端口C中的各位可以用置1/置0控制字 单独设置。 当8255A接收到写入控制口的控制字时,会 对最高位即标志位进行测试。

如为1,则将此字节作为方式选择控制字写入控 制寄存器; 如为0,此字节就作为对端口C的置1/置0控制 字来处理。
6
输出过程:
1) CPU输出数据前,先查询(或从中断得到)接口状态寄存器
的“输出准备好”状态,判断是否可以向接口输出数据;
2) 外设准备好后,CPU输出数据到接口,接口接收到数据后会
自动清除“输出准备好”状态位,并将数据送往外设,同时, 向外设发送“数据输出准备好信号”来启动外设接收数据。
3) 4)
21
6.2.3 8255工作方式 1. 方式0----基本输入/输出方式 各个端口可以通过方式控制字规定为输入口或输 出口,端口C的两个4位端口也可由方式选择字 规定为输入口或输出口。 任何一个端口可作为输入口,也可作为输出口, 各端口之间没有规定必然的关系。 各端口无固定应答联络信号,CPU只要对8255A 执行I/O指令即可实现数据的输入/输出。
1.
8255的主要功能
有2个独立的8位并行数据通道(A、B口),2个4位 的并行数据通道(C口高4位、低4位); 占用4个IO端口地址(A、B、C、控制端口); A、B通道具有基本输入/输出、选通输入/输出以及 双向(仅A口具有)3种传输方式; C口除了具有简单输入/输出功能外,还具有另外3个 功能:
22
方式0的使用场合有两种(与CPU之间):
─ ─
同步传送(无条件传送) 查询式传送
同步传送时,发送方和接收方双方互相知道对方的动 作,不需要应答信号,8255A中3个数据端口可以实现 三路数据传输。 查询式传输时,需要有应答信号。但方式0没有规定固 定的应答信号,一般将端口A和端口B作为数据端口, 把端口C的4个数位(高4位或者低4位均可)规定为输 出口,用来输出一些控制信号,而把端口C的另外4个 数位规定为输入口,用来读入外设的状态,利用端口C 来配合端口A和端口B的输入/输出操作。
STBA IBFA
INTE B
PC2 PC1
STBB IBFB
PC3 RD PC6 PC7 PC7 PC6 PC5
2
INTRA I/O PC3 RD
PC0
INTRB
PC4
PC2
PC1 PC0
状态字(C 口)
I/O I/O IBF INTE INTR
INTE IBF INTR
图6-7 方式1时输入端口对应的控制信号
74LS244
I0 A0
74LS245
B0
… …
STB OE
… …
I7 D Q CK
… …
O7
… …
… …
… …
O7
A7 I7
≥ ≥
B7 OE
OE
T
输出接口
输入接口
双向接口
图6-1
常规门电路并行接口
4
2. 并行接口连接外设原理
数据总线
CPU
读出信号 写入信号 复位 准备好 中断请求 地址 译码
控制寄存器 输入缓冲寄存器 输出缓冲寄存器 状态寄存器 片选 A0 A1
第6章 并行通信和并行接口
6.1 并行通信基本概念 6.2 8255A可编程并行接口 6.3 8255应用举例
1
6.1 并行通信基本概念
1. 概述

并行通信就是把一个字符(或字)的各个数位用 多条数据线同时进行传输。(1线1位数据) 在同样的传输率下,并行通信的信息比串行通信 (1线多位)传输速度快、信息率高。 由于并行通信用的电缆多,传输速度高,信号线 之间干扰,所以,并行通信适用于数据传输率要 求较高、而传输距离较短的场合。
②端口A:可以工作在3种工作方式中的任何一种, 端口B:只能工作在方式0或方式1, 端口C:常常配合端口A和端口B工作,为这两个端口 的输入/输出传输提供控制信号和状态信号;端口A和 端口B工作于方式0时端口C可工作于方式0。 ③归为同一组的两个端口可以分别工作在输入方式和输 出方式,并不要求为同一种工作方式(端口C的上半 部和下半部数据传输方向可以不同)。
数据输入就绪 数据输入回答
数据输入
输 入 设 备
数据输出
数据输出就绪 数据输出回答
输 出 设 备
图6-2 并行接口连接外设的示意 5
输入过程:
1) 2) 3)
外设将数据送给接口,并使状态线“数据输入就绪”有效; 接口在把数据接收到输入缓冲寄存器的同时,使“数据输 入回答”有效,作为对外设的响应;
外设接到这个回答信号后,撤除数据和“数据输入准备好” 信号; 4) 数据到达接口中后,接口会在状态寄存器中设置“输入准 备好”状态位(以便CPU对其进行查询),或向CPU发一 个中断请求; 5) CPU从并行接口中读取数据后,接口会自动清除状态寄存 器中的“输入准备好”状态位,并使数据总线处于高阻状 态,又可以开始下一个输入过程。
8255A
PA4 PA5 PA6 PA7 WR RESET D0 D1 D2 D3 D4 D5 D6 D7 VCC PB7 PB6 PB5 PB4 PB3
15
6.2.2 8255编程命令 8255A有3个端口(PA、PB和PC)、3种工 作方式,CPU可以通过向8255写入控制字来确 定3个端口的工作方式。 控制字分为两类。
24
(1)方式1输入情况下有关信号的规定及时序
A组工作于方式1输入的控制字 D7 D6 D5 D4 D3 D2 D1 D0 1 0 1 1 1/0 方式1 PC6、 PC7: 端口A为输入 PA7~PA0 INTE PC4 A PC5 1—输入 0—输出 B组工作于方式1输入的控制字 D7 D6 D5 D4 D3 D2 D1 D0 1 1 1 端口B为输入 方式1
12


(3)数据总线缓冲器

(3)读/写控制逻辑电路

接收及来自系统总线的信号A1、A0(在8086系统 中为A2、A1)和控制总线的信号 RESET、RD 、WR, 将这些信号进行组合,以完成对数据、状态信息和 控制信息的传输。 8255内部有四个端口(PA、PB、PC和控制口), 通过8255中A1和A0来区分 。
输出接口输入接口双向接口双向接口图61常规门电路并行接口74ls244输入接口74ls373输出接口oe双向接口74ls245并行接口连接外设原理图62并行接口连接外设的示意控制寄存器输入缓冲寄存器输出缓冲寄存器状态寄存器数据输出数据输入数据输入就绪数据输入回答数据输出就绪数据输出回答数据总线地址译码读出信号写入信号复位准备好中断请求接口在把数据接收到输入缓冲寄存器的同时使数据输入回答有效作为对外设的响应
外设受到启动后,便收取数据,并往接口发一个“数据输出 回答”信号。 接口收到此信号后,会将状态寄存器中的“输出准备好”状态 位重新置“1”,以便CPU输出下一个数据。
7
6.2 8255A可编程并行接口
6.2.1 8255功能及内部结构 6.2.2 8255编程命令 6.2.3 8255工作方式
8
6.2.1 8255功能及内部结构
19

0
D6
D5
D4
D3
D2
D1
D0
×
× 无关
×
1=置1 0=置0 位选择: PC0 PC1 PC2 PC3 PC4 PC5 PC6 PC7 0 1 0 1 0 1 0 1 0 0 0 0 1 0 1 0 0 1 0 1 1 1 1 1
C端口置1/置0标识符 图6-6 端口C置1/置0控制字
20
对C端口置1/置0控制字的几点说明: ① C端口置1/置0控制字尽管是对端口C进行操作,但此 控制字必须写入控制口,而不是写入C端口。 ② 置1/置0控制字的D0位决定了是置1操作还是置0操作。 如为1,则对端口C中某一位置1,如为0,则置0。 ③ 置1/置0控制字的D3、D2、D1位决定了对C端口中的哪 一位进行操作。 ④ 置1/置0控制字的D6、D5、D4位可为1,也可为0,它们 不影响置1/置0操作。但D7位必须为0,它是对C端口置 1/置0控制字的标识符。

13
表6-1
8255A的控制信号和传输动作的对应关系
CS
0 0 0 0 0 0 0 1 0 0
A1 A0 RD 0 0 0 1 1 0 0 0 0 1 1 0 1 1 x x 1 1 x x 0 0 0 1 1 1 1 x 0 1
WR
1 1 1 0 0 0 0 x 1 1 CPU读端口A数据 CPU读端口B数据
─ ─ ─
其部分信号线可作为CPU与外设之间的应答联络信号 具有按位置位/复位功能 在CPU读取8255A状态时,C口又可作为状态口 9
2. 8255内部结构:4 部分组成
(1)数据端口A、B、C(称为PA、PB、PC):

端口A:8位,具有1个输入锁存器和1个输出锁存器/缓 冲器。作输入或输出时,数据均受到锁存。所以可用作 双向数据传输。 端口B:只有1个数据输入缓冲器和1个输出锁存器/缓 冲器。只能工作在输入或输出方式,不具有双向功能。 端口C:每个4位的端口对应1个输入缓冲器和1个输出 锁存器/缓冲器。C口只有在端口A、B都工作在简单I/O 方式时,才具有2个4位的I/O功能。在更多情况下是作 为A、B口的应答联络信号,分别为端口A和端口B提供 控制信号和状态信号。
( OBF ( ACK
A A
) )
输入联 络信 号:
( IBFA )
( STB
A
)
( INTRB ) ( OBF B ) ( IBFB ) ( ACK B ) ( STB B ) ( INTRA )
PA3 PA2 PA1 PA0 RD CS GND A1 A0 PC7 PC6 PC5 PC4 PC0 PC1 PC2 PC3 PB0 PB1 PB2
─ 方式选择控制字:确定8255芯片各端口的工作方
式;将3个数据端口分为两组来设定工作方式,即 端口A和端口C的高4位作为一组,端口B和端口C 的低4位作为一组。
─ C端口按位置1/置0控制字:用于将C端口中的任
何1位进行置1或置0。
16
(1)8255A的工作方式选择控制字
1 方式选择控 制字的标识位 端口A方式选择 00—方式0 01—方式1 10—方式2 端口A: 1—输入 0—输出 PC7~PC4:1—输入 0—输出
相关文档
最新文档