8255芯片
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8255A
© 2016 HFUT
3
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
A组逻辑 控制器 端口A PA7~PA0
数据 总线
数据总线 缓冲器 内 部 总 线
端口C 高4位 端口C 低4位
PC7~PC4
PC3~PC0
RD WR A0 A1 RESET
CS
读/写 控制 逻辑
B组逻辑 控制器
只有当 STB、IBF和INTE三者都高时,INTR才能被置为高 电平。也就是说,当选通信号结束,已将输入设备提供的一个 数据送到输入缓冲器中,输入缓冲器满信号IBF已变成高电平, 并且中断是允许的情况下,8255A才能向CPU发出中断请求信号 INTR。A口的中断请求信号INTRA由PC3引脚输出,B口的中断 请求信号INTRB由PC0引脚输出。
§8.1 8255A的工作原理
A组方式1输出控制字 D7 D 6 D 5 D 4 1 0 1 D3 D2 D1 D0 PC4,5 0 1=输入 X X X 0=输出 A口选通输出模型 PA7~PA0 INTEA PC6 PC7
ACK A
OBFA
PC3 WR CS WR CS PC4,5
INTRA I/O
§8.1 8255A的工作原理
二、8255A的控制字
1. 方式选择控制字
D7 D6 D5 D4 D3 D2 D1 D0
1
A组方式选择 A口I/O选择 C口高四位I/O选择 B组方式选择 B口I/O选择 C口低四位I/O选择 00=方式0 1=输入 1=输入 0=方式0 1=输入 1=输入 01=方式1 0=输出 0=输出 1=方式1 0=输出 0=输出 1x=方式2
© 2016 HFUT
12
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
2. 方式1(选通输入输出方式)
① A口和B口为数据口,可工作于输入或输出方式,且数据 均具有锁存功能。 ② C口为A口、B口的提供控制联络信号,PC0~PC2作端口 B的状态和控制线,PC3~PC7作端口A的状态和控制线。 C 口中被 A 口或 B 口用作控制联络信号的引脚,不再受工作 方式控制字的控制。
电气与自动化工程学院自动化系
第八章 可编程接口芯片8255A
© 2016 HFUT
1
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
8255A是一种通用的可编程并行I/O 接口芯片用作接口与 外设进行数据交换时,通常不需要附加外部逻辑电路,简化 接口电路设计。
© 2016 HFUT
2
电气与自动化工程学院自动化系
© 2016 HFUT
19
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
tST
STB
1 tSIB
2
IBF INTR
RD *
tSIT
tRIT
tRIB
tPS
tPH
3
4
PA7~PA0 PB7~PB0 D7~D0
© 2016 HFUT
20
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
© 2016 HFUT 11
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
① A口、B口、C口的高4位和低4位可以分别定义为输入或 输出口,共16种组合。
D7 1 D6 0 D5 0 D4 0/ 1 D3 0/1 D2 0 D1 0/ 1 D0 0/1
② 各端口的数据传输都是单向的。 ③ 输出具有锁存功能,输入不锁存但有缓冲功能。 ④ 适用于同步传送或查询式传送。
① 当外设把一个数据送到端口数据线 PA7~PA0 或 PB7~PB0 后,就向 8255A 发出 STB 负脉冲选通信号, 8255A 输入锁存器接 收外设的输入数据并锁存,选通输入过程从这里开始。选通信号 发出后,经 tSIB 时间, IBF 有效,它作为对输入设备的回答信号, 用于通知外设输入缓冲器已满,阻止外设再送新的数据过来。 ② 选通信号结束后,8255A输入锁存器保持外设输入的数据 不变。经 tSIT 时间,若STB、 IBF 和 INTE三者同时为高电平,使 INTR有效,向CPU发中断请求。 ③ CPU查询或响应中断后,执行IN指令读取输入锁存器, 使读信号RD*(CS和RD的与)有效,把锁存器的数据经数据总 线D7~D0送CPU。读信号有效后,经tRIT时间后,使INTR变低, 清除中断。
端口B
PB7~PB0
© 2016 HFUT
4
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
1. 数据总线缓冲器 双向三态的 8 位缓冲器,用作 8255A 和系统数据总线之间的 接口 。 8255A 通过这个缓冲器与系统的数据总线相连 , 以便 8255A从CPU接收的数据或控制字或者向CPU传送外设送来的数 据及8255A的状态信息。
§8.1 8255A的工作原理
A组方式1输入控制字 D7 D 6 D 5 D 4 1 0 1 D3 D2 D1 D0 PC6,7 1 1=输入 X X X 0=输出 A口选通输入模型 PA7~PA0 INTEA PC4 PC5
STBA
IBFA
PC3 RD CS RD CS PC6,7
INTRA I/O
© 2016 HFUT
9
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
2. C口置位/复位控制字
D7 D6 D5 D4 D3 D2 D1 D0
0
任意值
选择所要操作的C口的位: 000:PC0 100:PC4 001:PC1 101:PC5 010:PC2 110:PC6 011:PC3 111:PC7
© 2016 HFUT
15
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
B组方式1输入控制字 D7 D 6 D 5 D 4 D3 D2 D 1 1 X X X X 1 D0 PC3 1 1=输入 0=输出 B口选通输入模型 PB7~PB0 INTEB PC2 PC1
STBB
IBFB
PC0 RD CS RD CS PC3
Hale Waihona Puke Baidu
0
X
X
1
1
© 2016 HFUT
6
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
3. 数据端口A、B和C 8255A内部包含3个8位的输入输出端口A、B和C,用于与外 设交换数据或进行通信联络。 端口A包含一个8位的数据输入锁存器和一个8位的数据输出 锁存器/缓冲器,因此A口作输入或输出时都可以锁存数据。 端口 B包含一个 8位的数据输入 / 输出锁存器 /缓冲器和一个 8 位的数据输入缓冲器,输出数据可以锁存,输入数据也可锁存, 但输入/输出不能同时锁存。 端口C包含一个8位的数据输入缓冲器和一个8位的数据输出 锁存器/缓冲器,无输入锁存功能,当它被分成两个4位端口时, 每个端口也有一个4位的输出锁存器。
A1
0 0 1 1 0 0 1 1 X
A0
0 1 0 1 0 1 0 1 X
RD
0 0 0 0 1 1 1 1 X
WR
1 1 1 1 0 0 0 0 X
操 作
端口A→数据总线 端口B→数据总线 端口C→数据总线 非法状态 数据总线→端口A 数据总线→端口B 数据总线→端口C 数据总线→控制字寄存器 数据总线高阻态
© 2016 HFUT
17
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
INTE :中断允许信号,无外部引脚。控制 8255A 能否能向 CPU发中断请求信号。在A组和B组的控制逻辑中,分别有中断 请求允许触发器 INTEA 和 INTEB ,各由 C 口置位 / 复位控制字对 PC4位和PC2位的置位/复位来控制。 对 8255A 写入 C 口置位 / 复位控制字使 PC4 位置 1 时, INTEA 被置1,表示允许 A口中断,若使PC4位清0,则禁止 A口发中断 请求,即A口处于中断屏蔽状态。同样,可以通过编程PC2位来 控制INTEB,允许或禁止B口中断。
2. 读/写控制逻辑
用于管理与 CPU 之间数据信息、控制字或状态字的传送过 程。接收来自CPU的地址和控制信号,对A组和B组控制逻辑进 行操作,以及对端口A、端口B和端口C的控制。
© 2016 HFUT 5
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
CS
0 0 0 0 0 0 0 0 1
© 2016 HFUT 21
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
④ 读信号结束后,数据已读入CPU,经tRIB时间,IBF变低, 表示输入缓冲器已空,一次数据输入的过程结束,通知外设可 以再送一个新的数据来。选通输入过程结束。 与方式0相比,方式1输入所读取的是输入锁存器中的数据, 而不是直接来自端口线上的内容。
§8.1 8255A的工作原理
一、结构与功能
PA3 PA2 PA1 PA0 RD CS GND A1 A0 PC7 PC6 PC5 PC4 PC0 PC1 PC2 PC3 PB0 PB1 PB2 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 PA4 PA5 PA6 PA7 WR RESET D0 D1 D2 D3 D4 D5 D6 D7 Vcc PB7 PB6 PB5 PB4 PB3
© 2016 HFUT
22
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
⑵ 选通输出方式 端口C的PC7、PC6和PC3用作端口A的状态和控制线。 端口C的PC2、PC1和PC0作端口B的状态和控制线。 端口C的PC5和PC4仍可用作输入或输出。
© 2016 HFUT
23
电气与自动化工程学院自动化系
© 2016 HFUT
24
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
B组方式1输出控制字 D7 D 6 D 5 D 4 D3 D2 D 1 1 X X X X 1 D0 PC3 0 1=输入 0=输出 B口选通输出模型 PB7~PB0 INTEB PC2 PC1
INTRB I/O
© 2016 HFUT
16
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
STB :选通信号,低电平有效,由外部输入。当该信号有 效时, 8255A 将外部设备通过端口 I/O 线 PA7~PA0 或 PB7~PB0 输 入的数据送到所选端口的输入缓冲器中。端口 A 的选通信号从 PC4引人,端口B的选通信号由PC2引入。 IBF:输入缓冲器满信号,高电平有效,输出。这是8255A 送给外设的状态信号,当它有效时,表示输人设备送来的数据 已传送到8255A的输人缓冲器中,即缓冲器已满,8255A不能再 接收别的数据。
注:两个触发器均无外部引脚,故 PC4 或 PC2 脚上出现高 / 低电平信号时,并不会改变中断允许触发器的状态。同样,改 变中断允许触发器状态也不会影响这两个引脚的状态。
© 2016 HFUT 18
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
INTR :中断请求信号,输出,高电平有效。是 8255A 向 CPU发出的中断请求信号。
© 2016 HFUT
13
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
⑴ 选通输入方式 端口C的PC5、PC4和PC3用作端口A的状态和控制线。 端口C的PC2、PC1和PC0作端口B的状态和控制线。 端口C的PC7和PC6仍可用作输入或输出。
© 2016 HFUT
14
电气与自动化工程学院自动化系
1:置位操作 0:复位操作
© 2016 HFUT
10
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
三、工作方式 1. 方式0(基本输入输出方式) 方式0适用于不需要用应答信号的简单输入输出场合。 在这种方式下, A 口和 B 口可作为 8 位的端口。 C 口的高 4 位 和低4位可作为两个4位的端口。这4个端口中的任何一个既可作 输入也可作输出,从而构成 16 种不同的输入输出组态。在实际 应用时, C口的两半部分也可以合在一起,构成一个 8位的端口。 这样8255A可构成3个8位的I/O端口,或两个8位、两个4位的I/O 端口,以适应各种不同的应用场合。
© 2016 HFUT 7
电气与自动化工程学院自动化系
§8.1 8255A的工作原理
4. A组和B组控制逻辑
8255A的端口 A和端口C的高4位(PC7~PC4)由A组控制逻 辑管理,端口B和端口C的低4位(PC3~PC0)由B组控制逻辑管 理。
© 2016 HFUT
8
电气与自动化工程学院自动化系