8255A
8255A、8251A的原理及应用

8255A的内部结构,由三部分电路组成:与CPU的接口电路、内部控制逻辑电路和与外设连接的输入/输出接口电路。
D7~D0(data bus):三态、双向数据线,与CPU数据总线连接,用来传送数据。
(chip select):片选信号线,低电平有效时,芯片被选中。
A1, A0(port address):地址线,用来选择内部端口。
(read):读出信号线,低电平有效时,允许数据读出。
(write):写入信号线,低电平有效时,允许数据写入。
RESET(reset):复位信号线,高电平有效时,将所有内部寄存器(包括控制寄存器)清0。
PA7~PA0(port A):A口输入/输出信号线。
PB7~PB0(port B):B口输入/输出信号线。
PC7~PC0(port C):C口输入/输出信号线。
VCC:+5V电源。
GND:电源地线。
8255A的工作方式方式0:基本输入输出方式适用于无条件传送和查询方式的接口电路方式1:选通输入输出方式适用于查询和中断方式的接口电路方式2:双向选通传送方式适用于与双向传送数据的外设适用于查询和中断方式的接口电路8255A初始化编程8255A的A,B,C三个端口的工作方式是在初始化编程时,通过向8255A的控制端口写入控制字来设定的。
8255A由编程写入的控制字有两个:方式控制字和置位/复位控制字。
方式控制字用于设置端口A, B, C的工作方式和数据传送方向;置位/复位控制字用于设置C口的PC7~PC0中某一条口线PC i(i=0~7)的电平。
两个控制字公用一个端口地址,由控制字的最高位作为区分这两个控制字的标志位。
(1)方式控制字的格式8255A工作方式控制字的格式如图7.11所示。
D0:设置PC3~PC0的数据传送方向。
D0=1为输入;D0=0为输出。
D1:设置B口的数据传送方向。
D1=1为输入;D1=0为输出.D2:设置B口的工作方式。
D2=1为方式1;D2=0为方式0。
8255A芯片

8255A芯片8255A芯片是一种集成了并行输入/输出接口功能的芯片,由Intel公司推出。
它具有三个可编程I/O端口,每个端口都可以配置为输入或输出。
它提供了高度灵活性和可编程性,使其成为许多数字系统中常用的接口芯片。
8255A芯片的主要特点如下:1. 并行接口:8255A芯片具有三个并行I/O端口,即A、B和C端口。
每个端口都有8位,可以单独配置为输入或输出。
2. 可编程:8255A芯片可以通过编程来配置其各个端口的功能。
通过写入控制字寄存器,可以设置端口的工作模式,如输入模式、输出模式、双向模式等。
3. 单独I/O地址:8255A芯片具有单独的I/O地址,通过在I/O地址总线上设置相应的地址来访问芯片的寄存器。
4. 简化接口设计:8255A芯片的引脚数量相对较少,使得系统设计更加简化和便捷。
它可以直接与微处理器或其他逻辑芯片相连接,提供了与外部设备的接口。
5. 高可靠性:8255A芯片采用了逻辑门阵列和静态RAM组成的结构,具有较高的可靠性和稳定性。
8255A芯片的主要应用领域包括:1. 工业自动化系统:8255A芯片可以用于工业控制和自动化系统中,作为输入和输出设备的接口。
例如,它可以与传感器和执行器连接,实现对设备的监控和控制。
2. 仪器设备:8255A芯片可以用于仪器设备中,提供与外部设备的数据交换和控制接口。
例如,它可以用于示波器、频谱分析仪等设备中。
3. 计算机外部设备:8255A芯片可以用于计算机外部设备的接口,如打印机、磁盘驱动器等。
它可以实现对这些设备的数据传输和控制。
4. 数据采集系统:8255A芯片可以用于数据采集系统中,用于接收传感器的模拟信号并将其转换为数字信号。
总之,8255A芯片是一种功能强大的并行输入/输出接口芯片,具有灵活的配置和简化的接口设计。
它在工业自动化、仪器设备、计算机外部设备等领域具有广泛的应用。
8255A接口技术

