《微型计算机原理与接口技术》第5版:7章--2--可编程接口芯片8255a

上传人:pu****.1 文档编号:592629887 上传时间:2024-09-21 格式:PPT 页数:62 大小:697.50KB
返回 下载 相关 举报
《微型计算机原理与接口技术》第5版:7章--2--可编程接口芯片8255a_第1页
第1页 / 共62页
《微型计算机原理与接口技术》第5版:7章--2--可编程接口芯片8255a_第2页
第2页 / 共62页
《微型计算机原理与接口技术》第5版:7章--2--可编程接口芯片8255a_第3页
第3页 / 共62页
《微型计算机原理与接口技术》第5版:7章--2--可编程接口芯片8255a_第4页
第4页 / 共62页
《微型计算机原理与接口技术》第5版:7章--2--可编程接口芯片8255a_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《《微型计算机原理与接口技术》第5版:7章--2--可编程接口芯片8255a》由会员分享,可在线阅读,更多相关《《微型计算机原理与接口技术》第5版:7章--2--可编程接口芯片8255a(62页珍藏版)》请在金锄头文库上搜索。

1、l 并行接口的典型硬件结构包括:并行接口的典型硬件结构包括:1、一个或一个以上具有锁存或缓冲的数据端口、一个或一个以上具有锁存或缓冲的数据端口2、与、与CPU进行数据交换所必须的控制和状态信号进行数据交换所必须的控制和状态信号3、与外设进行数据交换所必须的控制和状态信号、与外设进行数据交换所必须的控制和状态信号4、端口译码电路、端口译码电路5、控制电路、控制电路并行接口概述并行接口概述l 并行接口连接并行接口连接CPU与并行外设,实现与并行外设,实现 两者间的并行通信,两者间的并行通信, 在信息传送过程中,起到输出锁存或输入缓冲的作用。在信息传送过程中,起到输出锁存或输入缓冲的作用。1并行接口

2、连接外设示意图并行接口连接外设示意图2l不可编程并行接口和可编程并行接口不可编程并行接口和可编程并行接口 不可编程并行接口的工作方式和功能不可编程并行接口的工作方式和功能: : 是由硬件接线决定,不能用软件来控制。是由硬件接线决定,不能用软件来控制。 可编程并行接口的工作方式和功能可编程并行接口的工作方式和功能: 可用软件编程的方法改变,可用软件编程的方法改变, 使接口具有更大的灵活性和通用性。使接口具有更大的灵活性和通用性。3一般情况下不交叉使用一般情况下不交叉使用,因为,因为:只有本系列的芯片才能更好地保证时序上的配合只有本系列的芯片才能更好地保证时序上的配合,和各种功能的发挥,使和各种功

3、能的发挥,使CPU可靠与外设交换信息可靠与外设交换信息。l 在并行接口芯片中,在并行接口芯片中, 不同的产品系列研制出与之相匹配的接口芯片。不同的产品系列研制出与之相匹配的接口芯片。例例 在在80X86系列系列中使用中使用8255A芯片芯片 在在Z80系列系列中使用中使用Z80-PIO芯片芯片 在在6800系列系列中使用中使用MC6820PIA芯片芯片4第二节第二节 可编程并行接口可编程并行接口8255A一、一、8255A的的引脚、编程结构引脚、编程结构二、二、8255A的控制字的控制字三、三、8255A三种工作方式三种工作方式四、四、8255A的应用举例的应用举例5一、一、8255A引脚、编

4、程结构引脚、编程结构Intel系列的系列的8位并行接口芯片位并行接口芯片通用性强,使用灵活通用性强,使用灵活可用程序设置和改变芯片的工作方式可用程序设置和改变芯片的工作方式是一种是一种典型的可编程并行接口芯片典型的可编程并行接口芯片8255APA3PA2PA1PA0RDCSGNDA1A0PC7PC6PC5PC4PC3PC2PC1PC0PB0PB1PB2PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VccPB7PB6PB5PB4PB340个引脚,双列直插式个引脚,双列直插式6resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制

