8255A的工作方式

合集下载

8255A工作方式

8255A工作方式

方式1下,A、B口均为输出的信号定义
工作方式1下的数据输出时序
工作方式1下A口、B口均为输入
与方式1下两口均为输出类似,为实现选通输入, 则同样要利用C口的信号线。 在口为输入时所用到的控制信号的定义如下: : ① STB 为低电平有效的输入选通信号。
② IBF为高电平有效的输入缓冲器满信号。 ③ INTR为中断请求信号,高电平有效。 ④ INTE为中断允许状态。
方式1下A、B口均为输入时的信号定义
工作方式1下数据输入时序 工作方式 下数据输入时序
工作方式2,又称双向输入输出方式
A口工作于方式2之下时,各信号的定义 如图下所示。 OBF 当A口工作在方式2时,其控制信号 ACK 、 STB 、 、IBF及INTR与前面的叙述是一 样的; 不同点是:
方式2下的信号定义
FBC0H~FBC3H
FBC4H~FBC7H
之下,A口既 ①因为在方式2之下 口既 因为在方式 之下 作为输出又作为输入,因 作为输出又作为输入 因 有效时,才 此,只有当 ACK有效时 才 只有当 能打开A口输出数据三态 能打开 口输出数据三态 使数据由PA0~PA7 门,使数据由 使数据由 输出。 输出。 此时A口输入 口输入、 ② 此时 口输入、输出均具 备锁存数据的能力。 备锁存数据的能力。 ③在这种方式下,A口的数据 在这种方式下 口的数据 输入或数据输出均可引起 中断。 中断。
6.2.2 8255A工作方式
8255有3种工作方式。这些工作方式可用软件编程来指 定。 1. 工作方式0,又称为基本输入输出方式 在此方式下,可分别将A口的8条线、B口的8条线、 C口高4位对应的4条线和C口低4位对应的4条线定义为 输入或输出。
工作方式0下的输入输出组合

8255a的应用原理图

8255a的应用原理图

8255a的应用原理图1. 简介8255a是一种常用的并行接口芯片,具有广泛的应用领域。

本文将介绍8255a 的应用原理图及其基本工作原理。

2. 原理图下面是8255a的应用原理图:_______| |Port A ---| || 8255a |Port B ---| || |Port C ---|_______|3. 工作原理8255a是一个可编程的并行接口,它具有3个I/O端口(Port A、Port B、Port C)和多种工作模式。

下面是8255a的工作原理的详细描述:3.1 Port APort A是一个8位的双向端口,可以用于输入和输出。

当将Port A设置为输入模式时,可以通过读取Port A来获取外部输入信号;当Port A设置为输出模式时,可以通过向Port A写入数据来向外部设备发送信号。

3.2 Port BPort B也是一个8位的双向端口,并且可以作为一组控制信号进行使用。

在输出模式下,可以通过向Port B写入数据来控制外部设备的各种功能;在输入模式下,可以通过读取Port B来获取外部设备的状态。

3.3 Port CPort C是一个8位的端口,既可以作为一组数字输入/输出端口,也可以作为一组控制信号端口。

Port C的具体功能取决于模式控制寄存器(Mode Control Register)的设置。

4. 工作模式8255a提供了多种工作模式,可以根据具体的应用需求进行配置。

下面是常用的工作模式介绍:4.1 单工模式在单工模式下,Port A、Port B和Port C分别用作输入或输出。

这种模式适用于只需进行一方向数据传输的场合。

4.2 双工模式在双工模式下,Port A和Port B既可以作为输入,也可以作为输出。

这种模式适用于需要双向数据传输的场合。

4.3 脉冲输出模式在脉冲输出模式下,Port A和Port B可以作为脉冲输出端口。

这种模式适用于需要生成特定频率或脉冲序列的场合。

8255a的工作方式控制字

8255a的工作方式控制字

