《微型计算机基本原理与应用》课件第10章 并行通信及其接口电路.ppt

上传人(卖家):momomo 文档编号:5715984 上传时间:2023-05-05 格式:PPT 页数:65 大小:1.11MB
下载 相关 举报
《微型计算机基本原理与应用》课件第10章 并行通信及其接口电路.ppt_第1页
第1页 / 共65页
《微型计算机基本原理与应用》课件第10章 并行通信及其接口电路.ppt_第2页
第2页 / 共65页
《微型计算机基本原理与应用》课件第10章 并行通信及其接口电路.ppt_第3页
第3页 / 共65页
《微型计算机基本原理与应用》课件第10章 并行通信及其接口电路.ppt_第4页
第4页 / 共65页
《微型计算机基本原理与应用》课件第10章 并行通信及其接口电路.ppt_第5页
第5页 / 共65页
点击查看更多>>
资源描述

1、 第第1010章章 并行通信及其接口电路并行通信及其接口电路本章主要内容本章主要内容1.简单并行接口电路简单并行接口电路2.可编程并行接口电路可编程并行接口电路8255A的结构及工作的结构及工作原理原理3.8255A的应用的应用 概述概述n在计算机和数据通信系统中,有两种基本的数据传送在计算机和数据通信系统中,有两种基本的数据传送方式,即串行数据传送方式和并行数据传送方式,也方式,即串行数据传送方式和并行数据传送方式,也称称串行通信和并行通信。串行通信和并行通信。n数据在单条一位宽的传输线上按时间先后一位一位地数据在单条一位宽的传输线上按时间先后一位一位地进行传送,称为串行传送;进行传送,称为

2、串行传送;n数据在多位宽的传输线上各位同时进行传送,称为并数据在多位宽的传输线上各位同时进行传送,称为并行传送。行传送。n和串行传送相比,在同样的时钟速率下,并行传送的和串行传送相比,在同样的时钟速率下,并行传送的数据传输率较高。数据传输率较高。n并行通信往往适用于信息传输率要求较高,而传输距离较并行通信往往适用于信息传输率要求较高,而传输距离较短的场合。短的场合。n在本章,我们重点介绍并行通信及其所要求的并行接口电在本章,我们重点介绍并行通信及其所要求的并行接口电路,研究它们的组成、功能及典型的并行接口芯片的工作路,研究它们的组成、功能及典型的并行接口芯片的工作原理及使用方法。原理及使用方法

3、。n首先介绍几种简单的首先介绍几种简单的(不可编程不可编程)并行输入输出接口电路,并行输入输出接口电路,然后着重介绍然后着重介绍可编程可编程并行接口电路并行接口电路8255A及其典型应用。及其典型应用。10.1 可编程并行接口的组成及工作过程可编程并行接口的组成及工作过程10.1.1 可编程并行接口的组成及其与可编程并行接口的组成及其与CPU和外设和外设的连接的连接n通常,一个可编程并行接口电路应包括下列组成部分:通常,一个可编程并行接口电路应包括下列组成部分:(1)两个或两个以上具有缓冲能力的数据寄存器。两个或两个以上具有缓冲能力的数据寄存器。(2)可供可供CPU访问的控制及状态寄存器。访问

4、的控制及状态寄存器。(3)片选和内部控制逻辑电路。片选和内部控制逻辑电路。(4)与外设进行数据交换的控制与联络信号线。与外设进行数据交换的控制与联络信号线。(5)与与CPU用中断方式传送数据的相关中断控制电路。用中断方式传送数据的相关中断控制电路。n典型的可编程并行接口及其与典型的可编程并行接口及其与CPU和外设的连接示意和外设的连接示意图如图图如图10.1所示。所示。图图10.1 可编程并行接口电路及其与可编程并行接口电路及其与CPU和外设的连接和外设的连接CPU输输出出设设备备输输入入设设备备并行接口电路并行接口电路数据总线数据总线读控信号读控信号写控信号写控信号复位信号复位信号中断响应信