5、片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设8255A总线总线8255A结构框图结构框图71. 数据端口数据端口 A、B、Cr 每个端口每个端口8位,通过编程设定其为输入口或输出口位,通过编程设定其为输入口或输出口r 可用来和外设传送信息可用来和外设传送信息resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5

6、VGNDD7D0外外设设8255A总线总线8r 端口端口A有有 3 种工作方式种工作方式( 方式方式 0、方式、方式 1、方式、方式 2)对外对外 8 根引脚根引脚 PA7 PA0 resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设8255A总线总线9r端口端口B 有有 2 种工作方式:方式种工作方式:方式 0、方式、方式 1对外对外 8 根引脚根引脚 PB7 PB0resetD7D0A9A2

7、A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设8255A总线总线10r 端口端口C对外引脚对外引脚PC0 PC7resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设8255A总线总线11 当端口当端口 A 在方式在方

8、式 1 或方式或方式 2、端口、端口 B 在方式在方式 1 时,时, 端口端口 C 的某些位用于传送联络信号的某些位用于传送联络信号, 以适应以适应CPU与外设间的各种数据传送方式的要求,与外设间的各种数据传送方式的要求, 如查询传送的应答信号、中断传送的中断申请信号等如查询传送的应答信号、中断传送的中断申请信号等; C口未被用作联络信号的其它位可工作在方式口未被用作联络信号的其它位可工作在方式 0。resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端

9、口端口A端口端口C端口端口B +5VGNDD7D0外外设设122. 控制端口控制端口D (A组和组和B组控制电路组控制电路) 8位端口,无对外引脚位端口,无对外引脚 控制端口的内容决定控制端口的内容决定A口、口、B口、口、C口的工作状态口的工作状态(输入或输出输入或输出) 和工作方式(方式和工作方式(方式 0、1、2), 起控制作用。起控制作用。resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设

10、设13 由由1个个8位双向三态缓冲器构成位双向三态缓冲器构成 8255A内各端口内各端口通过数据缓冲器与系统总线相连。通过数据缓冲器与系统总线相连。 CPU与端口与端口A、B、C间传送的数据,间传送的数据, 以及以及CPU写入控制端口写入控制端口D中的控制字均通过数据缓冲器传送。中的控制字均通过数据缓冲器传送。3. 数据总线缓冲器数据总线缓冲器(引脚引脚D0D7)resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VG

11、NDD7D0外外设设144. 读写控制电路读写控制电路 (引脚引脚CS、 RD、 WR) 控制数据总线缓冲器的状态。控制数据总线缓冲器的状态。 数据总线缓冲器有数据总线缓冲器有3种状态:输入、输出、高阻态种状态:输入、输出、高阻态 resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设15resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码

12、译码RESETA1A0PC7PC0PB7PB0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设RDWRCSPA7PA016选择被操作的端口选择被操作的端口5. 片内译码电路片内译码电路 (引脚引脚A1、 A0)resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设17resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内

13、译码译码RESETA1A0PC7PC0PB7PB0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设RDWRCSPA7PA018由由CS、A1、A0、RD、WR引脚的不同组合,引脚的不同组合,实现各种不同的功能。实现各种不同的功能。19 8255A控制口控制口D的内容的内容对数据端口对数据端口A、B、C起控制作用,起控制作用, 故称为故称为8255A的控制字的控制字。resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端

14、口端口C端口端口B +5VGNDD7D0外外设设20 通过编程向控制口写入不同的控制字,通过编程向控制口写入不同的控制字, 可灵活的改变端口可灵活的改变端口A、B、C的工作状态和工作方式。的工作状态和工作方式。例例 假设假设8255A 控制端口的地址为控制端口的地址为Port_Ctrl, 8255A控制口的内容为控制口的内容为CtrlData 设置控制字的程序段如下:设置控制字的程序段如下: MOV DX,Port_Ctrl ;置置DX为控制口地址为控制口地址 MOV AL,CtrlData ;置控制字于置控制字于AL中中 OUT DX, AL ;将控制字写入控制口将控制字写入控制口21 82

15、55A有两种控制字,由写入内容的有两种控制字,由写入内容的D7位区分:位区分:D7=1, 方式控制字方式控制字设定设定A口、口、B口、口、C口的工作状态和工作方式。口的工作状态和工作方式。工作状态:输入或输出工作状态:输入或输出工作方式:方式工作方式:方式 0、方式、方式 1、方式、方式 2D7=0 , C口按位置位口按位置位/复位控制字复位控制字使使C口中的某一位为口中的某一位为1(置位)或(置位)或0(复位)。(复位)。221. 方式控制字方式控制字设定设定A口、口、B口、口、C口的工作状态和工作方式。口的工作状态和工作方式。工作状态工作状态:输入或输出:输入或输出工作方式工作方式:方式:

16、方式 0、方式、方式 1、方式、方式 2resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设23B口口0 输出输出1 输入输入0 方式方式01 方式方式11D7D6D5D4D3D2D1D0特征位,特征位,D7=1表示是方式控制字表示是方式控制字PC3PC00 输出输出1 1 输入输入B口工作方式口工作方式PC7PC40 输出输出1 输入输入A口口0 输出输出1 输入输入A口工作方式口工作方式00

17、 方式方式001 方式方式11x 方式方式2方方式式控控制制字字各各位位含含义义24例例 8255A与系统的连线如下,与系统的连线如下, 片选译码地址为片选译码地址为F0F3h 1) 确定各端口地址确定各端口地址; 2) 编程设置编程设置8255A : A口方式口方式 0 输入,输入,PC7PC4输出输出 B口方式口方式 0 输出,输出,PC3PC0输入输入resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码RESETA1A0PC7PC0PB7PB0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设RDWRC