8255a的工作方式控制字
8255A是一种通用输入/输出(I/O)控制器芯片。

它具有三种
工作模式:模式0、模式1和模式2。

控制字是一个8位的二进制数,用于设置8255A芯片的工作模式和功能。

在模式0下,8255A被配置为三个8位I/O端口,即Port A、Port B和Port C(又称控制端口)。

控制字的位D0-D2用于配置
Port C的寻址模式(例如BCD模式、二进制模式等),而D3-D7则
用于配置Port A和Port B是否为输入或输出。

在模式1下,8255A被配置为两个8位I/O端口和一个双向数
据总线。

控制字的位D0-D2用于配置Port C的寻址模式,而D3-D7
用于配置Port A和Port B的方向和数据的输入/输出。

在模式2下,8255A被配置为一个8位I/O端口和一个双向数
据总线。

控制字的位D0-D2用于配置Port C的寻址模式,而D3-D7
则用于配置Port A的方向和数据的输入/输出。

通过设置控制字的不同位,可以配置8255A芯片的工作模式和
端口的输入/输出方向。

这使得8255A芯片在嵌入式系统中具有很大
的灵活性和可定制性。

8255A的工作方式及其初始化编程

8255A的工作方式及其初始化编程

8255A的工作方式及其初始化编程【例7.1】设8255A的A口工作在方式0,数据输出,B口工作在方式1,数据输入,编写初始化程序(设8255A的端口地址为FF80H~FF83H)。

初始化程序如下:MOV DX, 0FF83H ; 控制寄存器端口地址为FF83HMOV AL, 10000110B ; A口方式0, 数据输出, B口方式1, 数据输入OUT DX, AL ; 将控制字写入控制端【例7.2】将8255A的C口中PC0设置为高电平输出,PC5设置为低电平输出,编写初始化程序(设8255A的端口地址为FF80H~FF83H)。

初始化程序如下:MOV DX, 0FF83H ; 控制端口的地址为FF83HMOV AL, 00000001B ; PC0设置为高电平输出OUT DX, AL ; 将控制字写入控制端口MOV AL, 00001010B ; PC5设置为低电平输出OUT DX, AL ; 将控制字写入控制端口8255A应用举例8255A作为通用的8位并行通信接口芯片,用途非常广泛,可以与8位、16位和32位CPU相连接,构成并行通信系统。

下面通过几个例子来讨论8255A在应用系统中的接口设计方法及编程技巧。

【例7.3】8255A连接开关和LED显示器的接口电路设计。

要求:8255A的A口连接四个开关K3~K0,设置为方式0输入,B口连接一个共阴极LED显示器,设置为方式0输出,将A口四个开关输入的16种状态0H~0FH送B口输出显示。

画出接口电路连接图,并编制汇编语言源程序实现上述功能。

分析:本题是8255A方式0应用的一个实例。

根据题意,接口电路如图7.13所示。

8255A的D7~D0, , 与CPU的D7~D0, , 对应连接,A0和A1与CPU的地址线A0和A1连接,与译码器输出端连接,A口的PA3~PA0连接四个开关K3~K0,其输入有16种组合状态,即0000~1111(0H~0FH),B口经过74LS07(集电极开路六正向高压驱动器)驱动之后与LED显示器连接,可输出一位十六进制数0~F。

可编程并行接口芯片8255A有哪几种工作方式

可编程并行接口芯片8255A有哪几种工作方式

可编程并行接口芯片8255A有哪几种工作方式?每种工作方式有何特点?【解答】方式0:没有固定的用于应答式传送的联络信号线,CPU可以采用无条件传送方式与8255A交换数据。

方式1:有专用的中断请求和联络信号线,因此,方式1通常用于查询传送或中断传送方式。

方式2:PA口为双向选通输入/输出或叫双向应答式输入/输出。

9.2 8255A的方式选择控制字和C口按位控制字的端口地址是否一样?8255A怎样区分这两种控制字?写出端口A作为基本输入,端口B作为基本输出的初始化程序。