5、号中断响应信号中断请求信号中断请求信号地址地址译码器译码器片选片选输出缓冲寄存器输出缓冲寄存器输入缓冲寄存器输入缓冲寄存器控制寄存器控制寄存器状态寄存器状态寄存器中断逻辑中断逻辑并行输出数据并行输出数据并行输入数据并行输入数据输出准备好输出准备好输出回答输出回答输入准备好输入准备好输入回答输入回答n10.1.2 可编程并行接口的数据输入输出过程可编程并行接口的数据输入输出过程 将以8255A为例进行讨论。10.2 可编程并行通信接口可编程并行通信接口8255A10.2.1 8255A的性能概要的性能概要nIntel 8255A是一个为是一个为Intel 8080和和8085微机系统设计的微机系

6、统设计的通用可编程并行接口芯片,也可应用于其他微机系统通用可编程并行接口芯片,也可应用于其他微机系统之中。之中。n8255A采用采用40脚双列直插封装,单一脚双列直插封装,单一+5V电源,全部输电源,全部输入输出与入输出与TTL电平兼容。电平兼容。n用用8255A连接外部设备时,通常不需要再附加其他电连接外部设备时,通常不需要再附加其他电路,给使用带来很大方便。路,给使用带来很大方便。n8255A 有三个输入输出端口:有三个输入输出端口:端口端口A、端口、端口B、端口、端口C。n每个端口都可通过编程设定为输入端口或输出端口,每个端口都可通过编程设定为输入端口或输出端口,但有各自不同的方式和特点

7、。但有各自不同的方式和特点。n端口端口C可作为一个独立的端口使用,但通常是配合端可作为一个独立的端口使用,但通常是配合端口口A和端口和端口B的工作,为这两个端口的输入输出提供控的工作,为这两个端口的输入输出提供控制联络信号。制联络信号。10.2.2 8255A芯片引脚分配及引脚信号说明芯片引脚分配及引脚信号说明n8255A芯片引脚分配如图芯片引脚分配如图10.2所示。所示。n8255A芯片的芯片的40条引脚,大致可分为三类:条引脚,大致可分为三类:(1)电源与地线共电源与地线共2条:条:Vcc、GND。(2)与外设相连的共与外设相连的共24条:条:nPA7PA0:端口端口A数据信号。数据信号。

8、nPB7PB0:端口端口B数据信号。数据信号。nPC7PC0:端口端口C数据信号。数据信号。图图10.2 8255A芯片引脚分配芯片引脚分配14023933843753663573483398255A 3210311130122913281427152616251724182319222021PA3PA2PA1PA0RDCSGNDA1A0PC7PC6PC5PC4PC3PC2PC1PC0PB0PB1PB2PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VCCPB7PB6PB5PB4PB314023933843753663573483398255A 3210311130122

9、913281427152616251724182319222021PA3PA2PA1PA0RDCSGNDA1A0PC7PC6PC5PC4PC3PC2PC1PC0PB0PB1PB2PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VCCPB7PB6PB5PB4PB3(3)与与CPU相连的共相连的共14条:条:nRESET:复位信号,高电平有效。当复位信号,高电平有效。当RESET信号有效信号有效时,所有内部寄存器都被清除。同时,时,所有内部寄存器都被清除。同时,3个数据端口个数据端口被自动设置为输入端口。被自动设置为输入端口。nD7D0:双向数据线,在双向数据线,在8080、

10、8085系统中,系统中,8255A的的D7D0与系统的与系统的8位数据总线相连;位数据总线相连;n在在8086系统中,采用系统中,采用16位数据总线,位数据总线,8255A的的D7D0通常是接在通常是接在16位数据总线的低位数据总线的低8位上。位上。nCS:片选信号,低电平有效。该信号来自译码器的输片选信号,低电平有效。该信号来自译码器的输出,只有当出,只有当CS有效时,读信号有效时,读信号RD和写信号和写信号WR才对才对8255A有效。有效。nRD:读信号,低电平有效。它控制从读信号,低电平有效。它控制从8255A读出数据读出数据或状态信息。或状态信息。nWR:写信号,低电平有效。它控制把数