18、SPA7PA0F0F3h25最后得出结论:最后得出结论: A口地址口地址为为 F0 H B口地址口地址为为 F1 H C口地址口地址为为 F2 H D口地址口地址为为 F3 H1) 确定端口地址确定端口地址由由8255A编程结构知:编程结构知:由由8255A的的CS与系统总线的连线知与系统总线的连线知, 地址在地址在F0F3h可可使使CS有效,故有效,故: 4个端口的地址在个端口的地址在F0F3h中。中。结合结合8255A与系统总线的连线与系统总线的连线: A7 A6 A5 A4 A3 A2 A1 A0 F0H 1 1 1 1 0 0 0 0 A口口F1H 1 1 1 1 0 0 0 1 B口

19、口F2H 1 1 1 1 0 0 1 0 C口口F3H 1 1 1 1 0 0 1 1 D口口 CSA1 A0 8255A总线总线262) 确定方式控制字确定方式控制字10010001D7D6D5D4D3D2D1D0特征位特征位A口口方式方式 0A口口输入输入PC7PC4输出输出B口口方式方式 0B口口输出输出PC3PC0输入输入所以,方式控制字为所以,方式控制字为 1001 0001B,即即91H 要求设置要求设置: A口方式口方式0输入,输入,PC7PC4输出输出 B口方式口方式0输出,输出,PC3PC0输入输入 27设置方式控制字的程序段为:设置方式控制字的程序段为:MOV DX, 0F

20、3H ;控制口地址控制口地址MOV AL, 91H ;方式方式控制字控制字OUT DX, AL或或 MOV AL, 91H ; 方式控制字方式控制字OUT 0F3H, AL282. C口按位置位口按位置位/复位控制字复位控制字 作用是:作用是: 使使C C口中的某一位为口中的某一位为1 1(置位)或(置位)或0 0(复位);(复位); 或或 在在A A口、口、B B口采用中断方式时,口采用中断方式时, 通过向通过向C C口的指定位置位,允许口的指定位置位,允许8255A8255A的中断信号发出。的中断信号发出。290 复位复位1 置位置位0D7D6D5D4D3D2D1D0设置内容设置内容特征位