【解答】8255A的方式选择控制字和C口按位控制字的端口地址是一样的,通过控制字的最高位D7进行区分:D7=1时,为方式选择控制字;D7=0时,为C口按位控制字。

初始化程序段如下:MOV DX,PORT ;PORT为端口地址MOV AL,10010000BOUT DX,AL9.3 某8255A的端口地址范围为03F8H~03FBH,A组和B组均工作在方式0,A口作为数据输出端口,C口低4位作为状态信号输入口,其它端口未用。

试画出该片8255A与系统的连接图,并编写初始化程序。

【解答】连接图如下:图9-1 8255A与系统的连接图程序如下:MOV AL,81HMOV DX,03FBHOUT DX,AL9.4 试按以下要求对8255A进行初始化编程:(1)设端口A、端口B和端口C均为基本输入/输出方式,且不允许中断。

请分别考虑输入/输出。

(2)设端口A为选通输出方式,端口B为基本输入方式,端口C剩余位为输出方式,允许端口A中断。

(3)设端口A为双向方式,端口B为选通输出方式,且不允许中断。

【解答】(1)端口A、端口B和端口C均为基本输入/输出方式,则为方式0,任何一个口都可用于输入或输出,可出现16种组合,这里只举出2种组合。

若端口A、B为数据输入口;C口的低4位为控制信号输出口,高4位为状态信号输入口,程序段如下:MOV AL,10011010BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL若端口A、B为数据输出口;C口的高4位为控制信号输出口,低4位为状态信号输入口,程序段如下:MOV AL,10000000BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL(2)端口A为选通输出方式,方式1;端口B为基本输入方式,程序段如下:MOV AL,10100010BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001101B ;设PC6为中断信号控制引脚,PC6=1,允许中断OUT DX,AL(3)端口A为双向方式,方式2;端口B为选通输出方式,程序段如下:MOV AL,11000100BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL9.5 采用8255A作为两台计算机并行通信的接口电路,请画出查询式输入/输出方式工作的接口电路,并写出查询式输入/输出方式的程序。

可编程并行接口芯片8255A有哪几种工作方式

可编程并行接口芯片8255A有哪几种工作方式

可编程并行接口芯片8255A有哪几种工作方式?每种工作方式有何特点?【解答】方式0:没有固定得用于应答式传送得联络信号线,CPU可以采用无条件传送方式与8255A交换数据。

方式1:有专用得中断请求与联络信号线,因此,方式1通常用于查询传送或中断传送方式。

方式2:PA口为双向选通输入/输出或叫双向应答式输入/输出。

9、28255A得方式选择控制字与C口按位控制字得端口地址就是否一样?8255A怎样区分这两种控制字?写出端口A作为基本输入,端口B作为基本输出得初始化程序。

【解答】8255A得方式选择控制字与C口按位控制字得端口地址就是一样得,通过控制字得最高位D7进行区分:D7=1时,为方式选择控制字;D7=0时,为C口按位控制字。

初始化程序段如下:MOV DX,PORT ;PORT为端口地址MOV AL,10010000BOUT DX,AL9、3某8255A得端口地址范围为03F8H~03FBH,A组与B组均工作在方式0,A口作为数据输出端口,C 口低4位作为状态信号输入口,其它端口未用.试画出该片8255A与系统得连接图,并编写初始化程序。

【解答】连接图如下:图9-1 8255A与系统得连接图程序如下:MOV AL,81HMOV DX,03FBHOUT DX,AL9、4试按以下要求对8255A进行初始化编程:(1)设端口A、端口B与端口C均为基本输入/输出方式,且不允许中断。

请分别考虑输入/输出。

(2)设端口A为选通输出方式,端口B为基本输入方式,端口C剩余位为输出方式,允许端口A中断。