0 0 0 0 1 0 0
0 0 1 1
0 1 0 1
1 1 1 1 × 1 0
0 0 0 0 × 1 1
PA口← 数据总线(← CPU) PB口←数据总线(← CPU) PC口←数据总线(← CPU) 控制寄存器←数据总线 无操作情况 总线悬浮(三态) 总线悬浮 控制口不能读
数据 数据 数据 控制字
13
§8.2 可编程并行接口8255A
对于各种型号的CPU都有与其配套的并行接口芯片。如
Intel公司8255A(PPI),Zilog公司Z-80PIO,MC6820 (PIO)等,它们的功能虽有差异,但工作原理基本相同。
一、8255A的外部特性和内部结构
1.8255A的基本特性
具有两个8位(A口和B口)和两个4位(C口高/低4位)并
1
D6
D5
D4
PA 0=输出 1=输入
D3
PC4~8 0=输出 1=输入
D2
B组方式 0=0方式 1=1方式
D1
PB 0=输出 1=输入
D0
PC0~3 0=输出 1=输入
特征位
A组方式 00=0方式 01=1方式 10=2方式 11=不用
例1:
要把A口指定为1方式,输入,C口上半部为输 出;B组指定为0方式,输出,C口下半部定为 输入,则工作方式命令代码是:10110001B或 B1H。
完成数据传送和控制任务的逻辑电路
PC机系统板的可编程接口芯片、I/O总线
槽的电路板(适配器)都是接口电路
7
I/O接口的主要功能
⑴ 对输入输出数据进行缓冲和锁存
输出接口有锁存环节 输入接口有缓冲环节
⑵ 对信号的形式和数据的格式进行变换
8255a的编程方式

8255a的编程方式
8255A是一个并行I/O接口芯片,由Intel生产。
它有3个8位的并行端口,分别是端口A、端口B和端口C。
每个端口都可以独立地设置为输入或输出模式。
8255A的编程方式通常包括以下步骤:
1. **选择命令字**:首先,你需要选择一个命令字来设置8255A 的行为。
命令字决定了端口A、B和C的模式(输入、输出、双向)以及是否启用端口A和B的握手线。
2. **设置端口模式**:你可以使用命令字中的三位来设置每个端口的模式。
例如,你可以将端口A设置为输入模式,端口B设置为输出模式,端口C设置为双向模式。
3. **发送数据**:如果你设置了端口为输出模式,你可以将数据写入相应的端口。
同样,如果端口被设置为输入模式,你可以从相应的端口读取数据。
4. **使用握手线**:如果启用了端口A和B的握手线,你可以使用它们来控制数据的传输。
下面是一个简单的8255A编程例子,使用命令字设置端口A为输出模式,端口B为输入模式,端口C为双向模式:
```css
Command Word: 1001 0000 (二进制)
Port A: Output Mode
Port B: Input Mode
Port C: Bidirectional Mode
```
请注意,具体的编程方式可能会根据使用的微处理器或微控制器以及你的应用需求而有所不同。
因此,你应该参考具体的硬件和软件文档来获取更详细的信息。
8255A芯片