21、,特征位,D7=0表示是表示是C口按位口按位置位置位/复位控制字复位控制字无意义无意义选择设置位选择设置位C口按位置位口按位置位/复位控制字各位含义复位控制字各位含义:30例例 连线如上例,连线如上例, 通过控制口置通过控制口置 PC2 为为 0,置,置 PC4 为为 1 MOV DX,0F3H ;置置DX为控制口地址为控制口地址 MOV AL,0000 0100B ;置置PC2为为0 OUT DX, AL MOV AL,0000 1001B ;置置PC4为为1 OUT DX, AL 31三、三、8255A的工作方式的工作方式1. 三种工作方式三种工作方式2. 方式方式0 3. 方式方式14.

22、 方式方式232r 在在8255A内部硬件结构中内部硬件结构中: A口和口和B口之间没有硬件关系,口之间没有硬件关系, 即可分别作为独立的输入或输出端口;即可分别作为独立的输入或输出端口; C口和口和A口,口,C口和口和B口之间有硬件联系,口之间有硬件联系, 通过向控制口设置控制字可以改变这种联系。通过向控制口设置控制字可以改变这种联系。1. 三种工作方式三种工作方式33resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B

23、+5VGNDD7D0外外设设8255A总线总线34r 根据根据A口和口和C口、口、B口和口和C口之间硬件关系的不同,口之间硬件关系的不同, 可以有三种不同的工作方式可以有三种不同的工作方式, 分别称为方式分别称为方式 0、方式、方式 1、方式、方式 2。方式方式 0: 与与C口之间口之间没有硬件联系没有硬件联系。 方式方式 1: C口的口的某某3根引脚根引脚作为端口与外设的联络信号。作为端口与外设的联络信号。方式方式 2: C口的口的某某5根引脚根引脚作为端口与外设的联络信号。作为端口与外设的联络信号。 351. 方式方式0(基本输入输出方式)(基本输入输出方式) A口工作在方式口工作在方式

24、0 时,时,A口口和和C口之间没有硬件联系口之间没有硬件联系 B口工作在方式口工作在方式 0 时,时,B口口和和C口之间没有硬件联系口之间没有硬件联系resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设36工作在工作在方式方式 0 的端口的端口,为,为单向传送端口单向传送端口, 由方式控制字决定是输入还是输出。由方式控制字决定是输入还是输出。1001/01/001/01/0特征位特征位A口口工作

25、方式工作方式 A口口I/OPC7PC7PC4PC4I/OB口口工作方式工作方式 B口口I/OPC3PC3PC0PC0I/O工作在方式工作在方式 0 的端口:的端口: 作为输入口相当于普通的三态门作为输入口相当于普通的三态门 作为输出口相当于普通的锁存器作为输出口相当于普通的锁存器 CPU可利用方式可利用方式 0 下的端口,直接对端口进行读写操作,下的端口,直接对端口进行读写操作, 实现实现CPU与外设间的数据传送。与外设间的数据传送。37 2. 方式方式1(选通输入输出方式)(选通输入输出方式) B口工作在方式口工作在方式1时,时, C口的口的某某3根引脚根引脚作为作为B口的联络信号口的联络信

26、号。resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B +5VGNDD7D0外外设设38工作在方式工作在方式 1 的端口,为单向传送端口。的端口,为单向传送端口。 由方式控制字决定是输入还是输出。由方式控制字决定是输入还是输出。1011/01/011/01/0D7D6D5D4D3D2D1D0特征位特征位A口口工作方式工作方式 A口口I/OPC7PC7PC4PC4I/OB口口工作方式工作方式 B口口I/OPC3PC3PC0P