(3)设端口A为双向方式,端口B为选通输出方式,且不允许中断。

【解答】(1)端口A、端口B与端口C均为基本输入/输出方式,则为方式0,任何一个口都可用于输入或输出,可出现16种组合,这里只举出2种组合。

若端口A、B为数据输入口;C口得低4位为控制信号输出口,高4位为状态信号输入口,程序段如下:MOV AL,10011010BMOVDX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL若端口A、B为数据输出口;C口得高4位为控制信号输出口,低4位为状态信号输入口,程序段如下: MOVAL,10000000BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL(2)端口A为选通输出方式,方式1;端口B为基本输入方式,程序段如下:MOVAL,10100010BMOV DX,PORT ;PORT为端口地址MOV AL,00001101B ;设PC6为中断信号控制引脚,PC6=1,允许中断OUT DX,AL(3)端口A为双向方式,方式2;端口B为选通输出方式,程序段如下:MOV AL,11000100BMOV DX,PORT ;PORT为端口地址OUT DX,ALMOV AL,00001100B ;设PC6为中断信号控制引脚,PC6=0,禁止中断OUT DX,AL9、5 采用8255A作为两台计算机并行通信得接口电路,请画出查询式输入/输出方式工作得接口电路,并写出查询式输入/输出方式得程序.【解答】甲机得8255A就是方式1发送,端口PA为输出,发送数据,而PC7与PC6引脚分别固定作联络线与。

8255A的工作方式及其初始化编程