11、据或控制命写信号,低电平有效。它控制把数据或控制命令字写入令字写入8255A。nA1、A0:端口选择信号。端口选择信号。8255A内部共有内部共有4个端口个端口(即即寄存器寄存器):3个数据端口个数据端口(端口端口A、端口、端口B、端口、端口C)和和1个个控制端口控制端口,当片选信号当片选信号CS有效时,规定有效时,规定A1、A0为为00、01、10、11时,分别选中时,分别选中端口端口A、端口、端口B、端口、端口C和控和控制端口。制端口。nCS、RD、WR、A1、A0 这五个信号的组合决定了对这五个信号的组合决定了对三个数据端口和一个控制端口的读写操作,如表三个数据端口和一个控制端口的读写操

12、作,如表10-1所示。所示。表表10-1 8255A端口选择和基本操作端口选择和基本操作A1A0输入操作(输入操作(读读)00010端口端口A数据总线数据总线01010端口端口B数据总线数据总线10010端口端口C数据总线数据总线输出操作(输出操作(写写)00100数据总线数据总线端口端口A01100数据总线数据总线端口端口B10100数据总线数据总线端口端口C11100数据总线数据总线控制字寄存器控制字寄存器无操作情况无操作情况XXXX1数据总线为三态(高阻)数据总线为三态(高阻)11010非法操作非法操作XX110数据总线为三态(高阻)数据总线为三态(高阻)RDWRcs10.2.3 825

13、5A内部结构方块图内部结构方块图n8255A内部结构方块图如图内部结构方块图如图10.3所示。所示。图图10.3 8255A内部结构方块图内部结构方块图RESETA组组端口端口A(8位)位)A组组端口端口C(高(高4位)位)B组组端口端口C(低(低4位)位)B组组端口端口B(8位)位)I/O PA7PA0I/O PC7PC4I/O PC3PC0I/O PB7PB0A组控制组控制B组控制组控制数据总线数据总线缓冲器缓冲器读写读写控制控制逻辑逻辑_RD_WRA1A0_CS电源电源+5VGND8位内部数据总线位内部数据总线D7D0双向数据总线双向数据总线n由图由图10.3可以看出,可以看出,8255

14、A由以下几部分组成:由以下几部分组成:(1)数据总线缓冲器数据总线缓冲器n这是一个双向三态这是一个双向三态8位数据缓冲器,它是位数据缓冲器,它是8255A与与CPU数据总线的接口。数据总线的接口。n输入数据、输出数据以及输入数据、输出数据以及CPU发给发给8255A的控制字和的控制字和从从8255A读出的状态信息都是通过该缓冲器传送的。读出的状态信息都是通过该缓冲器传送的。(2)端口端口A、端口、端口B、端口、端口Cn8255A有三个有三个8位端口位端口(端口端口A、端口、端口B、端口、端口C),各端,各端口可由程序设定为输入端口或输出端口。口可由程序设定为输入端口或输出端口。n在使用中,端口

15、在使用中,端口A和端口和端口B常常作为独立的输入端口或常常作为独立的输入端口或输出端口。输出端口。n端口端口C也可以作为输入端口或输出端口,但往往是用也可以作为输入端口或输出端口,但往往是用来配合端口来配合端口A和端口和端口B的工作。的工作。n在方式字的控制下,端口在方式字的控制下,端口C可以分成两个可以分成两个4位的端口,位的端口,分别用来为端口分别用来为端口A和端口和端口B提供控制和状态信息。提供控制和状态信息。(3)A组控制和组控制和B组控制组控制nA组控制组控制控制端口控制端口A及端口及端口C的高的高4位。位。nB组控制组控制控制端口控制端口B及端口及端口C的低的低4位。位。(4)读写

16、控制逻辑读写控制逻辑n读写控制逻辑负责管理读写控制逻辑负责管理8255A的数据传输过程。的数据传输过程。10.2.4 8255A的控制字的控制字1.方式选择控制字方式选择控制字n方式选择控制字的格式如图方式选择控制字的格式如图10.4所示。所示。图图10.4 8255A方式选择控制字方式选择控制字1D6D5D4D3D2D1D0方式选择控方式选择控制字标识位制字标识位A组方式选择组方式选择00 方式方式001 方式方式11x 方式方式2端口端口A1 输入输入0 输出输出 PC3PC0:1 输入输入 (方式(方式0时)时)0 输出输出端口端口B:1 输入输入 0 输出输出B组方式选择:组方式选择:

17、0 方式方式0 1 方式方式1 PC7PC4:1 输入输入(方式(方式0时)时)0 输出输出 n假定要求假定要求8255A的各个端口工作于如下方式:的各个端口工作于如下方式:n端口端口A方式方式0,输出;,输出;n端口端口B方式方式0,输入;,输入;n端口端口C的高的高4位位方式方式0,输出;,输出;n端口端口C的低的低4位位方式方式0,输入。,输入。n相应的方式选择控制字应为相应的方式选择控制字应为10000011B(83H)。n在实验系统中在实验系统中8255A控制口的地址为控制口的地址为28BH,则执行如,则执行如下三条指令即可实现上述工作方式的设定。下三条指令即可实现上述工作方式的设定

18、。nMOV DX,28BH nMOV AL,83HnOUT DX,AL;将方式选择控制字写入控制口将方式选择控制字写入控制口2.端口端口C按位置按位置1置置0控制字控制字n可以用专门的控制字实现对端口可以用专门的控制字实现对端口C按位置按位置1置置0操作,操作,用以产生所需的控制功能,这种控制字就是用以产生所需的控制功能,这种控制字就是“端口端口C按位置按位置1置置0控制字控制字”。n该控制字的具体格式如图该控制字的具体格式如图10.5所示。所示。n 图图10.5 端口端口C按位置按位置1/置置0控制字控制字0D6D5D4D3D2D1D0 xxx无关无关 1:置置1 0:置置000001111

19、端口端口C按位置按位置1/置置0控制字标识位控制字标识位位选择位选择PC0PC1PC2PC3PC4PC5PC6PC70011001101010101n需要指出的是,端口需要指出的是,端口C按位置按位置1置置0控制字是对端口控制字是对端口C的操作控制信息,因此的操作控制信息,因此该控制字必须写入控制口,而该控制字必须写入控制口,而不应写入端口不应写入端口C。n控制字的控制字的D0位决定是置位决定是置“1”操作还是置操作还是置“0”操作,但操作,但究竟是对端口究竟是对端口C的哪一位进行操作,则决定于控制字的哪一位进行操作,则决定于控制字中的中的D3、D2、D1位。位。n例如,要实现对端口例如,要实

20、现对端口C的的PC6位置位置“0”,则控制字应为,则控制字应为00001100B(0CH)。n设设8255A的控制口地址同上,则执行下列指令即可实的控制口地址同上,则执行下列指令即可实现指定的功能:现指定的功能:nMOV DX,28BHnMOV AL,0CH;nOUT DX,AL ;将“端口C按位置1置0控制字”写入控制口,实现对PC6位置“0”10.2.5 8255A的工作方式的工作方式1.方式方式0n方式方式0也叫也叫基本输入输出方式基本输入输出方式。n在这种方式下,端口在这种方式下,端口A和端口和端口B可以通过可以通过方式选择控制方式选择控制字字规定为输入口或者输出口;规定为输入口或者输

21、出口;n端口端口C分为高分为高4位位(PC7PC4)和低和低4位位(PC3PC0)两个两个4位端口,这两个位端口,这两个4位端口也可由方式选择控制字分别位端口也可由方式选择控制字分别规定为输入口或输出口。规定为输入口或输出口。n这四个并行口共可构成这四个并行口共可构成24=16种不同的使用组态。种不同的使用组态。n利用利用8255A的方式的方式0进行数据传输时,由于没有规定专进行数据传输时,由于没有规定专门的应答信号,所以这种方式常用于与简单外设之间门的应答信号,所以这种方式常用于与简单外设之间的数据传送,如向的数据传送,如向LED显示器的输出,从二进制开关显示器的输出,从二进制开关装置的输入

22、等。装置的输入等。2.方式方式1n方式方式1也叫也叫选通的输入输出方式选通的输入输出方式。n和方式和方式0相比,最主要的差别就是当端口相比,最主要的差别就是当端口A和端口和端口B工工作于方式作于方式1时,要利用端口时,要利用端口C来接收选通信号或提供有来接收选通信号或提供有关的状态信号,而这些信号是由端口关的状态信号,而这些信号是由端口C的固定数位来的固定数位来接收或提供的,即信号与数位之间存在着对应关系。接收或提供的,即信号与数位之间存在着对应关系。n这种关系不可以用程序的方法予以改变。这种关系不可以用程序的方法予以改变。(1)方式方式1输入输入n当端口当端口A和端口和端口B工作于工作于“方