27、C0I/O39在方式在方式 1 下,下,C口作为口作为A口、口、B口联络信号的引脚,口联络信号的引脚, 其动作关系在芯片设计和制造时已固定,其动作关系在芯片设计和制造时已固定, 不由用户自己安排,也不能编程改变。不由用户自己安排,也不能编程改变。 即即C口作为联络信号的引脚口作为联络信号的引脚: 不受方式控制字的控制不受方式控制字的控制。该出则出,该入则入。该出则出,该入则入。 不受不受C口按位置位口按位置位/复位控制字控制复位控制字控制, 即对这些位的置位即对这些位的置位/复位不影响这些引脚信号。复位不影响这些引脚信号。1011/01/011/01/0特征位特征位A口口工作方式工作方式 A口

28、口I/OPC7PC7PC4PC4I/OB口口工作方式工作方式 B口口I/OPC3PC3PC0PC0I/O40利用方式利用方式 1 下的联络信号,下的联络信号, 可方便地可方便地实现查询或中断方式实现查询或中断方式的硬件设计,的硬件设计, 使使CPU能够能够有效、可靠地与外设进行数据传送。有效、可靠地与外设进行数据传送。 A口、口、B口在输入或输出不同的工作状态时,口在输入或输出不同的工作状态时, C口联络信号的引脚和意义也不同。口联络信号的引脚和意义也不同。41l方式方式1下输入端口的联络信号下输入端口的联络信号1 0 1 1A A口方式口方式1 1输入控制字输入控制字11 1B B口方式口方

29、式1 1输入控制字输入控制字PA7PA7PA0PA0PC4PC4PC5PC5PC3PC3INTEAINTEAPC4PC4与门与门IBFAIBFASTBASTBAINTRAINTRARDRDD7D7D0D0A口方式口方式1输入时输入时相应的联络信号相应的联络信号PB7PB7PB0PB0PC2PC2PC1PC1PC0PC0INTEBINTEBPC2PC2与门与门RDRDB口方式口方式1输入时输入时相应的联络信号相应的联络信号D7D7D0D0IBFBIBFBSTBBSTBBINTRBINTRB42对方式对方式1输入的端口,输入的端口,C口提供与外部联络的信号有:口提供与外部联络的信号有: STB 选

30、通信号(低电平有效)选通信号(低电平有效)由外设发出,送给由外设发出,送给8255A,作用是将外设送来的数据锁存到作用是将外设送来的数据锁存到8255A的输入端口。的输入端口。 IBF 输入缓冲器满信号(高电平有效)输入缓冲器满信号(高电平有效) 8255A 发出,发出, 表示外设送来的数据已进入输入端口。表示外设送来的数据已进入输入端口。 当外设送来的数据送入输入端口后,当外设送来的数据送入输入端口后, 8255A自动发出自动发出IBF。 INTR 中断申请信号中断申请信号 (高电平或上升沿有效)(高电平或上升沿有效)8255A 发出,用来向发出,用来向CPU发出中断申请。发出中断申请。ST

31、B、IBF、INTE均为时,均为时,8255A自动发出自动发出INTR。PA7PA7PA0PA0PC4PC4PC5PC5PC3PC3INTEAINTEAPC4PC4与门与门IBFIBFSTBSTBINTRINTR43对方式对方式1输入的端口,输入的端口,8255A内部的控制信号有:内部的控制信号有: INTE 中断允许控制信号中断允许控制信号 作用是控制是否允许作用是控制是否允许8255A的中断申请信号的中断申请信号INTR发出。发出。PA7PA7PA0PA0PC4PC4PC5PC5PC3PC3INTEAINTEAPC4PC4与门与门IBFIBFSTBSTBINTRINTR 此信号无引出此信号