8255A 的工作方式及其初始化编程8255A 有三种工作方式:基本输入/输出方式、单向选通输入/输出方式和双向选通输入/输出方式.1.8255A 的工作方式(1)方式0:基本输入/输出方式(basic Input/Output)方式0是8255A 的基本输入/输出方式,其特点是与外设传送数据时,不需要设置专用的联络(应答)信号,可以无条件的直接进行I/O 传送.A, B, C 3个端口都可以工作在方式0.A 口和B 口工作在方式0时,只能设置为以8位数据格式输入/输出;C 口工作在方式0时,可以高4位和低4位分别设置为数据输入或数据输出方式.方式0常用于与外设无条件数据传送或查询方式数据传送.(2)方式1:单向选通输入/输出方式(strobe Input/Output)方式1是一种带选通信号的单方向输入/输出工作方式,其特点是:与外设传送数据时,需要联络信号进行协调,允许用查询或中断方式传送数据.由于C 口的PC0, PC1和PC2定义为B 口工作在方式1的联络信号线,PC3,PC4和PC5定义为A 口工作方式1的联络信号线,因此只允许A 口和B 口工作在方式1.A 口和B 口工作在方式1,当数据输入时,C 口的引脚信号定义如图7.6所示.PC3, PC4和PC5定义为A 口的联络信号线INTRA, A STB 和IBFA, PC0, PC1和PC2定义为B 口的联络信号线INTRB, IBFB 和B STB ,剩余的PC6和PC7仍可以作为基本I/O 线,工作在方式0.方式1输入联络信号的功能如下:STB (strobe input):选通信号,输入,低电平有效.此信号由外设产生输入,当STB 有效时,选通A 口或B 口的输入数据锁存器,锁存由外设输入的数据,供CPU 读取.IBF(input buffer full):输入缓冲器满信号,输出,高电平有效.当A 口或B 口的输入数据锁存器接收到外设输入的数据时,IBF 变为高电平,作为对外设STB 的响应信号,CPU 读取数据后IBF 被清除.INTR:中断请求信号,输出,高电平有效,用于请求以中断方式传送数据.为了能实现用中断方式传送数据,在8255A 内部设有一个中断允许触发器INTE,当触发器为"1"时允许中断,为"0"时禁止中断.A 口的触发器由PC4置位或复位,B 口的触发器由PC2置位或复位. 方式1数据输入的时序如图7.7所示.当外设的数据准备就绪后,向8255A 发送STB 信号以便锁存输入的数据, STB 的宽度至少为500ns,在STB 有效之后的约300ns,IBF 变为高电平,并一直保持到RD 信号由低电平变为高电平,待CPU 读取数据后约300ns 变为低电平,表示一次数据传送结束.INTR 是在中断允许触发器INTE 为1,且IBF 为1(8255A 接收到数据)的条件下,在STB后沿(由低变高)之后约300ns 变为高电平,用以向CPU 发出中断请求,待RD 变为低电平后约400ns, INTR 被撤销.A 口和B 口工作在方式1,当数据输出时,C 口的引脚信号定义如图7.8所示.PC3, PC6和PC7定义为A 口联络信号线INTRA,A ACK 和A OBF ,PC0,PC1和PC2定义为B 口联络信号线INTRB, B OBF 和B ACK ,剩余的PC4和PC5仍可以作为基本I/O 线,工作在方式0.方式1输出联络信号的功能如下:OBF (output buffer full):输出缓冲器满指示信号输出,低电平有效.OBF 信号由8255A 发送给外设,当CPU 将数据写入数据端口时, OBF 变为低电平,用于通知外设读取数据端口中的数据.ACK (acknowledge input):应答信号,输入,低电平有效. ACK 信号由外设发送给8255A,作为对OBF 信号的响应信号,表示输出的数据已经被外设接收,同时清除OBF 信号.INTR:中断请求信号,输出,高电平有效.用于请求以中断方式传送数据.方式1数据输出的时序如图7.9所示.当CPU 向8255A 写入数据时,WR 信号上升沿后约650ns, OBF 有效,发送给外设,作为外设接收数据的选通信号.当外设接收到送来的数据后,向8255A 回送ACK 信号,作为对OBF 信号的应答.ACK 信号有效之后约350ns, OBF 变为无效,表明一次数据传送结束.INTR 信号在中断允许触发器INTE 为1且信号无效之后约350ns 变为高电平.若用中断方式传送数据时,通常把INTR连到8259A的请求输入端IRi.(3)方式2:双向选通输入/输出方式(bi-directional bus)方式2为双向选通输入/输出方式,是方式1输入和输出的组合,即同一端口的信号线既可以输入又可以输出.由于C口的PC7~PC3定义为A口工作在方式2时的联络信号线,因此只允许A口工作在方式2,引脚信号定义如图7.10所示.由图7.10可以看出,PA7~PA0为双方向数据端口,既可以输入数据又可以输出数据.C口的PC7~PC3定义为A口的联络信号线,其中PC4和PC5作为数据输入时的联络信号线,PC4定义为输入选通信号STB,PC5定义为输入缓冲器满IBFA;APC6和PC7作为数据输出时的联络信号线,PC7定义为输出缓冲器满OBF,PC6定义A为输出应答信号ACK;PC3定义为中断请求信号INTRA.A需要注意的是:输入和输出公用一个中断请求线PC3,但中断允许触发器有两个,即输入中断允许触发器为INTE2,由PC4写入设置,输出中断允许触发器为INTE1,由PC6写入设置,剩余的PC2~PC0仍可以作为基本I/O线,工作在方式0.2.8255A初始化编程8255A的A,B,C三个端口的工作方式是在初始化编程时,通过向8255A的控制端口写入控制字来设定的.8255A由编程写入的控制字有两个:方式控制字和置位/复位控制字.方式控制字用于设置端口A, B, C的工作方式和数据传送方向;置位/复位控制字用于设置C口的PC7~PC0中某一条口线PCi(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.D3:设置PC7~PC4的数据传送方向.D3=1为输入;D3=0为输出.D4:设置A口的数据传送方向.D4=1为输入;D4=0为输出.D6D5:设置A口的工作方式.D6D5=00为方式0,D6D5=01为方式1,D6D5=10或11为方式2.D7:方式控制字的标志位,恒为1.例如,将8255A的A口设定为工作方式0输入,B口设定为工作方式1输出,C口没有定义,工作方式控制字为10010100B. (2)C口置位/复位控制字的格式8255A C口置位/复位控制字的格式如图7.12所示.8255A C口置位/复位控制字用于设置C口某一位口线PCi(i=0~7)输出为高电平(置位)或低电平(复位),对各端口的工作方式没有影响.D3~D1:8种状态组合000~111对应表示PC0~PC7.D0:用来设定指定口线PCi为高电平还是低电平.当D0=1时,指定口线PCi输出高电平;当D0=0时,指定口线PCi输出低电平.D6~D4没有定义,状态可以任意,通常设置为0.D7位作为标志位,恒为0.例如,若把PC2口线输出状态设置为高电平,则置位/复位控制字为00000101B.(3)8255A初始化编程8255A的初始化编程比较简单,只需要将工作方式控制字写入控制端口即可.另外,C口置位/复位控制字的写入只是对C口指定位输出状态起作用,对A口和B口的工作方式没有影响,因此只有需要在初始化时指定C口某一位的输出电平时,才写入C口置位/复位控制字.【例7.1】设8255A的A口工作在方式0,数据输出,B口工作在方式1,数据输入,编写初始化程序(设8255A的端口地址为FF80H~FF83H).初始化程序如下:MOV DX, 0FF83H ; 控制寄存器端口地址为FF83HMOV AL, 10000110B ; A口方式0, 数据输出, B口方式1, 数据输入OUT DX, AL ; 将控制字写入控制端【例7.2】将8255A的C口中PC0设置为高电平输出,PC5设置为低电平输出,编写初始化程序(设8255A的端口地址为FF80H~FF83H).初始化程序如下:MOV DX, 0FF83H ; 控制端口的地址为FF83HMOV AL, 00000001B ; PC0设置为高电平输出OUT DX, AL ; 将控制字写入控制端口MOV AL, 00001010B ; PC5设置为低电平输出OUT DX, AL ; 将控制字写入控制端口。

8255A的工作方式.


第6章 接口芯片与接口技术
C口所提供的用于输入的联络信号有:
① STB (Strobe):选通脉冲信号(输入),低电平有效。 当外设送来STB 信号时,输入的数据被装入8255A的输入 锁存器中。 ②IBF(InputBufferFull):输入缓冲器满信号(输出), 高电平有效。此信号有效时,表示已有一个有效的外设 数据锁存于8255A的口锁存器中,尚未被CPU取走,暂不 能向接口输入数据,它是一个状态信号。
1.8255A的控制字 8255A 为可编程接口芯片 , 以控制字形式对其工作 方式和C口各位的状态进行设置。它有两种控制字:工 作方式控制字和C口置位/复位控制字。
1) 工作方式控制字
工作方式控制字用于确定各口的工作方式及数据 传送方向,其格式如图6―9所示。
第6章 接口芯片与接口技术
对工作方式控制字作如下说明:
第6章 接口芯片与接口技术
1.方式0(基本输入/输出方式)
这种工作方式不需要任何选通信号,A口、B口及C 口的高 4 位和低 4 位都可以设定为输入或输出。作为输 出口时,输出的数据均被锁存;作为输入口时,A口的数据 能锁存,B口与C口的数据不能锁存。
第6章 接口芯片与接口技术
2.方式1(选通输入/输出方式) 在这种工作方式下 ,A 口可由编程设定为输入口或 输出口,C口的3位用来作为输入/输出操作的控制和同步 信号 ;B 口同样可由编程设定为输入口或输出口 ,C 口的 另 3 位用来作为输入 / 输出操作的控制和同步信号。在
第6章 接口芯片与接口技术
③INTR(InterruptRequest) :中断请求信号(输出),高
电平有效。当IBF为高、 STB信号由低变高(后沿)时,该信 号有效,向CPU发出中断请求。