8255A芯片Intel 8086/8088 系列的可编程外设接口电路(Programmable Peripheral Interface)简称 PPI,型号为8255(改进型为8255A及8255A-5),具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。
它是一片使用单一+5V电源的40脚双列直插式大规模集成电路。
8255A 的通用性强,使用灵活,通过它CPU可直接与外设相连接。
8255A在使用前要写入一个方式控制字,选择A、B、C三个端口各自的工作方式,共有三种;方式0 :基本的输入输出方式,即无须联络就可以直接进行的 I/O方式。
其中A、B、C口的高四位或低四位可分别设置成输入或输出。
方式1 :选通I/O,此时接口和外围设备需联络信号进行协调,只有A 口和B口可以工作在方式1,此时C口的某些线被规定为A口或B口与外围设备的联络信号,余下的线只有基本的I/O功能,即只工作在方式0.方式2:双向I/O方式,只有A口可以工作在这种方式,该I/O线即可输入又可输出,此时C口有5条线被规定为A口和外围设备的双向联络线,C口剩下的三条线可作为B口方式1的联络线,也可以和B口一起方式0的I/O线。
8255A是一个并行输入、输出器件,具有24个可编程设置的I/O口,包括3组8位的I/O为PA口、PB口、PC口,又可分为2组12位的I/O口:A组包括A口及C口高4位,B组包括B口及C组的低4位。
A口可以设置为方式0、方式1、方式2,B口与C口只能设置为方式0或方式1.8253A芯片可编程定时/计数器是 intel 82583-PTT 就是软件和硬件技术的结合功能:一片上有3个独立的16位计数通道每个计数通道都可按二进制计数或十进制计数每个计数器的计数速率可高达2mhz每个通道有6种工作方式,可由程序设置和改变所有的输入输出都与ttl兼容8259A目录8259A工作原理8259A主要功能8259A是专门为了对8085A和8086/8088进行中断控制而设计的芯片,它是可以用程序控制的中断控制器。
可编程并行接口芯片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 个位,可以独立配置为输入或输出模式。
控制信号生成
微机原理 可编程接口芯片8255A及应用

第七章
参考程序片断: MOV AL, 10010000B ; 控制字 OUT 0F6H, AL ; 写入控制字 LP: IN AL, 0F0H ; 从A口读入开关状态 OUT 0F2H, AL ; B口控制LED,指示开关状态 CALL DELAY1S JMP LP
思考:
若地址大于FFH,则程序应该怎么改?
dp g f e d c b a
g
d
b
c
DP
g f e d c b a 1
阴 极
0
1
1
0
1
36
1
0
第七章
十六进制数共阴极的七段显示码表
十六进制数字
0 1 2 3 4 5 6
七段显示码
3FH 06H 5BH 4FH 66H 6DH 7DH
十六进制数字
8 9 A b C d E
七段显示码
7FH 6FH 77H 7CH 39H 5EH 79H
内部逻辑 6
端口C (低4位)
B 组B 端口
PC3~PC0
(8位)
PB7~PB0
CPU接口
外设接口
第七章
8255A与系统的连接示意图
7
第七章
3、各部分功能简介
数据端口
A、B、C:可用来和外设传送信息;每
个端口8位,通过编程设定其为输入口或输出口;
工作方式 0 1 8255数据端口功能表 B口 A口 C口
教材第九章内容
第七章
可编程外围接口芯片8255A及其应用
7.1 8255A的工作原理
一、8255A的结构和功能
二、8255A的控制字及初始化编程 三、8255A工作方式和C口状态字
8255A的原理介绍