32、无引出, 通过通过控制口控制口对对C口相应位的置位口相应位的置位/复位复位设置设置允许或不允许允许或不允许。 A口,口,对对PC4置置位位, 使使INTEA=1, 允许允许中断中断 对对PC4复复位位, 使使INTEA=0, 不允许不允许中断中断 B口,口,对对PC2置置位位, 使使INTEB=1, 允许允许中断中断 对对PC2复复位位, 使使INTEB=0, 不允许不允许中断中断44注意:注意: 在方式在方式1下,下,作为联络信号的外部引脚作为联络信号的外部引脚PC4、PC2, 不受不受C口按位置位口按位置位/复位控制字控制复位控制字控制, 即对这些位的置位即对这些位的置位/复位不影响这些引

33、脚信号的输入复位不影响这些引脚信号的输入/输出,输出, 而只在而只在8255A内部对内部对INTE信号起作用。信号起作用。PA7PA7PA0PA0PC4PC4PC5PC5PC3PC3INTEAINTEAPC4PC4与门与门IBFAIBFASTBASTBAINTRAINTRARDRDD7D7D0D0PB7PB7PB0PB0PC2PC2PC1PC1PC0PC0INTEBINTEBPC2PC2与门与门RDRDD7D7D0D0IBFBIBFBSTBBSTBBINTRBINTRB1 0 1 1A口方式口方式1输入控制字输入控制字11 1B口方式口方式1输入控制字输入控制字45l方式方式1下输出端口的联络

34、信号下输出端口的联络信号A口方式口方式1输出时输出时相应的联络信号相应的联络信号B口方式口方式1输出时输出时相应的联络信号相应的联络信号1 0 1 0A口方式口方式1输出控制字输出控制字11 0B口方式口方式1输出控制字输出控制字PA7PA7PA0PA0PC6PC6PC7PC7PC3PC3INTEAINTEAPC6PC6与门与门OBFAOBFAACKAACKAINTRAINTRAWRWRD7D7D0D0PB7PB7PB0PB0PC2PC2PC1PC1PC0PC0INTEBINTEBPC2PC2与门与门WRWRD7D7D0D0OBFBOBFBACKBACKBINTRBINTRB46对方式对方式1

35、输出的端口,输出的端口,C口提供与外部联络的信号有口提供与外部联络的信号有: OBF 输出缓冲器满信号(低电平有效)输出缓冲器满信号(低电平有效)当数据送至当数据送至8255A输出缓冲器后,输出缓冲器后,8255A自动发出。自动发出。 表示表示CPU送来的数据已进入送来的数据已进入8255A输出端口,输出端口, 可用来通知外设把数据取走。可用来通知外设把数据取走。 ACK 外设响应信号(低电平有效)外设响应信号(低电平有效) 由外设发出,送给由外设发出,送给8255A。 作用是通知作用是通知 8255A 输出端口的数据已被外设取走,输出端口的数据已被外设取走, 可以传送下一个数据。可以传送下一

36、个数据。 INTR 中断申请信号(高电平或上升沿有效)中断申请信号(高电平或上升沿有效) 8255A 发出发出, 用来向用来向CPU发出中断申请。发出中断申请。当当OBF 、ACK、INTE均为时,均为时,8255A自动发出自动发出INTR。PA7PA7PA0PA0PC6PC6PC7PC7PC3PC3INTEAINTEAPC6PC6与门与门OBFAOBFAACKAACKAINTRAINTRA47对方式对方式1输出的端口,输出的端口,8255A内部的控制信号有:内部的控制信号有: INTE 中断允许控制信号中断允许控制信号 作用是控制是否允许中断申请信号作用是控制是否允许中断申请信号INTR发出

