第09章 可编程并行接口8255A
第九章 可编程并行接口8255A
D4 : PA口的输入/输出选择
0 输出 1 输入
D3 :
PC.7~ PC.4的 输入/输出选择
0 输出
1 输入
0 PB口的工作方式0
D2 :PB口的工作方式选择
1 PC口的工作方式1
D1 : PB口的输入/输出选择
0 输出
1 输入
D0 :
PC.3~ PC.0的 输入/输出选择
D6 D5 D4 D3
方式2
8. 8255应用举例 例1. 某系统要求使用8255的PA口工作于方式1作 输入,PB口工作于方式0作输出,PC口高4位做联络 信号线后剩余的I/O线做输入、低4位输出。设8255端 口地址为60 H~63H 控制字为 10111000B=0B8H 初始化程序为: MOV AL, 0B8H OUT 63H, AL
PA口 PB口 PC口 控制口
40H 41H 42H 43H
某端口地址为 40H,哪个端口的? 其余端口地址?
PA口 PB口 PC口 控制口
40H 42H 44H 46H
2. 8255A的工作方式 方式 0:基本输入/输出方式(无条件传送方式), PA 、PB、PC口均可工作在此方式。
方式 1:选通输入/输出方式(有条件传送方式或 中断), PA 、PB可工作在此方式,此时 PC口为PA 、PB口提供控制和联络信号。
输出(以PB口为例) OBF(PA口PC.7,PB口 PC.1)当CPU执行OUT 指令,将数据送到PB 口的数据缓冲器时 OBF=0(约0.3us)的负 脉冲,利用下降沿将 数据锁在PB口输出锁 存器,并启动外设。
ACK(PA口PC.6,PB口 PC.2)当外设接收到数 据后向8255回送一个 应答信号,同时使 OBF变高,OBF的上 升沿使ACK变高。
可编程并行接口芯片8255A
大规模控制系统的需求。
8255A与可编程逻辑器件的结合,可以实现高速、实时的数据
03
采集和控制。
在数据采集与控制系统中的应用
8255A在数据采集与控制系统中,可以作为数据传输的桥梁,实现快速、稳定的数 据传输。
通过8255A,可以实现多路数据的并行采集和处理,提高了数据处理的效率。
8255A在数据采集与控制系统中,可以作为主控制器,协调各个模块的工作,保证 系统的稳定运行。
微处理器可以通过8255A实现对 外部设备的控制,扩展了微处理
器的控制能力。
8255A可以作为微处理器的输入 /输出接口,实现人机交互和数据
采集。
与可编程逻辑器件连接的应用
01
8255A可以与可编程逻辑器件连接,实现复杂的逻辑控制和数 据处理。
02
通过8255A,可编程逻辑器件可以扩展其输入/输出端口,满足
根据实际需求,设定8255A的数据格式,包括数据位、停止位、 奇偶校验位等。
数据读写操作
通过数据传输编程实现对8255A的数据读写操作,包括读数据、 写数据、读写同时操作等。
PART 05
8255A的应用实例
与微处理器连接的应用
8255A与微处理器连接,可以实 现并行数据传输,提高数据传输
效率。
在现代嵌入式系统中,8255A芯片仍有一 定的应用,尤其在一些需要并行I/O接口的 场合,如人机界面、传感器等。
PART 02
8255A芯片的基本结构 与功能
芯片的基本组成
输入/输出端口
数据总线
8255A包含三个输入/输出端口,分别为 端口A、端口B和端口C。每个端口都有8 个位,可以独立配置为输入或输出模式。
控制信号生成
第9章 可编程并行接口芯片8255A
并行通信接口
片选信号CS:低电平有效,由系统高位地址线译码产生,用 于选中8255A进行操作; 读信号RD:低电平有效,用于读8255A的数据或状态信息; 写信号WR:低电平有效,用于对8255A写入数据或命令; 地址线A1、A0:用以选择8255A内部不同的寄存器(端口寻 址),8255A有3个I/O口和1个控制寄存器,共4个端口; A1、A0和RD、WR、CS信号组合决定8255A的基本操作。
方式0也可用于查询传送方式:由于没有规定信号联 络引脚,需由用户自行设计硬件连接并定义信号功 能。通常将 A 口、 B 口用作数据端口,选择 C 口的某 些位作控制和状态信息位。
- 10 -
并行通信接口
2. 方式1-选通输入/输出方式
工作于方式 1 的 I/O 口( A 或 B 口),规定使用 C 口的 指定位作为控制或状态信息位,数据传送操作在联 络信号的应答控制下完成; 每个选通端口包含:8位数据端口、3条C口指定位提 供的控制线,以及组控电路的中断逻辑; 方式1下的数据I/O口可用于输入或输出,且对输入和 输出均提供锁存能力; 当 A 、 B 口中只有一个工作于方式 1 ,且余下的 13 位 工作于方式0时,各端口的输入输出组态为32种; 若A、B口同时工作于方式1,端口C余下两位只能工 作于方式0(输入或输出),则各端口的输入输出组 态为8种; C口需要为每个选通端口提供3位联络信号,但是3个 规定位在输入和输出时并不相同。
X
1 X
X
1 X
X
0 1
X
1 1
1
0 0
数据总线 → 高阻
非法状态 数据总线 → 高阻 -8-
并行通信接口
9.2.2 8255A的工作方式
可编程并行接口芯片8255A
(1)输入输出端口
可编程并行接口芯片8255A
3个8位的并行端口A,B,C,其中,端口A和端口B均有一个8位数据输出锁存/缓冲器和一个8位数据输入 锁存器,端口C有一个8位数据输出锁存/缓冲器和一个8位数据输入缓冲器。端口C被分成高4位和低4位,可作 为基本输入输出端口、状态或控制信息传送端口,分别与端口A和端口B配合工作。
⑤ 整个写周期结束后地址信号消失。
2 方式1
可编程并行接口芯片8255A
方式1是一种选通式输入输出工作方式,其特点是与外设传送数据时,需要设置联络信号。在这种方 式下,端口C的部分位用作选通控制信号,控制端口A和B的数据输入输出。
(a)
(b)
8255A在方式1时的输入信号
(a)端口A在方式1时的输入信号 (b)端口B在方式1时的输入信号
可编程并行接口芯片8255A
1.3 8255A的工作方式
1 方式0
方式0是8255A的基本输入输出方式,其特点是 无需设置联络信号,8255A就可以直接与外设进行简 单的无条件数据传送。方式0适用于无条件数据传送 或查询式数据传送。
在这种方式下,3个端口都可以设置为输入输出 端口,但不能同时既作为输入又作为输出。其中,端 口A和B为8位端口,输入、输出均有锁存能力;端口 C可分为两个4位端口(高4位和低4位),仅对输出有 锁存能力。
微机原理与接口技术
可编程并行接口芯片8255A
1.1 8255A的引脚及功能
8255A是40引脚的双列直插式芯片。
读信号,输入,用于控制数据流的读出, 低电平有效。该信号有效时,表示允许 CPU 从 8255A 端 口 中 读 取 数 据 或 状 态 信 息。
片选信号,由CPU输入,低电平有效。 该 信 号 有 效 时 , 表 示 8255A 被 选 中 , 允 许与CPU交换信息。
可编程并行接口芯片8255A
可编程并行接口芯片8255A并行输入 / 输出就是把若干个二进制位信息同时进行传递的数据传输方式。
它拥有传输速度快、效率高的长处。
并行数据传输需用的信号线许多(与串行传输对比),不合适长距离传输。
所以,并行数据传输合用于数据传输率要求较高,而传输距离相对较短的场合。
8255A是 Intel 企业为其 80 系列微办理器生产的通用可编程并行输入输出接口芯片,也能够与其余系列的微办理器配套使用。
因为其通用性强,与微机接口方便,且可经过程序指定达成各样输入输出操作,所以, 8255 获取了宽泛的应用。
8255A 的引脚与构造1. 8255A 的引脚40 个引脚,双列直插8255A是可编程的三端口并行输入输出接口芯片,拥有式封装,由 +5V 供电,其引脚与功能表示图以下图。
A、 B、 C 三个端口各有 8 条端口 I/O 线: PA7PA0,PB7PB0, PC7PC0,共32 个引脚,用于 8255A 与外设之间的数据(或控制、状态信号)的传递。
D0~D7:8 位三态数据线,接至系统数据总线。
CPU经过它实现与8255 之间数据的读出与写入,以及控制字和状态字的写入与读出等。
A0~A1:地点信号。
A0 和 A1 经片内译码产生四个有效地点分别对应A、 B、 C 三个独立的数据端口以及一个公共的控制端口。
在实质使用中,A1、 A0 端接到系统地点总线的A1、 A0。
CS#:片选信号,由系统地点译码器产生,低电平有效。
读写控制信号 RD#和 WR#:低电平有效,用于决定 CPU和 8255A 之间信息传递的方向:当 RD#=0时,从 8255A 读至 CPU;当 WR#=0时,由 CPU写入 8255A。
CPU对 8255 各端口进行读写操作时的信号关系如表所示。
RESRT:复位信号,高电平有效。
8255A 复位后, A、 B、 C 三个端口都置为输入方式。
2. 8255A 的内部构造以下图, 8255A 的内部由以下四部分构成:( 1)端口 A、端口 B 和端口 C端口 A、端口 B 和端口 C 都是 8 位端口,能够选择作为输入或输出。
可编程并行接口8255A
不可编程并行接口和可编程并行接口 不可编程并行接口的工作方式和功能: 是由硬件接线决定,不能用软件来控制。
可编程并行接口的工作方式和功能:
可用软件编程的方法改变,使接口具有更大 的灵活性和通用性。
9.3 可编程并行接口8255A
8255A的引脚、编程结构 8255A的控制字 8255A三种工作方式 8255A的应用举例
一、方式控制字
1 1
1. 写入方式控制字:示例
要求:
A端口:方式1输入
C端口上半部:输出,C口下半部:输入
B端口:方式0输出
方式控制字:10110001B或B1H
初始化的程序段:
mov dx,0fffeh ;假设控制端口为FFFEH
mov al,0b1h
;方式控制字
out dx,al
址,已知芯片A口地址为0F4H,则当CPU执行输出
指令访问0F7H端口时,其操作为 。
A.数据从端口C送数据总线 B.数据从数据总线送端口C
C.控制字送控制寄存器
D.数据从数据总线送端口B
9.3.2 8255A芯片的控制字
方式0:基本输入输出方式 方式1:选通输入输出方式 方式2:双向选通传送方式
0 D7
数据的各位同时由源到达目的地 → 快 多根数据线 → 距离短、远程费用高
并行通信适于短距离、高速通信
9.1 并行通信与串行通信
将数据的各位按时间顺序依次在一根传输线上传输。
源 TXD
0 1 10 1 0 1 0
目 RXD 的
数据的各位依次由源到达目的地 → 慢 数据线少 → 远程, 费用低
第九章 可编程并行接口8255A
并行通信和串行通信概念 可编程并行接口8255A 8255A编程应用 本章小结 本章习题
8255A可编程并行接口
实验报告二、实验原理1、8255A芯片8255A是一种可编程的I/O接口芯片,可以与MCS-51系统单片机以及外设直接相连,广泛用作外部并行I/O扩展接口。
(1)8255A的内部结构 8255A内部由PA、PB、PC三个8位可编程双向I/O口,A组控制器和B组控制器,数据缓冲器及控制逻辑四部分电路组成。
8255A结构框图和引脚图如图4-30所示。
①三个数据端口A、B、C。
这三个端口可看作是I/O口,但它们的结构和功能也稍有不同。
A口:独立的8位I/O口,内部有对数据输入/输出的锁存功能。
B口:独立的8位I/O口,对输出数据有锁存功能。
C口:可以看作一个独立8位I/O口,也可以看作是两个独立4位I/O口,仅对输出数据进行锁存。
②A组和B组的控制电路。
这是两组根据CPU命令控制8255A工作方式的电路,这些控制电路内部设有控制寄存器,可以根据CPU送来的编程命令来控制8255A的工作方式,也可以根据编程命令来对口的指定位进行置/复位的操作。
A组控制电路用来控制A口及C口的高4位。
B组控制电路用来控制B口及C口的低4位。
③数据总线缓冲器。
8位的双向的三态缓冲器。
作为8255A与系统总线连接的界面,输入/输出的数据,CPU 的编程命令以及外设通过8255A传送的工作状态等信息,都是通过它来传输的。
④读/写控制逻辑。
读/写控制逻辑电路负责管理8255A 的数据传输过程。
它接收片选 信号CS 及系统读信号RD 、写信号WR 、复位信号RESET,还有来自系统地址总线的口地址 选择信号A0和A1(图4-31)。
图4-31 8255A 结构框图和引脚图(2) 8255A 的引脚功能:①数据总线(8条)。
D0~D7,用于传送CPU 和8255A 间的数据、命令和状态字。
②控制总线(4条)。
RESET:复位线,高电平有效。
CS:片选线,低电平有效。
RD 、WR: RD 为读命令线,WR 为写命令线,皆为低电平有效。
可编程并行接口芯片8255A
给出使用8255A的解决方案
8255A的例子
单片机原理与应用
单片机原理与应用
可编程并行接口芯片8255A
1.1 8255A的结构
1.2 8255A的工作方式
8255A的工作方式
方式0——基本输入/输出方式 方式1——选通的输入/输出方式 方式2——双向传输方式
端口A、B和C都可工作在方式0 端口A和B都可工作在方式1 只有端口A能工作在方式2
1.3 8255A的应用
8255A与MCS-51单片机的接口 使用总线方式连接。D7~D0连接数据总线P0, CS#连接高位
地址信号或其组合,WR#、RD# 连接控制总线中的同名引脚, A1、A0通常连接低位地址信号 根据情况,RESET引脚一般连接到系统复位输入,或者连接到 单片机某一空闲口线,以便能用软件复位8255A 8255A的端口线与并行外围设备数据线相连
8255A的例子
某MCS-51系统中已经使用了外部数据存储器,地址范围在 0000H~0FFFH。现需控制3个外部设备,每个外设有8条线接 收单片机系统送出的数据,没有其他联络信号。请给出硬件电 路和软件接口
要求有3个8位的输出端口,最合适的就是用8255A来
可编程并行接口-8255A
与外设相连的信号线
PA7~PA0、PB7~PB0、PC7~PC0:三态、双向,输入/输出由工作方式决 定,可直接与外设相连。
与CPU连接的信号线
D7~D0:双向、三态数据线,与CPU系统数据总线相连。 A1、A0:端口地址选择信号,用来指明哪一个端口被选中。8255A有A、B、
端口A 1 —输入 0 —输出
端口C (PC7~PC4)
1 —输入 0 —输出
D6
D5
D4
D3
D2
D1
D0
B组 端口C (PC3~PC0) 1 —输入 0 —输出
端口B 1 —输入 0 —输出
B组方式选择 0 —方式0 1 —方式1
13
§1.3 8255A的控制字
D7:特征位(标志位)。 D6、D5:A组方式选择。00—方式0;01—方式1;10和11为方式2。 D4:A口的输入/输出选择。0为输出,1为输入。 D3:C口(高4位)输入/输出选择。0为输出,1位输入。 D2:B组方式选择。0为方式0,1为方式1。 D1:B口的输入/输出方式选择。0为输出,1为输入。 D0:C口(低4位)的输入/输出选择。0为输出,1为输入。 从中可看出,A口可工作在任一工作方式中,B口只能工作在方式0、方式1中。
A口:包含一个8位数据输出锁存器/缓冲器和一个8位数据
输入锁存器,因此A口无论作为输入口或输出口,其数据均 能受到锁存。
B口:包含一个8位数据输出锁存/缓冲器和一个8位数据输
入缓冲器。
C口:包含一个8位数据输出锁存/缓冲器,一个8位数据输
入缓冲器(输入无锁存)。
第9讲可编程并行接口8255A(1)
C口高位输入输出选择: 0=输出
1=输入
D7=1
A口输入输出选择:
0=输出 01=方式1,
选通输入输出
1=输入 1X=方式2
双向选通输入输出 13/30
A口工作方式选择:00=方式0, A口工作状态为:基本输入输出
3种工作方式说明
D7 D6 D5 D4 D3 D2 D1 D0
8255的24条I/O线全部用作传送数据 不设专用应答线常用于无条件传送 输出有锁存,输入无锁存有缓冲
A、B口传送数据,C口部分引脚指定为 固定的专用应答线 用于查询(条件)传送或中断传送 数据输入输出都有锁存功能 A为双向输入输出口, C的5条线为专用应答线
D7=1
A口工作方式选择:00=方式0, A口工作状态为:基本输入输出 01=方式1,
方式0查询法工作
当采用查询方式传送数据时,利用端口C的高4位和低4 位能分别作为输入或输出的特点,配合端口A和端 口B进行输入数据和输出数据的操作, 即A口和B口传送数据,C口的高4位和低4位分别用来传 送控制外设的控制信息和采集外设的状态信息。
CPU向控制端口写入方式控制字,决定各端口是输入数据
还是输出数据。传送数据的方法一般采用无条件传送方式 或查询传送方式。 方式1——选通输入输出方式。 方式2——双向选通输入输出方式。仅A口可以使用这种方式。 本节主要介绍方式0的应用。
17/30
方式0无条件输出举例(1)
【例】 设8255A端口A工作在方式0下,通过A口输出数 据控制8个指示灯轮流点亮。电路连接如下图所示。 (地址为04A0H~04A6H)
JNZ LLL
LED动态显示程序清单(3)
MOV AX , WORD PTR [DI]
可编程并行输入-输出接口芯片8255A
3.方式2
• 方式2为双向选通输入输出方式。方式2只限于A口使用,用C口的5位进行联络。工 作时输入、输出数据都能锁存。当A口在方式2下工作时,B口可以在方式0或方式1 工作。双向选通输入输出方式是通过A口8位数据线与外设进行双向通信的方式,既 能发送,又能接收数据。工作时可以用中断方式,也可以用查询方式与CPU联系。 当8255A的A口工作在方式2时,其逻辑功能结构如图1.8所示。
27
中断方式的双向并行通信接口电路框图
28
8255A方式2时读出的C口的状态字
29
• 主机一侧的编程。 • 主程序:
3.软件设计
30
主程序
31
主程序
32
中断服务程序
33
中断服务程序
34
微型计算机原理与接口技术
9
2.方式1
• 方式1为选通的输入/输出方式(或称应答式输入/输出)。在方式1下将三个端口分 成A、B两组,A、B两个口仍作为数据输入/输出口,而C口分成两部分,分别作为 A口和B口的联络信号。在8255A中规定三位联络信号,两个数据口共用去C口的六 位,剩下的两位可以用作数据传输,用方式控制字的D3位来设置它的输入/输出。 在方式1下,输入/输出端口均有锁存功能。
设有控制电路,根据CPU发出的方式选择控制字来控制8255A的工作方式,每个控制组都接收来自 读/写控制逻辑的“命令”,接收来自内部数据总线的“控制字”,并向与其相连的端口发出适当的 控制信号。 • 4.读/写控制逻辑 • 读/写控制逻辑用来管理数据信息、控制字和状态字的传送,它接收来自CPU地址总线和控制总线的 有关信号,向8255A的A、B两组控制部件发送命令。
17
方式2的逻辑功能结构
18
可编程并行接口芯片8255A及其应用
OBFA INTEA I/O I/O INTRA INTEB OBFB INTRB
(2)方式2 D7 D6 D5 D4 D3 D2 D1 D0 OBFA INTE1 IBFA INTE2 INTRA * * *
第二节 输入输出应用
8255A的应用举例 的应用举例
8255A作为开关K0~K3及七段LED显示器接口。要求开关设置 的二进制信息,由PC0~PC3输入,经程序转换为对应的七段LED显 示器的字形代码后,由A口输出显示。 接口 驱 D7~D0 D7~D0 动 PA7 RD 器 RD 8086 系 PA0 WR WR 统 A1 A0 +5V 总 K3 A2 A1 PC3 线 A0 Y0 O A CS K2
ACK-外设的回答信号,低电平 有效,由外设送给8255A。 表示CPU送到指定端口的 数据已被外设接受。 INTE-中断允许信号。 INTEA、 INTEB是由用户对PC6、PC2按 位置位实现的。 INTR-中断请求信号,高电 平有效。当 ACK =1、 OBF =1且 INTE =1时, INTR =1。
8255A方式选择控制字 方式选择控制字: 方式选择控制字 按题意设置端口A方式0输出,下C口输入. 1 0 0 0 × 0 × 1 81H
A0 A3 A4 M/IO A5 A6 A7
无关位 选 择 位 D7 = 0 使端口C的bit3置位的控制字 MOV AL,00000111B OUT 0FBH,AL 使端口C的bit3复位的控制字 MOV AL,00000110B OUT 0FBH,AL
位
111 选中PC7
00000111B
00000110B
三、8255A的工作方式 的工作方式
方式1输出 口 方式 输出 (B口)
可编程外围接口芯片8255A及其应用课件
2.A组和B组的控制电路
这是两组根据CPU命令控制8255A工作方式的电路,这些控制电路内部设有控
制寄存器,可以根据CPU送来的编程命令来控制8255A的工作方式,也可以根
据编程命令来对C口的指定位进行高4位(PC7-PC4);
B组控制电路用来控制B口及C口的低4位(PC3-PC0) 。
13
1、方式0——基本输入输出方式 2、方式1——选通输入输出方式 3、方式2——双向总线I/O方式
可编程外围接口芯片8255A及其应用
14
当系统复位时,8255A的RESET输入端为高电平,使8255A复位,所有 的数据端口被置成输入方式 当复位信号撤除后8255A继续保持复位时预置的输入方式。 通过用输出指令对8259A的控制字寄存器编程,写入设定工作方式的 控制字,可以让3个数据口以不同的方式工作。
说明:C口除部分位用作选通信号外,其余位(2位)可工作在方式0下,作为输
入或输出线,用程序指定其数据传送方可向编程。外围接口芯片8255A及其应用
用场合。
3)CPU可直接用输入指令从指定端口中读取数据,或用输出指令将数据写入
指定的端口,无需任何其他用于应答的联络信号。
对于方式0,还规定输出信号可被锁存,输入不能锁存。
端口信号线之间无固定的时序关系,用户根据数据传送的要求决定输入输出
的操作过程。
可编程外围接口芯片8255A及其应用
19
D7 D6 D5 D4 D3 D2 D1 D0 1 0 0 X X 0X X
第九章 可编程外围接口芯片8255A及其应用
可编程外围接口芯片8255A及其应用
1
9-1 8255A的工作原理 一、 8255A的结构和功能 二、 8255A的控制字 三、8255A的工作方式和C口状态字
第9章并行接口8255APPT课件
第10章并行接口芯片8255A 1 / 111
Shanghai Jiaotong University
《Microcomputer Technology》 cs.sjtu 2020/8/1
第一部分
整体概述
THE FIRST PART OF THE OVERALL OVERVIEW, PLEASE SUMMARIZE THE CONTENT
PB口 0:输出 1:输入
第10章并行接口芯片8255A 11 / 111
Shanghai Jiaotong University
《Microcomputer Technology》 cs.sjtu 2020/8/1
8255A的置位/复位控制字D7 = 0
如下程序段:(设8255A的命令端口地址为63H)
第10章并行接口芯片8255A 19 / 111
Shanghai Jiaotong University
《Microcomputer Technology》 cs.sjtu 2020/8/1
注意其中一个细节: INTE信号是中断允许位,如何设定? STB信号可以仅使用它的引脚,而不 必使用其相应的位(PC4、PC2)
第10章并行接口芯片8255A 5 / 111
Shanghai Jiaotong University
《Microcomputer Technology》 cs.sjtu 2020/8/1
❖ 并行端口A、B、C
端口A: PA7~0 8位数据输出锁存器/缓冲器 8位数据输入锁存器
端口B: PB7~0 8位数据输出锁存器/缓冲器 8位数据输入缓冲器
《Microcomputer Technology》 cs.sjtu 2020/8/1
可编程并口8255A
例:对B口的PB1和PB0同时置位复位(产生方波) mov dx, 301h ;Port B 端口地址为301h lp:in al, dx or al, 03h out dx, al ;PB1PB0=11 call delay and al, 0fch out dx, al ;PB1PB0=00 call delay jmp lp
• 主要由数据总线缓冲器、读写控制逻辑、 A、B、C三个双向I/O端口及有关控制电 路组成。
– 数据总线缓冲器 三态双向8位缓冲,用于收发数据总线上的 数据 – 读/写控制逻辑 包括RD、WR、CS、A0、A1。控制总线的 开放、关闭和数据的传送方向。
8255A的编程控制字
8255A 共有两个控制字:①方式选择 控制字;②对端口C按位置位/复位控制字。 这两个控制字共用一个地址号。即当 地址线A1A0都为1时就是访问控制字寄存器 的片内地址。而用控制字的D7位来区分是 方式设定控制字,还是对C端口的按位置位 /复位命令。当D7位为1,是方式控制字; 若D7位为0,是对端口C按位置位/复位的 命令。
1、 方式0及其应用
0方式特点
①0 方式是一种基本输入 / 输出工作方式。 通常不用联络信号,或不使用固定的联 络信号,因此,所谓基本I/O方式是指查 询方式传送,也包括无条件传送。这种 方式不能采用中断方式和 CPU 交换数据。 输出锁存,输入有三态缓冲能力而无锁 存功能。
②在0方式下,彼此独立的两个8位和两个4 位并行口,共24根I/O线全部由用户支 配,都能被指定作为输入或者作为输出 用,共有16种不同的使用组态。要特别 强调的是,在0方式下,只能把C口的高4 位为一组或低4位为一组同时输入或输出, 不能再把4位中一部分作输入另一部分作 输出,即4位一起行动。
可编程并行接口8255a复习资料
可编程并行接口8255A
1.功能特点:
①40脚双列直插芯片,三个互相独立的端口(ABC),每个端口有8根数据线。
②三种工作方式(012)
③A端口有一个8位数据输出缓冲器和一个输入缓冲锁存器,B端口C端口各有一个8位输出锁存器和输入缓冲器。
2.内部结构:
三个端口PN0-PN7,两组(A组A端口+C端口高半部分,B组B端口+C组低半部分)一般用BC端口作为输出端口。
8255A有四个端口地址,分别为A端口、B端口、C端口和控制寄存器。
3.控制字:
①方式选择控制字:
D7:必须为1
D6D5:选择A组工作方式(00方式0,01方式1, 1x方式2)
D4:控制A端口为输入或者输出(0:输出,1:输入)
D3:控制C端口高四位输入或者输出(0:输出,1:输入)
D2:选择B组工作方式(0:方式0。
1:方式1)
D1:控制B端口为输入或者输出(0:输出,1:输入)
D0:控制C端口第四位输入或者输出(0:输出,1:输入)
②C端口按位置位复位控制字:
D7:必须为0
D3D2D1:选择数据线(二级制计数原则)
D0:选择置位(0:置0 1:置1)
4.工作方式:
主要讲方式0
基本输入输出方式。
在这种方式下,8255A的三个端口均用作输入输出传送,不设置专用联络线。
尽管C端口分为两个4位端口,但CPU方位两个4位端口不能单独进行读写,而是把C端口看做一个整体进行读写操作。
5.经典案例:
CPU编程,8253定时计数,8255A控制小灯亮暗。
见例题:。
微机接口_第九章 8255A
序号
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
表11.2 方式0的工作状态组合
控制字 D7,…,D0
8255A是Intel86系列微处理机的 配套并行接口芯片,它可为86系列 CPU与外部设备之间提供并行输入/输 出通道。
1 可编程并行接口芯片8255A
一、8255A的内部结构和引脚信号
1. 8255A内部结构
8255A可编程外围设备接口 (Programmable Peripheral Interface, 简写 为PPI) ,其内部结构如图所示。
A组控制 部件
双向 数据总线 缓冲器
D7~D0
RD WR
AA01
CS RESET
读/写 控制部件
B组控制 部件
A组 端口A
8位
A组 端口C
(高4位)
B组 端口C
(低4位)
B组 端口B
8位
图11.1 8255A内部结构
PA7~PA0 PC7~PC4 PC3~PC0 PB7~PB0
8255A包括四大部分:数据总线缓冲器、 读写控制部件、A组和B组控制部件、端口 A、B、C。
(1) 并行输入 / 输出端口A、B、C
端口A:包含一个8位数据输出锁存 器/缓冲器和一个8位数据输入锁存器,输 入输出数据均受到锁存。
端口B和C: 都包含一个8位数据输入缓 冲器和一个8位的数据输出锁存器/缓冲器, 输出数据能锁存,输入数据不锁存。
端口C:可分成两个4位端口,分别定义 为输入或输出端口,还可定义为控制、状 态端口,配合端口A和端口B工作。
3718
4 3
P.A0
2 1 40
. 通道A .
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
9.3.2 8255A的工作方式
方式0:基本输入输出方式
适用于无条件传送和查询方式的接口电路 适用于查询和中断方式的接口电路
方式1:选通输入输出方式
方式2:双向选通传送方式
适用于与双向传送数据的外设 适用于查询和中断方式的接口电路
方式0输入时序
RD 输入端口 CS,A1,A0 D0~D7 data
常用的矩阵结构键盘
每行连接一个引脚 每列连接一个引脚 用控制线为低、 读取检测线来识别闭 合键
控制线
检 测 线
+5V +5V
1. 扫描法
先使第0行接低电平,其余行为高电平,然后看 第0行是否有键闭合(通过检查列线电位实现)
此后,再将第1行接地,然后检测列线是否有变 为低电位的线。如此往下一行一行地扫描,直到 最后一行
键盘是微机系统最常使用的输入设备 小键盘:适用于单板机或以微处理器为 基础的仪器,实现数据、地址、命令及 指令等的输入 独立键盘:通过5芯电缆与PC微机主机 连接
简易键盘的工作原理
+5V
最简单的线性结构 键盘
每一个引脚连接一 个键 输入0/1反映键是否 按下
+5V
+5V
简易键盘的工作原理
中断请求信号 请求CPU接收数据
方式1输入联络信号
STB——选通信号,低电平有效
由外设提供的输入信号,当其有效时,将输 入设备送来的数据锁存至8255A的输入锁存器 8255A输出的联络信号。当其有效时,表示数 据已锁存在输入锁存器 8255A输出的信号,可用于向CPU提出中断请 求,要求CPU读取外设数据
9.2 8255A的引脚信号和功能
D0 ~ D7数据线 RD 读信号 CS 片选信号 A0 ~ A1地址线 WR 写信号 RESET复位信号
CS A1 A0 0 0 0 0 0 0 1 1 0 1 0 1
I/O地址 60H 61H 62H 63H
读操作RD 读端口A 读端口B 读端口C 非法
写操作WR 写端口A 写端口B 写端口C 写控制字
2. 读写数据端口
初始化编程后:
当数据端口作为输入接口时,执行输入IN指 令将从外部输入设备得到外设数据 当数据端口作为输出接口时,执行输出OUT 指令将把CPU的数据送给外部输出设备
8255A具有锁存输出数据的能力
对输出方式的端口同样可以输入 不是读取外设数据 读取的是上次CPU给外设的数据
端口C的状态字
A组 B组
D7
D6
D5
D4
D3
D2
D1
D0
方式1输入
I/O I/O IBFA INTEA INTRA INTEB IBFB INTRB
方式1输出
OBFA INTEA I/O I/O INTRA INTEB OBFB INTRB
方式2双向
OBFA INTE1 IBFA INTE2 INTRA × × ×
INTEA
外设响应信号 表示外设已经接收到数据 ACKA
PC6 PC7
OBFA
INTRA
输出缓冲器满信号 表示CPU已经输出了数据
PC3
中断允许触发器
中断请求信号 请求CPU再次输出数据
方式1输出引脚:B端口
PB7~PB0
INTEB
外设响应信号 表示外设已经接收到数据 ACKB OBFB INTRB 输出缓冲器满信号 表示CPU已经输出了数据
方式2将方式1的选通输入输出功能组合成一个 双向数据端口,可以发送数据和接收数据 只有端口A可以工作于方式2,需要利用端口C的 5个信号线,其作用与方式1相同 方式2的数据输入过程与方式1的输入方式一样 方式2的数据输出过程与方式1的输出方式有一 点不同:数据输出时8255A不是在OBF有效时向 外设输出数据,而是在外设提供响应信号ACK 时才送出数据
data-in data-out
data-out
data-in
D0~D7
9.4 8255A与系统总线的连接
1.8255A与系统数据总线的连接
2.8255A与系统地址总线连接 3.端口地址范围的确定
4.其它控制信号的连接
9.5 8255A的应用举例
作为通用的并行接口电路芯片,825A 具有广泛的应用 应用在IBM PC/XT微机上 应用于打印机接口电路 连接简易键盘 驱动LED数码管 ……
第9章
可编程并行接口8255A
第9章 可编程并行接口8255A
教学重点
8255A的工作方式和编程 8255A的应用 键盘的扫描程序 LED数码管的多位显示
本章教学要求
1. 掌握8255A的结构特点和引脚功能 2. 掌握8255A的工作方式、编程及方式0、1 的应用 3. 理解键盘的工作原理、抖动和重键问题及解 决方法 4. 掌握键盘扫描程序(扫描法、行反转法)的 编写 5. 掌握LED数码管的工作原理和多位显示方法 6. 了解并行打印机接口的引脚定义和接口时 序
PC3
中断允许触发器
中断请求信号 请求CPU接收数据
方式1输入引脚:B端口
PB7~PB0
INTEB
数据选通信号 表示外设已经准备好数据 STBB
PC2
PC1 IBFB 方式1需借用端口C用做联络信号 输入缓冲器满信号 同时还具有中断请求和屏蔽功能 表示A口已经接收数据 PC0 INTRB
中断允许触发器
9.3.1 8255A的控制字格式
方式控制字格式
1. 写入方式控制字:示例
要求:
A端口:方式1输入 C端口上半部:输出,C口下半部:输入 B端口:方式0输出
方式控制字:10110001B或B1H 初始化的程序段: mov dx,0fffeh ;假设控制端口为0FFFEH mov al,0b1h ;方式控制字 out dx,al ;送到控制端口
当输出设备已接受数据后,8255A输出此信号向CPU 提出中断请求,要求CPU继续提供数据
INTR——中断请求信号,高有效
方式1输出时序
WR OBF INTR ACK 输出端口 D0~D7 data
OBF和ACK是外设和8255A间 的一对应答联络信号, 为的是可靠地输出数据
data
方式2双向方式
8255A在IBM PC/XT上的应用
工作在基本输入/输出方式0
端口A为方式0输入,用来读取键盘扫描码 端口B工作于方式0输出,例如控制扬声器等 端口C为方式0输入,读取系统状态和配置
系统的初始化编程: mov al,10011001b out 63h,al
;方式控制字99H
9.5.1 键盘及其接口
2. 读写数据端口:示例
利用8255A的输出锁存能力,可实现按位 输出控制 对输出端口B的PB7位置位的程序段: mov dx,0fffah ;B端口假设为0FFFAH in al,dx ;读出B端口原输出内容 or al,80h ;使PB7=1 out dx,al ;输出新的内容
3. 读写端口C:归纳1
9.3 8255A的控制字和工作方式
初始化编程:一个方式控制字
控制寄存器I/O地址:A1A0=11
工作过程中:通过数据端口对外设数据 进行读写
数据读写利用端口A、B和C的I/O地址, A1A0依次等于00、01、10
IBM PC/XT机上,端口A、B、C和控制 端口的I/O地址为60H、61H、62H和63H
data
请体会这里8255A的数据缓冲作用
方式0输出时序
WR
输出端口
data
CS,A1,A0
D0~D7
data
8255A对CPU通过它输出给外设的数据进行锁存
方式1输入引脚:A端口
PA7~PA0
INTEA
数据选通信号 表示外设已经准备好数据 STBA
PC4 PC5
IBFA
输入缓冲器满信号 表示A口已经接收数据 INTRA
C端口被分成两个 4位端口,两个端 口只能以方式0工 作,可分别选择输 入或输出
在控制上,C端口上半部和A端口编为A 组,C端口下半部和B端口编为B组
3. 读写端口C:归纳2
当A和B端口工 作在方式1或方 式2时,C端口的 部分或全部引脚 将被用做联络线
其余引脚仍可设定工作在方式0输入或输出
并行数据传输方式
以计算机的字长,通常是8位、16位或32位为 传输单位,一次传送一个字长的数据 适合于外部设备与微机之间进行近距离、大量 和快速的信息交换
例如:微机与并行接口打印机、磁盘驱动器
微机系统中最基本的信息交换方法
例如:系统板上各部件之间,接口电路板上各部件之 间
9.1 8255A的内部结构
方式2双向引脚
PA7~PA0
INTE1
PC6 PC7
ACKA
用PC6设置INTE1(输出) 用PC4设置INTE2(输入)
OBFA
STBA
INTE2 PC4
输入和输出中断通过
或门输出INTRA信号
PC5
IBFA
INTRA
PC3
方式2双向时序
WR OBF
INTR
ACK STB IBF RD PA0~PA7
具有多种功能的可编程并行接口电路芯片
最基本的接口电路:三态缓冲器和锁存器