D7~D0
8086 系 统 总 线
RD WR A1 A2 A0 A3 A4 M/IO A5 A6 A7
&
A B C G2A G2B
Y0 O Y1 Y2 O O
RD WR A0 A1 CS
PA7
PA0
PC3 PC2
驱 动 器
K3
K2 K1 +5V
PC1
PC0
~
K0
G1 LS138
8255A
+5V
;查表,取出相应的字形码送AL
;指向端口A ;输出字形码显示
LED显示器的结构
a
f g b c d dp
a b c d e
a b c d e
e
f
g ep
f
g ep
LED显示器的外形
共阳极LED显示器的结构
共阴极LED显示器的结构
LED显示器的工作原理
软件译码法
PA0 PA1
a b c d e
8 2 5
8255A各端口地址确定: 由图可知: A7 A6 A5 A4 A3 A2 A1 A0 1 1 1 0 1 0 各端口地址为:E8H~EEH
8255A方式选择控制字: 按题意设置端口A方式0输出,下C口输入.
1 0 0 0 × 0 × 1 81H
A0 A3 A4 M/IO A5 A6 A7
o o 读/写 控制 逻辑 o
至控制 寄存器 至数据端口
(五) 端口寻址
8255A端口选择表
A1 A0 RD 0 0 1 0 0 1 1 0 1 0 0 1 0 1 0 0 0 1 1 1 1 WR 1 1 1 0 0 0 0 CS 0 0 0 0 0 0 0 端口 A 端口 B 端口 C 数据总线 数据总线 数据总线 数据总线 功能 数据总线 数据总线 数据总线 端口 A 端口 B 端口 C 控制字寄存器
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
10.3 可编程并行接口 可编程并行接口8255A
微机系统中多采用大规模集成接口芯片作 为接口电路 利用这种芯片构成的接口电路,在不改变 硬件的情况下,可以通过编程改变其功能、 工作方式,使用起来更灵活
10.3 可编程并行接口 可编程并行接口8255A
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的基本性能
可编程通用并行输入/输出接口电路 通用性强,使用灵活,通过它CPU可直接与 外设相连
具有三个相互独立的输入/输出端口 /
A端口、B端口、C端口
三个端口可联合使用,构成具有握手联络信号的 并行接口 端口有多种工作方式可供选择
A口有三种工作方式:方式0、1、2 B口有二种工作方式:方式0、方式1
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的引脚
和外设连接的引脚
PA0~PA7:A口数据线 PB0~PB7:B口数据线 PC0~PC7:C口数据线,也可作为和外设的联络 线
和CPU连接的引脚
WR RD CS D7~D0 、A0、A1 、RESET 、 、 、 RESET:输入、高电平有效。当它有效时,内部 所有寄存器清0,三个数据端口均被设置为输入方 式
方式1输出的时序(输出过程)
每个信号的发出者和承受者 弄清各信号之间的因果关系
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式1:选通的输入/输出方式
使用在:
中断传送方式 使相应的INTE=1,允许中断 INTR信号一般不直接与CPU连接,而是接到中断 控制管理器8259的IR端 查询传送方式 读入C口的状态字 输入时可查询IBF(=1可读入数据) 输出时可查询 OBF(=1可写出数据)
OBF(Output Output
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式1:选通的输入/输出方式
方式1输出时规定的联络信号
INTR(Interrupt Request):中断请求信号,高电 平有效,用于8255A向CPU提出中断申请 INTE(Interrupt Enable):中断允许信号。只有当 INTE=1时,8255A才有可能向CPU发出中断请求信 号
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的端口选择操作
CS
0 0 0 0 0 0 0 0 0 1
RD
0 0 0 0 1 1 1 1 1 ×
WR
1 1 1 1 0 0 0 0 1 ×
A0 0 0 1 1 0 0 1 1 × ×
A1 0 1 0 1 0 1 0 1 × ×
操 作 读A口 读B口 读C口 无操作 写A口 写B口 写C口 写控制口 无操作 禁止
由外设产生,输出到8255A。当它有效时,会将外设 送来的数据信号锁存到A口或B口的输入锁存器中 IBF(Input Buffer Full):输入缓冲器满,高电平有 效。该信号作为的应答信号,是8255A输出到外设的 联络信号。当它有效时,表示数据已到达8255A数据 端口的输入锁存器,但CPU还未取走,通知外设暂停 送数据
特点:
只适用于A口,且C口提供固定的联络信号 当A口工作在方式2、B口可工作在方式0或1 C口没有被指定为联络信号的其他位可以工作在方 式0,可选择输入/输出
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式2:双向传输方式
方式2规定的联络信号
可编程并行接口芯片8255A 可编程并行接口芯片
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式1:选通的输入/输出方式
特点:
使用固定的联络信号(输入联络信号必用) 可以使用中断 A、B口可工作在方式1,C口某些位被规定为联络信 号,而没有规定的位可以工作在方式0,可选择输入/ 输出 A口方式1(0)、B口方式1(0) A、B口分别设置输入/输出,输出、输入均带锁存
方式1输入的时序(输入过程)
每个信号的发出者和承受者 弄清各信号之间的因果关系
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式1:选通的输入/输出方式
方式1输出时规定的联络信号
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式1:选通的输入/输出方式
方式1输出时规定的联络信号
Buffer Full):输出缓冲器满信号,低电 Full 平有效。该信号由8255A送给外设。当它有效时,通 知外设可以从A口或B口取走CPU写入的数据 (Acknowledge):响应信号,低电平有效。该 ACK 信号作为的应答信号,是由外设送给8255A。当它有 效时,表示外设已经从8255A的A口或B口取走了数据
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式1:选通的输入/输出方式
使用在:
注意:使用方式1时,不管采用何种传送方式,外设一 定要提供输入联络信号 输入设备:提供 STB 输出设备:提供 ACK
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式2:双向传输方式
C口置位/复位控制字
控制C口的相应位置位(输出1)或复位(输出0) 写入控制口(A0=1、A1=1),特征位D7=0
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的控制字
工作方式控制字的格式
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的控制字
C口置位/复位控制字的格式
可编程并行接口芯片8255A 可编程并行接口芯片
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的内部结构
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的内部结构
三个数据端口:A口、B口、C口
每个端口都是8位的,可以选择为输入/输出口 A口:8位输出锁存/缓冲、输入锁存/缓冲 B口:8位输出锁存/缓冲、输入锁存/缓冲 C口:8位输出锁存/缓冲、输入缓冲
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式1:选通的输入/输出方式
方式1输入时规定的联络信号
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式1:选通的输入/输出方式
方式1输入时规定的联络信号
STB (Strobe):选通输入信号,低电平有效。该信号
数据传送方向 A口→数据总线 B口→数据总线 C口→数据总线 D0~D7为三态 数据总线→A口 数据总线→B口 数据总线→C口 数据总线→控制口 D0~D7为三态 D0~D7为三态
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的控制字
两个控制字
工作方式控制字
设定工作方式、选择输入/输出 C口的输入/输出可分为两个4位口分别设置 写入控制口(A0=1、A1=1),特征位D7=1
8255A的工作方式
A口:可在三种方式下工作
方式0、方式1、方式2
B口:可在两种方式下工作
方式0、方式1
A口和B口工作方式是由写入控制寄存器的 工作方式控制字决定的 A口和B口的工作方式的设置是相互独立的
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式0:基本的输入/输出方式
8255A的工作方式
方式2:双向传输方式
方式2的时序(输出过程)
相当于方式1输入时序和输出时序的组合 输入过程和输出过程的顺序及次序是任意的
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式2:双向传输方式
使用在:
中断传送方式 查询传送方式 读入C口的状态字 适用的外设:具体输入和输出功能,且不是同时进行 的
主要内容
并行通信接口 串行通信接口 定时器/计数器 / DMA控制器 A/D和D/A转换器
并行通信接口
主要内容
关于并行通信与接口 可编程并行接口芯片8255A
并行通信与接口 并行通信是指把一个字符的n个数位用n条线同时 传输的机制 它的特点是传输速度快、效率高,但因为数据 位要同时传送,所需电缆也多 并行通信适用于传输速率要求高,且传输距离 短的场合 并行接口使传送数据的各位同时在总线上传输 “并行”指的是接口与I/O设备一侧的数据线是 并行的 接口与总线一侧一定是并行数据线
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的应用举例
书 P279 例10-1
分析过程 设计过程
硬件连接 软件编程
书 P281 例10-2
采用查询方式 采用中断方式
可分为两个4位端口分别使用
A组、B组控制电路
A组:控制A口和C口上半部分(PC4~PC7) B组:控制B口和C口下半部分(PC0~PC3)
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的内部结构
数据总线缓冲器 读/写控制逻辑
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的引脚
可编程并行接口芯片8255A 可编程并行接口芯片
8255A的工作方式
方式1:选通的输入/输出方式
方式1输入时规定的联络信号
INTR(Interrupt Request):中断请求信号,高电 平有效,用于8255A向CPU提出中断申请 INTE(Interrupt Enable):中断允许信号。只有当 INTE=1时,8255A才有可能向CPU发出中断请求信 号
PC6和PC2的置位/复位操作分别用于控制A口的 INTEA和B口的INTEB 注意:在方式1输入时,对PC6和PC2的置位/复位操 作仅仅是8255A的内部操作,不会影响到PC6和PC2 引脚的逻辑状态