首页 理论教育 微型计算机原理8255A的工作方式

微型计算机原理8255A的工作方式

时间:2023-11-03 理论教育 版权反馈
【摘要】:方式0操作可以使8255A成为一个具有缓冲的输入设备,或者具有锁存功能的输出设备。方式1方式1即单向异步传输方式,又被称作选通型输入/输出方式,8255A的端口A和端口B都可以工作在方式1。当8255A的端口A或端口B工作于方式1的时候,C口的某些端线被自动借用为端口与外设之间的联络线。图8-6 8255A方式2端口信号定义

微型计算机原理8255A的工作方式

8255A为其端口定义了三种不同的工作方式:称为方式0的同步输入/输出传送;称为方式1的异步输入或输出传送;称为方式2的异步双向传送。

(1)方式0

方式0即同步数据传送方式,或称基本型输入/输出方式,8255A的三个端口都能工作于方式0。方式0操作可以使8255A成为一个具有缓冲的输入设备,或者具有锁存功能的输出设备。方式0为8255A提供了最基本的数据传输能力,没有用于异步控制的握手信号,所有输入/输出操作都以同步的方式完成,只要微处理器对端口进行读或者写就可以完成数据的输入和输出。在方式0下,8255A的端口A、端口B、端口C的上下两半部分都可以定义为同步输入或输出独立工作。

方式0的特点是在外设和端口之间没有联络线,端口没有中断功能,也不提供外设的状态信息,所以微处理器和外设之间唯一可行的数据传输方法是无条件传送方式,即假设外设永远处于“准备好”的状态,根据程序运行的需求随时进行数据的输入/输出。这也就对外设提出了相应的要求,对于输入设备,必须随时将输入数据准备好放在输入线上,以供处理器随时通过I/O读命令读取数据;对于输出数据,处理器通过I/O写命令写入的数据则在一个有限的延时时间之后就会出现在端口输出线上。

(2)方式1

方式1即单向异步传输方式,又被称作选通型输入/输出方式,8255A的端口A和端口B都可以工作在方式1。当8255A的端口A或端口B工作于方式1的时候,C口的某些端线被自动借用为端口与外设之间的联络线。

在输入方式下,除了输入数据线之外,外设还需要三个额外的信号:输入选通信号STB,输入缓冲区满信号IBF和中断请求信号978-7-111-46342-9-Chapter08-21.jpg。这三个信号里,输入选通信号978-7-111-46342-9-Chapter08-22.jpg由设备提供给接口,用来表示输入数据已经在PA0~7或PB0~7上准备好,接口可以将数据读入并暂存。IBF信号由接口提供,用来表示输入数据已经暂存。CPU可以通过端口读取该数据,同时,这个信号还被作为提供给设备的978-7-111-46342-9-Chapter08-23.jpg信号,通知设备输入数据已经锁存,设备可以撤销输入数据。INTR信号由IBF信号产生,用来向CPU提出中断请求。这三个信号需要占用三条引线进行传递,8255A的A口在方式1下占用PC4、PC5和PC3(即C口的第4/5/3位)引脚作为978-7-111-46342-9-Chapter08-24.jpg、IBF和978-7-111-46342-9-Chapter08-25.jpg信号使用,B口在方式1下占用PC2、PC1和PC0(即C口的第2/1/0位)引脚作为STB、IBF和INTR信号使用。

在方式1下,不仅仅C口的引脚被占用,而且C口相应的位也被占用,例如,通过I/O命令读取C口第5位和第1位(即PC5和PC1,对应于A口和B口的IBF信号)的值,CPU可以判断A口和B口当前是否已经有数据可读,从而实现轮询方式的数据输入。978-7-111-46342-9-Chapter08-26.jpg信号不被CPU所使用,所以C口第4位和第2位(即PC4和PC2)被用作了中断屏蔽位。例如,如果CPU通过命令的方式将PC4设为1,则允许A口通过PC3信号线产生中断请求,反之,如果将PC4设为0,则A口不再通过PC3信号线产生中断请求(见图8-4)。

类似地,在输出方式下,除了输出数据线之外,也需要另外三条信号线:输出缓冲器满信号OBF,输出确认信号ACK和中断请求信号INTR。其中,低电平有效的OBF信号代表接口的输出缓冲区已经被微处理器的输出命令充满,并且输出数据已经被传送到了输出数据线(PA0~7或PB0~7)上。978-7-111-46342-9-Chapter08-27.jpg信号有三个作用,①作为选通信号传送给设备,通知设备输出数据已经准备好,要求设备进行输出动作;②由CPU从C口第7位(A口)或第1位(B口)读出,判断当前输出缓冲区是否满,能否继续输出下一组数据;③当978-7-111-46342-9-Chapter08-28.jpg信号为高电平,即输出缓冲区空时,产生中断请求信号978-7-111-46342-9-Chapter08-29.jpg978-7-111-46342-9-Chapter08-30.jpg信号由设备给出,用于通知接口上一次输出的数据已经处理完成,可以输出下一组数据了,978-7-111-46342-9-Chapter08-31.jpg信号将导致978-7-111-46342-9-Chapter08-32.jpg信号从有效到无效(即从低到高)的跳变,进而在允许中断的情况下引起978-7-111-46342-9-Chapter08-33.jpg信号的有效,提交一次中断请求。这三个信号也占用C口的引脚和比特位,其占用关系如下,A口的OBF=PC7,ACK=PC6978-7-111-46342-9-Chapter08-34.jpg,中断屏蔽位=PC6;B口的978-7-111-46342-9-Chapter08-35.jpg978-7-111-46342-9-Chapter08-36.jpg978-7-111-46342-9-Chapter08-37.jpg,中断屏蔽位=PC2(见图8-5)。

978-7-111-46342-9-Chapter08-38.jpg(www.xing528.com)

图8-4 8255A方式1输入端口信号定义

978-7-111-46342-9-Chapter08-39.jpg

图8-5 8255A方式1输出端口信号定义

和输入方式类似,由于中断屏蔽位只由CPU访问,而978-7-111-46342-9-Chapter08-40.jpg与处理器无关,这两个位在使用过程中不会产生冲突,所以中断屏蔽位和978-7-111-46342-9-Chapter08-41.jpg使用同一个比特位。

(3)方式2

方式2为异步双向数据传输方式,即同时允许输入和输出双向数据传输,8255A只有端口A可以工作在方式2。当A口工作于方式2的时候,8255A允许通过A口的PA7~0分时地进行并行数据的输入和输出,这时A口需要五个额外的联络信号,这些联络信号同样占用C口的引脚和比特位(PC7~3)。

从信号定义上来看,工作在方式2下的A口所使用的信号和比特位相当于工作在方式1下输入模式的A口所使用的信号和比特位加上工作在方式1下输出模式的A口所使用的信号和比特位,其基本功能和操作方法也相似(见图8-6)。

978-7-111-46342-9-Chapter08-42.jpg

图8-6 8255A方式2端口信号定义

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