并行接口电路:第八章 可编程接口芯片及应用
• 并行接口电路中每个信息位有自己的传输线,一个数据字节各位可并行传送,速度快,控制简单。由于电气特性的限制,传输距离不能太长。
• 8255A 是通用的可编程并行接口芯片,功能强,使用灵活。接口芯片引脚概述:DB0 ~ DB7:
系统数据总线,由数据线决定有 8 位、 16 位、 32 位。 并
行外部备设
并行接口芯片
DB0 ~ DB7
D0 ~ Di
WRRDCS
M/IO
INT
RDY
STB
A0 ~ Ai
A0 ~ Ai :系统地址总线,由口地址数决定
D0 ~ Di :外设数据信号线,有一位到多位。
RDY : 数据准备好信号
STB: 接收数据完成信号
CS : 数据准备好信号
WR 、 RD :读写控制信号
可编程接口芯片 8255A :第八章 可编程接口芯片及应用
•双列直插, 40 引线集成电路•三个独立的 8 位 I/O 端口 , 口 A 、口 B 、口 C 。•口 A 有输入、输出锁存器及输出缓冲器。•口 B 与口 C 有输入、输出缓冲器及输出锁存器。•口 C 的 8 条线可按位置 1/ 置 0 的操作。•口 A 、口 B 、口 C 及控制字口共占 4 个口地址。 Vcc
4039383736353433323130292827262524232221
1234567891011121314151617181920
CS
PA3
D7
D6
D5
D4
D3
D2
D1
D0
RESETGND 8255
PA0
PA1
PA2
PA4
PA7
PA6
PA5
WR
PB6
PB3
PB4
PB5
PB7
PB2
PB1
PB0
PC0
PC3
PC2
PC1
PC6
PC4
PC5
PC7
A0
A1
RD
可编程接口芯片 8255A :第八章 可编程接口芯片及应用
•分 A 组、 B 组, C 口为其控制信号线。A 口
C 口上 4 位线 PC4 ~PC7
A 组
B 口
C 口上 4 位线 PC0 ~ PC3
B 组
Vcc
4039383736353433323130292827262524232221
1234567891011121314151617181920
CS
PA3
D7
D6
D5
D4
D3
D2
D1
D0
RESETGND 8255
PA0
PA1
PA2
PA4
PA7
PA6
PA5
WR
PB6
PB3
PB4
PB5
PB7
PB2
PB1
PB0
PC0
PC3
PC2
PC1
PC6
PC4
PC5
PC7
A0
A1
RD
8255A 的内部结构:第八章 可编程接口芯片及应用
•三个 8 位数据口:•A 口: PA0 ~ PA7
•B 口: PB0 ~ PB7
•C 口: PC0 ~ PC7
•片内地址: A0 , A1
•片选:•数据总线: D0 ~ D7
•读 / 写信号:•复位信号 RESET
A 组A 口
(8 位 )PA0 ~ PA7
A 组C 口高
位(4 位 )
PC4 ~ PC7
A 组C 口低
位(4 位 )
PC0 ~ PC3
B 组B 口
(8 位 )PB0 ~ PB7
数据总线缓冲
A 组控制
B 组控制
读 /写控制逻辑
CS
RESET
RD
WR
A0
A1RD WR
CS
8255A 的口地址及操作:第八章 可编程接口芯片及应用
RDWRCSA0 A1操 作
0 0 0 1 0 端口A→数据总线0 1 0 1 0 端口 B→ 数据总线1 0 0 1 0 端口 C→ 数据总线0 0 0 0 1 数据总线→端口A0 1 0 0 1 数据总线→端口 B1 0 0 0 1 数据总线→端口 C1 1 0 0 1 数据→控制寄存器x x 1 x x 数据总线三态
8255A 工作方式 :第八章 可编程接口芯片及应用
三种式作方式:方式0,方式1,方式2
方式 0 :
无条件输入或输出方式,直接传送方式,无任何联络线。
三个端口为 8 位独位的输入输出接口,输出锁存,输入缓冲。
8255A 工作方式 :第八章 可编程接口芯片及应用
方式 1 A 口输入操作:PORT A
8 位输入
PC4IBF
PC3
INTRA
PC6,7
I/O
PC5
STB INTESTB :输入选通信号,低电平有效, A 口数据锁存。 IBF :输出高电平有效,通知外设数据未取走。 INTRA :中断请求,输出高电平向 CPU 申请中断。 INTE :中断允许,输出高电平向 CPU 申请中断。
PC4
置位 =1 中断允许
复位 =0 中断禁止PC6 PC7 按位操作,输入或输出。
方式 1 :条件输出或输入,带联络线输入或输出。分为 A 组或 B 组。
8255A 工作方式 :第八章 可编程接口芯片及应用
方式 1 A 口输入操作:PORT A
8 位输入
PC4IBF
PC3
INTRA
PC6,7
I/O
PC5
STB INTE
STB
IBF
INTRA
RD
外设数据
1
下降沿锁存数据到 A 口,IBF 输出通知外设数据未取走
STB 1
2
STB 2 上升沿锁存 INTR 中断申请, INTE ( PC4 置位)
3
3 下降沿 CPU 读 A 口数据, INTR 中断复位。RD
4
4 上升沿 CPU 读结束, IBF 复位。可进行新一轮数据输入。
RD
8255A 工作方式 : 第八章 可编程接口芯片及应用
方式 1 B 口输入操作: PORT B8 位输入
PC2IBF
PC0
INTRB
PC6,7
I/O
PC1
STB INTESTB :输入选通信号,低电平有效, B 口数据锁存。 IBF :输出高电平有效,通知外设数据未取走。 INTRB :中断请求,输出高电平向 CPU 申请中断。 INTE :中断允许,输出高电平向 CPU 申请中断。
PC2
置位 =1 中断允许
复位 =0 中断禁止
STB
IBF
INTRA
RD
外设数据
1
下降沿锁存数据到 B 口,IBF 输出通知外设数据未取走
STB 1
2
STB 2 上升沿锁存 INTR 中断申请,INTE ( PC2 置位)
3
3 下降沿 CPU 读 B 口数据,INTR 中断复位。
RD4
4 上升沿 CPU 读结束,IBF 复位。可进行新一轮数据输入。
RD
8255A 工作方式 : 第八章 可编程接口芯片及应用
方式 1 A 口输出操作:
INTRA :中断请求,输出高电平向 CPU 申请中断。 INTE :中断允许,输出高电平向 CPU 申请中断。
PC6
置位 =1 中断允许
复位 =0 中断禁止
PORT A8 位输出
PC7
PC3
INTRA
PC4,5
I/O
PC6
OBF INTE
ACK :输出缓冲器满信号,输出低电平有效,OBF
:数据取走响应信号,输入低电平有效。ACK
OBF
INTRA
数据输出
WR
ACK
数据送入 A 口, OBF 输出通知外设取数, INTR 中断准备。
1 WR1
ACK 2 下降沿复位 OBF ,数据取走。
2 3ACK 3 上升沿 INTR 中断申请,进行
下轮数据输出。
8255A 工作方式 : 第八章 可编程接口芯片及应用
方式 1 B 口输出操作:
INTRB :中断请求,输出高电平向 CPU 申请中断。 INTE :中断允许,输出高电平向 CPU 申请中断。
PC2
置位 =1 中断允许
复位 =0 中断禁止
PORT B8 位输出
PC1
PC0
INTRA
PC4,5
I/O
PC2
OBF INTE
ACK :输出缓冲器满信号,输出低电平有效,OBF
:数据取走响应信号,输入低电平有效。ACK
OBF
INTRB
数据输出
WR
ACK
数据送入 B 口, OBF 输出通知外设取数, INTR 中断准备。
1 WR1
ACK 2 下降沿复位 OBF ,数据取走。
2 3ACK 3 上升沿 INTR 中断申请,进行
下轮数据输出。
8255A 工作方式 : 第八章 可编程接口芯片及应用 方式 2 及操作:
双向条件输出输入,只有 A 组能工作在方式 2 ,此时 B 口可工作在方式0, 未用的 C 口可按位操作。STB :输入选通信号,低电平有效, A 口数据锁存。 IBF :输出高电平有效,通知外设数据未取走。
INTRA :中断请求,输出高电平向 CPU 申请中断。
PC0 ~ PC2 按位操作,输入或输出。
INTE :中断允许,输出高电平向 CPU 申请中断。
输入中断允许 PC4
置位 =1 中断允许
复位 =0 中断禁止
输出中断允许 PC6
置位 =1 中断允许
复位 =0 中断禁止
:输出缓冲器满信号,输出低电平有效,OBF
:数据取走响应信号,输入低电平有效。ACK
PORT A8 位数据
PC4IBF
PC3INTRA
PC0,2
I/O
PC5
STB INTE2
PC7PC6
OBF
ACK INTE1
+
8255A 的初始化编程 :第八章 可编程接口芯片及应用
将方式字写入控制寄存器规定其工作方式。8255A 的方式字:
C 口低位输入输出选择1= 输入 0= 输出
B 口输入输出选择1= 输入 0= 输出B 口工作方式选择
1= 方式 1 0= 方式 0
C 口高位输入输出选择1= 输入 0= 输出
A 口输入输出选择1= 输入 0= 输出A 口工作方式选择
00= 方式 00 1= 方式 11X= 方式 2
D7 D6 D5 D4 D3 D2 D1 D0
B 组控制
1
A 组控制
工作方式字标志
8255A 的初始化编程 :第八章 可编程接口芯片及应用
将复位 / 置位字写入控制寄存器规定 C 口的位状态。8255A 的 C 口位操作字:
D7 X X X D3 D2 D1 D0
复位 / 置位选择1= 置位 0= 复位
0
0 0 0=PC0
0 0 1=PC1
0 10=PC2
0 1 1=PC3
1 0 0=PC4
1 0 1=PC5
1 1 0=PC6
1 1 1=PC7
复位 / 置位字标志
不用
8255A 的应用: 第八章 可编程接口芯片及应用
如图所示 ,8255A 口地址 40H , A 口工作在方式 0 输出 ,B 口工作在方式 1 输入 ,C 口的 PC5 输出为 1 。
方式字: 10000110B复位置位字: 00001011B初始化程序:
MOV AL , 10000110BOUT 43H , ALMOV AL , 00001011BOUT 43H , AL
口地址为
A 口: 40H
B 口: 41H
C 口: 42H
控制寄存器口: 43H
课后作业:1. P374 8.5
8.17