8255工作方式


将OBF置为有效。对于A组,系统规定端口C的第 7位(PC7)用作从端口A输出的OBF信号,对于B组, 规定端口C的第1位(PC1)用作从端口B输出的OBF信
号。
② ACK ——外部应答信号。由外部输入,低电平有 效。 ACK有效,表示外部设备已收到由8255A输出的八 位数据,它实际上是对OBF信号的回答信号。对于A 组,指定端口C的第6位(PC6)用来接收向端口A输入 的ACK信号;对于B组,指定端口C的第2位(PC2)用 来接收向端口B输入的ACK信号。 ③ INTR——中断请求信号。向CPU输出,高电平有 效。
ACKA OBFA
&
O WR PC3 INTRA I/O
PC4, PC5
图7.4 端口A方式 1 输出
ACK:外设应答 OBF:输出缓冲器满 INTE:中断允许 INTR:中断请求
① CPU输出数据 ② CPU发出WR: (1) 数据写到 8255A的端口 (2) WR的低电平清除中断请求 信号INTR (3) WR的上升沿使OBF有效, 表示输出端口满,通知外设取数 据。 ③ 外设接受到数据后,发出 ACK信号: (1) ACK的下降沿使OBF变高, (2) ACK的上升沿使INTE=1, 则INTR变高,发出中断请求,请 求CPU输出新的数据。
3. STB 选通信号:由外设输入,低电平有效、
4. IBF 输入缓冲存储器满信号:向外部输出,高电平 有效。
5. INTR 中断请求信号:向CPU发出,高电平有效。
端口A工作于方式2所需控制信号如下: ① OBFA——输出缓冲存储器满信号。向外部 输出,低电平有效。OBFA有效,表示要求输 出的数据已锁存到端口A的输出锁存器中,正 等待向外部输出。CPU用OUT指令输出数据 时,由WR信号后沿将OBFA置成有效。系统 规定端口C的第7位(PC7)用作由端口A输出的 OBFA信号。

