计算机汇编原理8255A
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
24
8255的工作方式0
1. 方式0(基本输入输出方式,单向传送端口, 输入
或输出 )
8255作为打印机接口,工作于方式0
25
程序设计:设PA、PB、PC口地址分别为0D0H、0D2H、 0D4H控制口地址:0D6H
MOV AL,81H; OUT 0D6H,AL MOV AL,0DH;① PC6置1,0DH=0000,1101 OUT 0D6H, AL LPST: IN AL,0D4H;读PC口 AND AL,04D;② 打印机忙否(PC2 =BUSY=?) JNZ LPST ;PC2=1,打印机忙,等待 MOV AL, CL OUT 0D0H, AL;③ CL中的字符送PA口 MOV AL, 0CH OUT 0D6H, AL;④ 置PC6=0,即=0;00001100=0CH INC AL OUT 0D6H, AL;置PC6=1,即=1,00001101=0DH ┆
Intel系列的8位并行接口芯片
通用性强,使用灵活 可用程序设置和改变芯片的工 作方式 是一种典型的可编程并行接口 芯片 40个引脚,双列直插式
8255A
二、可编程并行通信接口芯片8255 总线
reset
D7 ~ D0
8255A
RESET
D7
~
端口A
PA7 ~ PA0
PC7 ~ PC0 PB7 ~ PB0
29
8255的工作方式1——选通输入输出方式
对方式1输入的端口,C口提供与外部联络的信号有:
① STB 选通信号(低电平有效)
由外设发出,送给8255A,作用是将外设送来的数据锁存到 8255A的输入端口。
② IBF 输入缓冲器满信号(高电平有效)
8255A 发出,表示外设送来的数据已进入输入端口。 当外设送来的数据送入输入端口后,8255A自动发出。
端口A
有 3 种工作方式( 方式 0、方式 1、方式 2) 对外 8 根引脚 PA7 ~ PA0
5
二、可编程并行通信接口芯片8255
8255芯片引脚定义与功能
1. 数据端口 A、B、C
端口B
有 2 种工作方式:方式 0、方式 1 对外 8 根引脚 PB7 ~ PB0
端口C
对外引脚PC0 ~ PC7
工作在方式 0 的端口,为单向传送端口, 输入 或输出
作为输入口相当于普通的三态门 作为输出口 相当于普通的锁存器
CPU可利用工作在方式 0 的端口,直接对端口 进行读写操作,实现CPU与外设间的数据传送。
16
三、 三种工作方式 2. 方式1(选通输入输出方式)
A口工作在方式1时,C口的某3根引脚作为A 口的联络信号。
21
端口C置位/复位控制字
注意:C口控制字虽然是对端口C操作,但应写入到 控制口地址,而不是写入到C数据口
22
例
假设8255A的控制口地址为203h, 通过
控制口置 PC2 为 0,置 PC4 为 1
MOV MOV DX,203H AL,0000 0100B ;置DX为控制口地址 ;置PC2为0
(2) RD 的上升沿清除IBF
(3) 端口内的数据进入CPU
33
8255的工作方式1——选通输入输出方式
34
8255的工作方式1——选通输入输出方式
对方式1输出的端口,C口提供与外部联络的信号有:
① OBF 输出缓冲器满信号(低电平有效)
当数据送至8255A输出缓冲器后,8255A自动发出。 表示CPU送来的数据已进入8255A输出端口,可用来 通知外设把数据取走。 ② ACK 外设响应信号(低电平有效) 由外设发出,送给8255A。作用是通知 8255A输出 端口的数据已被外设取走,可以传送下一个数据。
可编程并行输入/输出接口芯片8255A
•并行接口的特点 •可编程并行通信接口芯片8255
1
一、并行接口的特点 并行接口是在多根数据线上,以字节/字为单位与 I/O设备交换数据
2
二、可编程并行通信接口芯片8255 8255芯片引脚定义与功能
PA3 PA2 PA1 PA0 RD CS GND A1 A0 PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0 PB0 PB1 PB2 PA4 PA5 PA6 PA7 WR RESET D0 D1 D2 D3 D4 D5 D6 D7 Vcc PB7 PB6 PB5 PB4 PB3 3
7
二、可编程并行通信接口芯片8255
8255芯片引脚定义与功能
2. 控制端口D (A组和B组控制电路)
8位端口,无对外引脚可用来和外设传送信息
控制端口的内容决定A口、B口、C口的工作状态(输 入或输出)
和工作方式(方式 0、1、2), 起控制作用。
8
二、可编程并行通信接口芯片8255
8255芯片引脚定义与功能
35
8255的工作方式1——选通输入输出方式
③ INTR 中断申请信号(高电平或上升沿有效)
8255A 发出, 用来向CPU发出中断申请。
当OBF 、ACK、INTE均为1时,8255A自动发出 INTR。
36
8255的工作方式1——选通输入输出方式
在8255A内部硬件结构中:
A口和B口之间没有硬件关系,
即可分别作为独立的输入或输出端口;
C口和A口,C口和B口之间有硬件联系, 通过向控制口设置控制字可以改变这种联系。
13
三、 三种工作方式
根据A口和C口、B口和C口之间硬件关系的不同,
可以有三种不同的工作方式, 分别称为方式 0、方式 1、方式 2。 A口或B口工作在方式 0: 与C口之间没有硬件联系。 A口或B口工作在方式 1: C口的某3根引脚作为端口与外设
数据 D0 缓冲器 端口C RD WR 片选 CS 译码
外
IOR IOW
A9 ~ A2
读写 控制
端口B
设
A1 A0
A1 A0
片内 译码
控制口 D
GND +5V
4
二、可编程并行通信接口芯片8255
8255芯片引脚定义与功能
1. 数据端口 A、B、C
每个端口8位,通过编程设定其为输入口或输出口
可用来和外设传送信息
B口工作在方式1时, C口的某3根引脚作为B 口的联络信号。 工作在方式 1 的端口,为单向传送端口。
在方式 1 下,C口作为A口、B口联络信号的 引脚,其动作关系在芯片设计和制造时已固定, 不由用户自己安排,也不能编程改变。
17
三、 三种工作方式 3.方式2 (双向传送方式)
端口工作在方式 2时, C口的某 5根引脚作为端口的 联络信号 8255A 只有A口可以工作在方式 2 下。 与方式0和方式1不同的是: 工作在方式 2 的端口,为双向传送端口,既可输入 又可输出。
② 外设发出选通信号STB: (1) 将数据锁存在输入端口内。 (2) 使IBF变高,表示输入端口满,可用于阻止外设输入新数 据。(3) 如果INTE=1, STB的上升沿使INTR变高,发出中断 请求。
③ 转中断处理程序,执行IN指令,CPU 读取数据,发出 RD信号: (1) RD 的下降沿清除INTR
3. 数据总线缓冲器(引脚D0~D7)
由1个8位双向三态缓冲器构成
8255A内各端口通过数据缓冲器与系统总线相连。
CPU与端口A、B、C间传送的数据, 以及CPU写入控制端口D中的控制字均通过数据 缓冲器传送。
9
二、可编程并行通信接口芯片8255
8255芯片引脚定义与功能
4. 读写控制电路 (引脚CS、 RD、 WR)
31
8255的工作方式1——选通输入输出方式
方式1的输入时序:从工作在方式1下的输入端口输
入数据时,有关信号的变化关系。
PA7~PA0 PB7~PB0 ① 外设送来数据
STB IBF INTR
RD
②
当INTE=1时
③
32
8255的工作方式1——选通输入输出方式
① 当外设准备好数据,将数据送至端口线PA7~PA0或 PB7~PB0
18
四、8255A的控制字
方式选择控制字
19
例
假设8255A 控制端口的地址为203h,编程设置 控制字,使A口方式0输出; B口方式0输入
D7 1 D6 0 D5 0 D4 0 D3 1/0 D2 0 D1 1 D0 1/0
特征位
A口 方式 0
A口 PC7~PC4 B口 B口 PC3~PC0 I/O 方式 0 输入 I/O 输出
OUT
MOV OUT
DX, AL
AL,0000 1001B DX, AL ;置PC4为1
23
例:设 A、B、C数据口地址分别位60H、 61H、 62H、控制口端口地址 63H 1:A口方式0,输出、B口方式0,输入,C口高4位输 出,C口低4位入 MOV AL,10000011B OUT 63H,AL 2:PC7置1,PC3置0 MOV DX,63H MOV AL,0000,1111B;PC7置1 OUT DX,AL MOV AL,0000,0110B;PC3置0 OUT DX,AL
由于对 C口无要求, 控制C口的相应位D4, D0可为任意值,假设取0 所以, 方式控制字为 1000 0010B, 即82H
20
例
假设8255A 控制端口的地址为203h,编程设置 控制字,使A口方式0输出; B口方式0输入
设置控制字的程序段如下: MOV MOV OUT DX,203h AL,82h DX, AL ;置DX为控制口地址 ;置控制字于AL中 ;将控制字写入控制口
27
8255的工作方式1——选通输入输出方式
利用方式 1 下的联络信号, 可方便地实 现查询或中断方式的硬件设计, 使CPU能 够有效、可靠地与外设进行数据传送。 A口、B口在输入或输出不同的工作状态 时, C口联络信号的引脚和意义也不同。
28
8255的工作方式1——选通输入输出方式
5. 片内译码电路 (引脚A1、 A0)
选择被操作的端口
A1 A0
选中端口 端口 A 端口 B 端口 C 控制端口 D
11
0 0 1 1
0 1 0 1
二、可编程并行通信接口芯片8255
8255芯片引脚定义与功能
由CS、A1、A0、RD、WR引脚的不同组合,实现各 种不同的功能。
12
三、 三种工作方式
6
二、可编程并行通信接口芯片8255
8255芯片引脚定义与功能
1. 数据端口 A、B、C
★当端口 A 在方式 1 或方式 2、端口 B 在方式 1 时, 端口 C 的某些位用于传送联络信号, 以适应 CPU 与外设间的各种数据传送方式的要求, 如查询传送的应答信号、中断传送的中断申请信 号等; ★C口未被用作联络信号的其它位可工作在方式 0 下。
③ INTR 中断申请信号(高电平或上升沿有效)
8255A 发出,用来向CPU发出中断申请。STB、IBF、 INTE均为1时,8255A自动发出INTR。
30
8255的工作方式1——选通输入输出方式
对方式1输入的端口,8255A内部的控制信号有:
INTE 中断允许控制信号, 作用是控制是否允许 8255A的中断申请信号INTR发出。 此信号无引出,通过控制口对C口相应位的置位/复位 设置允许或不允许。 A口,对PC4置位, 使INTEA=1, 允许中断 对PC4复位, 使INTEA=0, 不允许中断 B口,对PC2置位, 使INTEB=1, 允许中断 对PC2复位, 使INTEB=0, 不允许中断
的联络信号。
A口工作在方式 2: C口的某5根引脚作为端口与外设的联
络信号。
14
三、 三种工作方式
1. 方式0(基本输入输出方式)
A口工作在方式 0 时,A口和C口之间没 有硬件联系 B口工作在方式 0 时,B口和C口之间没 有硬件联系
15
三、 三种工作方式
1. 方式0(基本输入输出方式)
控制数据总线缓冲器的状态。
数据总线缓冲器有3种状态:输入、输出、高阻态
CS 0 0 1 × × RD 0 1 × 1 0 WR 1 0 × 1 0 数据总线缓冲器状态 D7~D0 ← 内部数据总线 D7~D0 → 内部数据总线 三态 , 处于断开状态
10
二、可编程并行通信接口芯片8255
8255芯片引脚定义与功能
26
8255的工作方式1——选通输入输出方式
A口工作在方式1时,C口的某3根引脚作为A口的 联络信号 B口工作在方式1时, C口的某3根引脚作为B口的 联络信号。 工作在方式 1 的端口,为单向传送端口。由方式 控制字决定是输入还是输出。 C口作为联络信号的引脚,不受方式控制字的控制。 该出则出,该入则入, 不受C口按位置位/复位控制 字控制。