当前位置:文档之家› 第八章8255A并行接口

第八章8255A并行接口


片。

在80X86系列中使用8255A芯片
在Z80系列中使用Z80-PIO芯片 在6800系列中使用MC6820PIA芯片
一般情况下不交叉使用,因为: 只有本系列的芯片才能更好地保证时序上的配合, 和各种功能的发挥,使CPU可靠与外设交换信息。
8255A——8255A
8255A的内部结构
A组控制
A组 A口 (8位)
CS*:片选控制输入,接译码器;
A0 PC7 10
PC 6
RD*:读命令输入,接CPU的RD*或IOR*; PC5
PC 4
WR*:写命令输入,接CPU的WR*或IOW*; PC0
PC1 15
A0,A1:片内端口地址输入,可选4个片内
PC 2 PC 3
端口。接AB的任2位。
PB 0
PB 1
PB 2
40
D0~D7
RD WR AA10 CS RESET
数据总线 缓冲器
读/写 控制逻辑
A组 C口高位 (4位)
B组 C口低位 (4位)
B组控制
B组 B口 (8位)
PA0~PA7 PC4~PC7 PC0~PC3 PB0~PB7
8255A——8255A
1. 数据总线缓冲器:三态8位双向缓冲器,与系统数据总线连接 的缓冲部件;传送数据、控制字、状态字的通道。
中断请求信号 请求CPU再次输出数据
端口B方式1作输出:
PB7~PB0 INTEB PC2
PC1
PC0
外设响应信号 表示外设已经接收到数据
ACKB
OBFB INTRB
输出缓冲器满信号 表示CPU已经输出了数据
中断允许触发器
中断请求信号 请求CPU再次输出数据
方式1输出联络信号
OBF*——输出缓冲器满信号,低有效
8255A输出给外设的一个控制信号,当其有效时, 表示CPU已把数据输出给指定的端口,外设可以取走
ACK*——响应信号,低有效
外设的响应信号,指示8255A的端口数据已由外设 接受
INTR——中断请求信号,高有效
当 输 出 设 备 已 接 受 数 据 后 , 8255A 输 出 此 信 号 向 CPU提出中断请求,要求CPU继续提供数据
8255A的读/写操作控制
A1 A0 RD* WR* 000 1 010 1 100 1
001 0 011 0 111 0 111 0
CS* 输入操作(CPU读)
0 数据总线← 端口A 0 数据总线← 端口B 0 数据总线← 端口C
输出操作(CPU写) 0 数据总线→端口A 0 数据总线→端口B 0 数据总线→端口C 0 数据总线→控制端口
8255A的工作方式
• 方式0——基本输入/输出方式(A、B、C口) • 方式1——选通工作方式(A、B口) • 方式2——双向选通传送方式(仅A口)
• 某端口工作于哪一种方式,可通过软件编程来指定。即向 8255写入方式控制字来决定其工作方式。
• 端口A输入输出均能锁存
• B端口输出时能锁存,输入时不能锁存
➢ 并行传送信息,不要求固定的格式,这与串行传送的数据格 式的要求不同。
8255A——8255A
概述
Intel8255A是一种通用的可编程序并行I/O接口芯片, 又称“可编程外设接口芯片”,是为Intel8080/8085系列微处 理设计的,也可用于其它系列的微机系统。可由程序来改变 其功能,通用性强、使用灵活。通过8255A,CPU可直接同外 设相连接,是应用最广的并行I/O接口芯片。
8255A方式1作输出时的各联络信号对应关系
联络信号 OBF* ACK INTR INTE
端口A
对应PC7 对应PC6 对应PC3 PC6置位
端口B
对应PC1 对应PC2 对应PC0 PC2置位
8255A工作在方式1下的输出时序
A端口、B端口方式 1 比较
• A端口输入用C端口位PC3 、PC4 、 PC5 A端口输出用C端口位PC3 、PC6 、 PC7 B端口输入用C端口位PC0 、PC1 、 PC2 B端口输出用C端口位PC0 、PC1 、 PC2
• C端口没有输入锁存器,输出可以锁存
• 三个端口输出都可锁存/缓冲
8255A的工作方式——方式0(基本输入/输出方式)
• 特点: 8255A相当于三个独立的8位数据口。 各端口既可设置为输入口,也可设置为输出口,但不能 同时实现输入及输出。 C端口即可以是一个8位的简单接口,也可以分为两个独 立的4位端口。 设置为输出口时有锁存能力,设置为输入口时无锁存能 力。
含3个独立的8位并行输入/输出端口,各端口均具有数据 的控制和锁存能力。可通过编程设置各端口的工作方式和数 据传送方向(入/出/双向)。
并行接口连接外设示意图
数据总线
读出信号
写入信号
复位
CPU
准备好
中断请求
控制寄存器 输入缓冲寄存器 输出缓冲寄存器
状态寄存器
地址 地址 译码
片选
A0 A1
数据输入准备好 输
4. 读/写控制逻辑:用来管理数据、控制字和状态字的传送,接收系统 总线发来的有关信号,并向A、B两组控制部件发送命令。
DIP封装,共40个引脚。
PA3 1 PA 2
1. 连接系统总线的主要引脚
PA 1 PA 0
D0~D7:数据线,双向,连CPU数据总线;
RD CS
5
GND
RESET:复位输入,接系统总线的RESET; A1
• 适用于: 无条件输入输出方式。 查询输入输出方式:把A、B口作为8位数据的输入或输出 口,C口的高/低4位分别定义为A、B口的控制位和状态位。
8255A的工作方式——方式0(基本输入/输出方式) • IN AL,PORT
DB
8
AB n 译码器
输入缓冲器 数据
外设
M / IO RD
①外设将数据送到8255输入缓冲器中; ②CPU给出有效的8255地址; ③CPU发读命令,将8255A输入缓冲器中数据读入CPU的
PA 4
PA 5 PA 6
PA 7
WR
35 RESET
D0
D1
D2 D3 30 D4
D5
D6 D7
VCC 25 PB7
PB 6
PB 5 PB 4 21 PB3
1.面向CPU一侧的引脚信号
⑴D7~D0,8位,双向,三态数据线 ⑵RESET,复位信号 ⑶CS*,片选信号 ⑷RD*,读信号 ⑸WR*,写信号 ⑹A1 、A0,端口选择信号
MOV DX,203H
;8255A命令口
MOV AL,00001001B OUT DX,AL
;置PC4=1,允许中断请求
MOV AL,00001000B OUT DX,AL
;置PC4=0,禁止中断请求
端口B方式1作输入:
PB7~PB0
PC2 INTEB
PC2
PC1
PC0
数据选通信号 表示外设已经准备好数据
INTR——中断请求信号,高电平有效
8255A输出的信号,可用于向CPU提出中断请求,要求CPU读 取外设数据
INTE ——中断允许信号,高电平有效
用于控制中断允许或中断屏蔽
8255A方式1作输入时的各联络信号对应关系
联络信号 STB* IBF INTR INTE
端口A
对应PC4 对应PC5 对应PC3 PC4置位
2. 3个8位数据端口(PA、PB、PC):通常PA口与PB口用作输入输出 的数据端口,PC口用作数据传输或提供联络线的端口。在方 式字的控制下,PC口可以分成两个4位的端口,其中PC7~PC4 同端口A配合使用, PC3~PC0同端口B配合使用。
3. A组、B组控制电路:这两组控制电路根据CPU发出的方式选择控制字 来控制8255A的工作方式,每个控制组都接收来自读写控制逻辑的 “命令”,接收来自内部数据总线的“控制字”,并向与其相连的端 口发出适当的控制信号。A组控制电路控制PA口和PC口高4位,B组控 制电路控制PB口和PC口低4位。
D7~D0 PA7~PA0
INTEA PC4
PC4 PC5
与门
RD
PC3
STBA IBFA
INTRA
数据选通信号 表示外设已经准备好数据
输入缓冲器满信号 表示A口已经接收数据
中断允许触发器
中断请求信号 请求CPU接收数据
若允许PA口输入时,产生中断请求,则必须设置INTEA=1,
即置PC4=1;若禁止它产生中断请求,则置INTEA=0, 即置PC4=0,其程序段为:
AL寄存器中。
8255A的工作方式——方式0(基本输入/输出方式)
• 方式0输入时序:
8255A的工作方式——方式0(基本输出方式)
• OUT PORT,AL
DB
8
AB n 译码器
输出锁存器 数据
外设
M / IO WR
① CPU给出有效的8255地址; ② CPU发写命令,将CPU的AL寄存器中数据写入
STBB IBFB
INTRB
输入缓冲器满信号 表示B口已经接收数据
中断允许触发器
中断请求信号 请求CPU接收数据
方式1输入联络信号定义
STB*——选通信号,低电平有效
由外设提供的输入信号,当其有效时,将输入设备送来的数据 锁存至8255A的输入锁存器
IBF——输入缓冲器满信号,高电平有效
8255A输出的联络信号。当其有效时,表示数据已锁存在输入 锁存器
8255A输出锁存器中。
8255A的工作方式——方式0(基本输入/输出方式)
• 方式0输出时序:
WR
D7~D0 CS A1、 A2
tAW
相关主题