37、。发出。PA7PA7PA0PA0PC6PC6PC7PC7PC3PC3INTEAINTEAPC6PC6与门与门OBFAOBFAACKAACKAINTRAINTRA 此信号无引出此信号无引出, 通过通过控制口控制口对对C口相应位的置位口相应位的置位/复位复位设置设置允许或不允许允许或不允许。 A口,口,对对PC6置置位位, 使使INTEA=1, 允许允许中断中断 对对PC6复复位位, 使使INTEA=0, 不允许不允许中断中断 B口,口,对对PC2置置位位, 使使INTEB=1, 允许允许中断中断 对对PC2复复位位, 使使INTEB=0, 不允许不允许中断中断48PA7PA7PA0PA0PC6P

38、C6PC7PC7PC3PC3INTEAINTEAPC6PC6与门与门OBFAOBFAACKAACKAINTRAINTRAWRWRD7D7D0D0PB7PB7PB0PB0PC2PC2PC1PC1PC0PC0INTEBINTEBPC2PC2与门与门WRWRD7D7D0D0OBFBOBFBACKBACKBINTRBINTRB1 0 1 0A口方式口方式1输出控制字输出控制字11 0B口方式口方式1输出控制字输出控制字注意:注意: 在方式在方式1下,作为联络信号的外部引脚下,作为联络信号的外部引脚PC6、PC2, 不受不受C口按位置位口按位置位/复位控制字控制,复位控制字控制, 即对这些位的置位即对这

39、些位的置位/复位不影响这些引脚信号的输入复位不影响这些引脚信号的输入/输出,输出, 而只在而只在8255A内部对内部对INTE信号起作用。信号起作用。493方式方式2 (双向传送方式)(双向传送方式)端口工作在方式端口工作在方式 2时,时,C口的某口的某5根引脚作为端口的联络信号根引脚作为端口的联络信号 8255A 只有只有A口可以工作在方式口可以工作在方式 2 下。下。resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B

40、+5VGNDD7D0外外设设50 与方式与方式 0、方式、方式 1的单向传送不同,的单向传送不同, 工作在方式工作在方式 2下的端口,具有双向传送功能。下的端口,具有双向传送功能。 A口工作在方式口工作在方式 2 下,下,C口未做联络信号的口未做联络信号的3条引脚,条引脚, 可作为可作为B口在方式口在方式1下的联络线,也可和下的联络线,也可和B口一样工作在方式口一样工作在方式0下。下。 由方式控制字决定其输入由方式控制字决定其输入/输出。输出。11XX 1/01/01/0D7D6D5D4D3D2D1D0特征位特征位A口口工作方式工作方式 A口口I/OPC7PC7PC4PC4I/OB口口工作方式

41、工作方式 B口口I/OPC3PC3PC0PC0I/O1/051PA7PA7PA0PA0PC6PC6PC7PC7ACKAACKAOBFAOBFAD7D7D0D0RDRDWRWRPC4PC4PC5PC5STBASTBAIBFAIBFAINTEA1INTEA1PC4PC4INTEA2INTEA2PC6PC6与与门门PC3PC3INTRAINTRA或门或门与与门门工作在方式工作在方式2时,时,C口有口有5根引脚作为根引脚作为A口的联络信号,口的联络信号, 是方式是方式1下下A口输入、输出联络信号的组合。口输入、输出联络信号的组合。52四四 8255A8255A的应用举例的应用举例1键盘接口电路键盘接口

42、电路 2打印机接口打印机接口53例例1某应用系统以某应用系统以8255A作为接口,采集一组开关作为接口,采集一组开关S7S0 的状态,然后通过一组发光二极管的状态,然后通过一组发光二极管LED7LED0显示开关状态显示开关状态,(Si闭合,则对应闭合,则对应LEDi亮,亮,Si断开,则断开,则对应的对应的LEDi灭)电路连接如下图,已知灭)电路连接如下图,已知8255A、B两组两组均工作在方式均工作在方式0。1)写出写出8255四个端口的地址。四个端口的地址。2)写出写出8255工作方式控制字。工作方式控制字。3)画出实现给定功能的汇编语言程序。画出实现给定功能的汇编语言程序。54LED7LE