微机接口第九章8255A


图11.4 8255A 置位/复位控制字格式
按位置位/复位控制 标志0=有效
关于控制字要说明几点:
(1) 设置方式控制字时,A口、B口作为 整体设置,而C口要分成上、下两部分分别 设置。三个端口的工作方式由一个控制字规 定。
(2) C口按位置位/复位控制字不是送到C 口地址,而是送到控制寄存器地址;且一个 控制字只能使C口一位置位或复位。
输入
输出
输出
输出
输入
输入
输出
输入
输入
(2) 工作方式1——选通式输入/输出方式
① 方式1选通输入 方式1操作使端口A或端口B作为锁存输入
设备工作。端口C也可按方式1操作使用——但 不是对数据,而是对控制信号,或当端口A或 端口B为选通输入端口时的握手信号。
下图示出8255A方式1选通输入时的内部 结构图。
;输出打印数据子程序, 打印数据
; 在AH中
PUSH DX
PM: MOV DX , 0FFFCH
IN AL, DX AND AL, 04H
;查询PC2 ;BUSY=0?
JNZ PM
;忙,则等待,D2=1 表示忙
MOV DX, 0FFF8H ;不忙,则输出数据
MOV AL, AH OUT DX, AL
图11.12 方式0的打印机接口
本例中,CPU与8255A采用查询方式输 出数据。端口A设置为方式0,输出打印数据, 端口C的PC7产生负脉冲选通信号,PC2连接 打印机的BUSY信号查询其状态,PC0连接打 印机的ACK信号。
假设8255A的A、B、C口的I/O地址为 FFF8H、FFFAH和FFFCH,控制端口地址为 FFFEH。
8255A 是 Intel86 系 列 微 处 理 机 的 配 套 并 行 接 口 芯 片 , 它 可 为 86 系 列 CPU与外部设备之间提供并行输入/输 出通道。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档