23、式方式1输入输入”时,端口时,端口C控制控制信号定义如图信号定义如图10.11所示。所示。n该图中还给出了相应的方式选择控制字。该图中还给出了相应的方式选择控制字。图图10.6 8255A方式方式1输入输入 1 0 1 1 1/0 A组方式组方式1D7 D6 D5 D4 D3 D2 D1 D0PC6,71 输入输入0 输出输出端口端口A输入输入INTEBPC2PC1_STBBIBFBPB7PB0_RDPC0D7D0INTRB方式方式1输入(端口输入(端口B)INTEAPC4PC5PC6,72I/O_STBAIBFAPA7PA0_RDPC3D7D0INTRA方式方式1输入(端口输入(端口A)1

24、1 1 D7 D6 D5 D4 D3 D2 D1 D0B组方式组方式1端口端口B输入输入n对于图对于图10.6中所示的控制信号说明如下:中所示的控制信号说明如下:nSTB(Strobe):选通信号选通信号,低电平有效。它是由外设送,低电平有效。它是由外设送给给8255A的输入信号,当其有效时,的输入信号,当其有效时,8255A接收外设送接收外设送来的一个来的一个8位数据。位数据。nIBF(Input Buffer Full):“输入缓冲器满输入缓冲器满”信号,高电信号,高电平有效,它是一个平有效,它是一个8255A送给外设的联络信号。送给外设的联络信号。n当当IBF为高电平时,表示外设的为高电

25、平时,表示外设的数据已送进输入缓冲器数据已送进输入缓冲器中中,但,但尚未被尚未被CPU取走,通知外设不能送新数据取走,通知外设不能送新数据;n只有当只有当IBF变为低电平时,即变为低电平时,即CPU已读取数据,输入已读取数据,输入缓冲器变空时,才允许外设送新数据。缓冲器变空时,才允许外设送新数据。nIBF信号是由信号是由STB使其置位使其置位(变为高电平变为高电平),而由读信号,而由读信号RD的上升沿使其复位的上升沿使其复位(变为低电平变为低电平)。nINTR(Interrupt Request):中断请求信号,高电平有中断请求信号,高电平有效。效。n它是当它是当STB为为1、IBF为为1且且

26、INTE也为也为1(中断允许中断允许)时被时被置为高电平。置为高电平。n当选通信号结束当选通信号结束(STB=1),已将一个数据送进输入缓冲,已将一个数据送进输入缓冲器器(IBF=1),并且端口处于中断允许状态,并且端口处于中断允许状态(INTE=1)时,时,8255A的的INTR端被置为高电平,向端被置为高电平,向CPU发出中断请求发出中断请求信号。信号。n当当CPU响应中断读取输入缓冲器中的数据时,由读信响应中断读取输入缓冲器中的数据时,由读信号号RD的下降沿将的下降沿将INTR置为低电平。置为低电平。nINTEA(Interrupt Enable):端口端口A中断允许信号。中断允许信号。

27、INTEA没有外部引出端,它实际上就是端口没有外部引出端,它实际上就是端口A内部的中断允许触内部的中断允许触发器的状态信号。发器的状态信号。nINTEA由由PC4的置位复位来控制的置位复位来控制,PC4=1时,使端口时,使端口A处于中断允许状态。处于中断允许状态。nINTEA controlled by bit set/reset of PC4nINTEB:端口端口B中断允许信号。与中断允许信号。与INTEA类似,类似,INTEB也没有外部引出端,它是端口也没有外部引出端,它是端口B内部的中断允许触发器内部的中断允许触发器的状态信号。的状态信号。n由由PC2的置位复位来控制,的置位复位来控制,

28、PC2=1时,使端口时,使端口B处于处于中断允许状态。中断允许状态。n另外,在方式另外,在方式1输入时,输入时,PC6和和PC7两位还闲着未用。两位还闲着未用。如果要利用它们,可用方式选择控制字中的如果要利用它们,可用方式选择控制字中的D3位来设位来设定。定。n方式方式1输入工作时序图如图输入工作时序图如图10.7所示。所示。图图10.7 方式方式1输入工作时序图输入工作时序图来自外设的来自外设的输入数据输入数据_STBIBFINTR_RDtRIBtSTtSIBTSITtRITtPStPH表表10-2 方式方式1输入工作时序图参数说明输入工作时序图参数说明TminTmaxtST选通脉冲的宽度5

29、00nstSIB选通脉冲有效到IBF有效的时间300nstSIT_STB1到中断请求INTR有效的时间300nstPH数据保持时间180nstPS _数据有效到STB无效的时间0tRIT 有效到中断请求信号撤除的时间400nstRIB 为1到IBF为0的时间300ns参数说明8255ARDRD(2)方式方式1输出输出 当端口当端口A和端口和端口B工作于方式工作于方式1输出时,方式选择控输出时,方式选择控制字及相应的端口制字及相应的端口C控制信号定义如图控制信号定义如图10.8所示。所示。图图10.8 8255A方式方式1输出输出 1 0 1 0 1/0 A组方式组方式1D7 D6 D5 D4

30、D3 D2 D1 D0PC4,51 输入输入0 输出输出端口端口A输出输出 1 1 0 D7 D6 D5 D4 D3 D2 D1 D0B组方式组方式1端口端口B输出输出INTEAPC7PC6PC4,52I/O_OBFAACKAPA7PA0_WRPC3D7D0INTRA方式方式1输出(端口输出(端口A)INTEBPC1PC2_OBFBACKBPB7PB0_WRPC0D7D0INTRB方式方式1输出(端口输出(端口B)对图对图10.8中所示的控制信号说明如下:中所示的控制信号说明如下:OBF(Output Buffer Full):“输出缓冲器满输出缓冲器满”信号,低信号,低电平有效,它是电平有效

31、,它是8255A输出给外设的一个控制信号。输出给外设的一个控制信号。当其有效时,表示当其有效时,表示CPU已经把数据输出给指定端口,已经把数据输出给指定端口,通知外设把数据取走。通知外设把数据取走。它是由写信号它是由写信号WR的上升沿置成有效的上升沿置成有效(低电平低电平),而由,而由ACK信号的有效电平使其恢复为高电平。信号的有效电平使其恢复为高电平。ACK(Acknowledge):外设响应信号,低电平有效。当其有外设响应信号,低电平有效。当其有效时,表明效时,表明CPU通过通过8255A输出的数据已经由外设接收。输出的数据已经由外设接收。它是对它是对OBF的回答信号。的回答信号。INTR

32、(Interrupt Request):中断请求信号,高电平有效。它中断请求信号,高电平有效。它是是8255A的一个输出信号,用于向的一个输出信号,用于向CPU发出中断请求。发出中断请求。INTR是当是当ACK、OBF和和INTE都为都为“1”时才被置成高电时才被置成高电平平(向向CPU发出中断请求信号发出中断请求信号);写信号;写信号WR的上升沿使其的上升沿使其变为低电平变为低电平(清除中断请求信号清除中断请求信号)。INTEA:端口端口A中断允许信号,由中断允许信号,由PC6的置位的置位/复位来控制,复位来控制,PC6=1时,端口时,端口A处于中断允许状态。处于中断允许状态。INTEB:端

33、口端口B中断允许信号,由中断允许信号,由PC2的置位的置位/复位来控制,复位来控制,PC2=1时,端口时,端口B处于中断允许状态。处于中断允许状态。另外,在方式另外,在方式1输出时,输出时,PC4、PC5两位还闲着未用,如果要两位还闲着未用,如果要利用它们可用方式选择控制字的利用它们可用方式选择控制字的D3位来设定。位来设定。图图10.9 方式方式1输出工作时序图输出工作时序图INTR_WR_OBF_ACK输出输出tAKtAITtWITtWOBtAOBtWB表表10-3 方式方式1输出工作时序图参数说明输出工作时序图参数说明TminTmaxtWIT从写信号有效到中断请求无效的时间850nstW

34、OB从写信号无效到输出缓冲器满的时间650nstAOB_ _ACK有效到OBF无效的时间350nstAK_ACK脉冲的宽度300nstAIT_ACK为1到发新的中断请求的时间350nstWB写信号撤销到数据有效的时间350ns参数说明8255A10.2.6 8255A的状态字的状态字 8255A工作于方式工作于方式1和方式和方式2时的状态字是通过读端口时的状态字是通过读端口C的内容来获得的。的内容来获得的。1.方式方式1状态字格式状态字格式 方式方式1状态字格式如图状态字格式如图10.11所示。所示。图图10.11 方式方式1状态字格式状态字格式D7 D6 D5 D4 D3 D2 D1 D0A

35、组组B组组(b)方式)方式1输出状态字格式输出状态字格式 _ _ OBFA INTEA I/O I/O INTRA INTEB OBFB INTRB D7 D6 D5 D4 D3 D2 D1 D0A组组B组组(a)方式)方式1输入状态字格式输入状态字格式 I/O I/O IBFA INTEA INTRA INTEB IBFB INTRB 2.方式方式2状态字格式状态字格式 方式方式2的状态字也是从端口的状态字也是从端口C读取。读取。方式方式2状态字的格式如图状态字的格式如图10.12所示。所示。图图10.12 方式方式2状态字格式状态字格式D7 D6 D5 D4 D3 D2 D1 D0A组状态

36、组状态B组状态组状态 OBFA INTE1 IBFA INTE2 INTRA_I/O I/O I/O 方式方式1方式方式0INTEB OBFB INTRB INTEB IBFB INTRB 输出时输出时输入时输入时_10.2.7 8255A应用举例应用举例n例例10.1 8255A工作于方式工作于方式0,利用,利用8255A将外设开关的将外设开关的二进制状态从端口二进制状态从端口A输入,经程序转换为对应的输入,经程序转换为对应的LED段选码段选码(字形码字形码)后,再从端口后,再从端口B输出到输出到LED显示器。显示器。n具体连线图如图具体连线图如图10.13(a)所示。所示。nLED显示器如

37、图显示器如图 10.13(b)所示。所示。图图10.13 8255 A的应用的应用地地址址译译码码地址地址CPU(8088)RDWRA0A1_D7D08255ARDWRA0A1_PA0PA1PA2PA3PB0PB1PB2PB3PB4PB5PB6PB7+5V2K4K0K1K2K3abcdefgh+5V12074LS04LED(a)连线图连线图地地址址译译码码地址地址CPU(8088)RDWRA0A1_D7D08255ARDWRA0A1_PA0PA1PA2PA3PB0PB1PB2PB3PB4PB5PB6PB7+5V2K4K0K1K2K3abcdefgh+5V120欧姆欧姆74LS04LED(a)连

38、线图连线图abcdefg(b)LED显示器显示器h设设8255A的端口地址为:的端口地址为:端口端口AD0H,端口,端口BD1H,端口,端口CD2H,控制口控制口D3H。则本例的初始化及输入、输出控制程序如下所示。则本例的初始化及输入、输出控制程序如下所示。nDATA SEGMENTn SSEGCODE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07Hn DB 7FH,67H,77H,7CH,39H,5EH,79H,71HnDATA ENDSnCODE SEGMENTn ASSUME CS:CODE,DS:DATAnSTART:MOV AX,DATAn MOV DS,AXn

39、 MOV AL,90H ;设置方式选择控制字,;设置方式选择控制字,A口工作于方口工作于方n 式式0输入,输入,B 口工作于方式口工作于方式0输出输出n OUT 0D3H,AL n RDPORTA:n IN AL,0D0H ;读;读A口口n AND AL,0FH ;取;取A口低口低4位位n MOV BX,OFFSET SSEGCODE;取;取LED段选码表首地址段选码表首地址n XLAT ;查表,;查表,AL(BX+AL)n OUT 0D1H,AL ;从从B口输出口输出LED段选码,显示相应字形符号段选码,显示相应字形符号 n MOV AX,XXXXH ;延时延时n DELAY:DEC AX

40、n JNZ DELAY ;n MOV AH,1 ;判断是否有键按下判断是否有键按下n INT 16H n JZ RDPORTA ;若无,则继续读端口若无,则继续读端口An MOV AH,4CH ;否则返回否则返回DOSn INT 21HnCODE ENDSn END START n例例10.2 8255A工作于方式工作于方式0,用,用8255A作为以查询方式作为以查询方式工作的打印机接口,如下图所示。工作的打印机接口,如下图所示。8255A作为打印机接口作为打印机接口CPU系统总线系统总线8255APA7PA0打印机打印机PC6PC2_ STB BUSYn工作原理为工作原理为:当主机开始打印输

41、出时,先测试打印机忙当主机开始打印输出时,先测试打印机忙(BUSY)信号,信号,n如果打印机处于忙状态,则如果打印机处于忙状态,则BUSY信号为信号为1;n反之,则反之,则BUSY信号为信号为0。n当检测到当检测到BUSY信号为信号为0时,则主机可通过时,则主机可通过8255A向打印向打印机输出一个字符。机输出一个字符。n此时,还需输出一个选通信号此时,还需输出一个选通信号(负脉冲负脉冲)给打印机的给打印机的STB端,用此负脉冲作为字符送到打印机输入缓冲器的打入端,用此负脉冲作为字符送到打印机输入缓冲器的打入脉冲。脉冲。n用用8255A的的端口端口A作为打印输出数据口,作为打印输出数据口,工作

42、于方式工作于方式0;端口端口B不用;不用;端口端口C也工作于方式也工作于方式0,端口,端口C的的PC2作为作为BUSY信号输入端,所以信号输入端,所以PC3PC0应设定为输入方式;应设定为输入方式;nPC6作为选通信号输出端,所以作为选通信号输出端,所以PC7PC4应设定为输应设定为输出方式。出方式。n设打印字符存放在内存设打印字符存放在内存2000H单元单元。n8255A的端口地址为:的端口地址为:n端口端口AD0H,端口,端口BD1H,端口,端口CD2H,控制,控制口口D3Hn则初始化及打印控制子程序如下所示:则初始化及打印控制子程序如下所示:nBEGIN:n MOV AL,81H ;方式

43、选择控制字,使方式选择控制字,使A、B、C三个端口工作于方式三个端口工作于方式0,nOUT 0D3H,AL ;端口端口A为输出,为输出,PC7PC4为输出,为输出,PC3PC0为输入为输入nMOV AL,0DH ;用用“端口端口C按位置按位置1/置置0控制字控制字”置置PC6=1,使,使STB为高电为高电平平nOUT 0D3H,AL nTESBY:nIN AL,0D2H ;读端口读端口CnTEST AL,04H ;测试测试PC2(BUSY)nJNZ TESBY ;如如PC2=1(BUSY信号有效信号有效)打印机处于忙状态,继续查询打印机处于忙状态,继续查询nMOV AL,DS:2000H;PC

44、2=0(BUSY信号无效信号无效),取打印字符,取打印字符nOUT 0D0H,AL ;由端口由端口A输出打印字符输出打印字符nMOV AL,0CH ;用用“端口端口C按位置按位置1/置置0控制字控制字”置置PC6=0,使,使STB为低电为低电平平nOUT 0D3H,AL nINC AL nOUT 0D3H,AL ;置置PC6=1,再使,再使STB为高电平,从而产生一个负选通脉冲信号为高电平,从而产生一个负选通脉冲信号nRET 第第10章章 作业作业P315-316n12题题 n13题题n14题题P316习题习题13解:程序流程框图:初始化及有关控制程序设置8255方式选择控制字:A口方式O输出,B口方式O输出,C口方式O输入。向A口输出01H,使主道绿灯亮;向B口输出04H,使副道红灯亮 延迟延迟40秒秒 PC0=1?Yes 向A口输出02H,使主道黄灯亮 延迟延迟5秒秒 向A口输出04H,使主道红灯亮;向B口输出01H,使副道绿灯亮 延迟延迟20秒秒 向B口输出02H,使副道黄灯亮 延迟延迟5秒秒图10.16 交通灯控制8255APC0 PA2 PA1 PA0 PB2 PB1 PB0 接系统总线接系统总线 K R Y G R Y G(开关)(开关)主道灯主道灯副道灯副道灯

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《微型计算机基本原理与应用》课件第10章 并行通信及其接口电路.ppt)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|