43、D0S7S0PB7PB0PA7PB08255AD7D0D7D0WRRDIOWIORY0G1G2AG2BCBA74LS138CSA9AEN&A8A7A6A5A4A3A2A1A0A1A055答:答:1)A口、口、B口、口、C口和控制口的地址分别是口和控制口的地址分别是320H、321H、322H和和323H。2)A口工作在方式口工作在方式0输出,输出,B口口工作在方式工作在方式0输入,输入,C口口空闲,所以其控制字是空闲,所以其控制字是10000010b82H3)程序如下:程序如下:MOVAL, 82H;置方式字置方式字MOVDX, 323H;置控制端口地址置控制端口地址OUTDX, ALL1:M

44、OVDX, 321H;置置B口地址口地址INAL, DX;读开关状态(读开关状态(1断,断,0通)通)NOTAL;状态取反状态取反MOVDX, 320H;置置A口地址口地址OUTDX, AL;输出(输出(1亮,亮,0灭)灭)JMPL156例例2 假设利用假设利用8255的的A口方式口方式0与打印机相与打印机相连,将内存缓冲区连,将内存缓冲区BUFF中的字符打印输出。中的字符打印输出。 打印机接口在打印机接口在STB有效时,接收数据,有效时,接收数据,在在BUSY有效时,表示打印机忙,不能接收有效时,表示打印机忙,不能接收数据。数据。 57打印机时序打印机时序返回58图图 8255A与打印机接口

45、与打印机接口打印机接口在打印机接口在STB有效时,接收数据有效时,接收数据;在在BUSY有效时,表示打印机忙,不能接收数据。有效时,表示打印机忙,不能接收数据。59DATA SEGMENTBUFF DB HELLO,WORLD!,13,10,$PORTA EQU60HPORTB EQU61HPORTC EQU62HPORTCN EQU63HDATA ENDS ;数据段数据段CODE SEGMENT ;代码段代码段 ASSUME CS:CODE,DS:DATASTART:MOVAX,DATA MOVDS,AX MOVSI,OFFSETBUFF MOVAL,88H OUT PORTCN, AL;8

46、2558255初始化,初始化,初始化,初始化,A A口方式口方式口方式口方式0 0输出,输出,输出,输出,C C口低四位输入、高四位输出口低四位输入、高四位输出口低四位输入、高四位输出口低四位输入、高四位输出60 MOVAL,01H ;置位置位置位置位PC0PC0,STBSTB无效,无效,无效,无效, ;C C口按位置位复位控制字口按位置位复位控制字口按位置位复位控制字口按位置位复位控制字 OUTPORTCN,AL WAIT:INAL, PORTC TESTAL, 80H ;读打印机状态,读打印机状态,读打印机状态,读打印机状态,判断判断PC7是否是否 为为1(忙)(忙) JNZWAIT ;

47、若若若若“ “忙忙忙忙” ”则等待则等待则等待则等待 MOVAL,SI ;打印字符送出打印字符送出 CMPAL,$ ;是否为最后一个字符是否为最后一个字符 JZPRINT_OVER OUTPORTA, AL;数据送出;数据送出;数据送出;数据送出 61MOV AL, 00HOUT PORTCN ,AL ;产生选通信号,;产生选通信号,;产生选通信号,;产生选通信号, PC0PC0置低,置低,置低,置低,打印机接收数据,开始打印。打印机接收数据,开始打印。打印机接收数据,开始打印。打印机接收数据,开始打印。 MOV AL, 01H ;置位置位置位置位PC0PC0,STBSTB无效无效无效无效 OUT PORTCN ,AL INC SI ;指向下一个待打印字符;指向下一个待打印字符 JMP WAITPRINT_OVER: MOV AH, 4CH INT 21HCODE ENDSEND START 看图62

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号