常用接口芯片及应用.ppt
《常用接口芯片及应用.ppt》由会员分享,可在线阅读,更多相关《常用接口芯片及应用.ppt(258页珍藏版)》请在三一办公上搜索。
1、2023年11月2日星期四,1,微机原理与接口技术,第6章 常用接口芯片及应用,2,第6章 常用接口芯片及应用,1 可编程接口芯片概述 计算机系统是由软件和硬件组成的,软件的特点是具有极高的灵活性,只要硬件允许,用户就可通过编程构成任意功能的软件。硬件则不灵活,一旦电路设计完成,其功能就确定了,很难更改,降低计算机系统功能发挥。,3,第6章 常用接口芯片及应用,希望硬件接口电路最好具有一定的可变性,即希望存在这么一种芯片,当这个芯片与CPU相连后,尽管电路不能改变,但其功能可通过程序改变。(如设计某具有O/I功能的端口,可根据需要通过指令来选择输入接口或输出接口),大大提高计算机系统灵活性。,
2、第6章 常用接口芯片及应用,这种可被用户通过程序来改变功能的电路芯片,称为可编程芯片,而用程序改变芯片工作方式的过程称为芯片编程或芯片初始化。,第6章 常用接口芯片及应用,如图是一个简单的具有输入功能和输出功能的可编程接口电路,它包括一个输入接口,其组成主要是八位的三态门;一个输出接口,其组成主要是八位的锁存器;另外还有八位的多路转换开关及控制这个开关的寄存器FF。,第6章 常用接口芯片及应用,FF=0,开关接位置“0”I/O线接锁存器,电路作为输出接口。FF=1,开关接位置“1”I/O线接三态门,电路作为输入接口。用户通过指令把寄存器FF写入0或1,就可选取所需接口工作状态。,第6章 常用接
3、口芯片及应用,上述方案就是可编程芯片设计的主要思想。用户对寄存器FF写入的内容称为命令字或方式控制字,而寄存器FF称为命令寄存器相应的端口称为命令端口或控制端口,对可编程芯片初始化过程实际上就是对芯片的控制端口写入各种命令字的操作过程。,8,第6章 常用接口芯片及应用,接口电路已由早期的逻辑电路板(由中、小规模集成电路芯片组成)发展到以大规模集成电路芯片为主的接口芯片,用于微机输入/输出的接口芯片种类极多,功能各异。按功能选择的灵活性来分,可分为可编程接口芯片(8259、8255、8253、8251等)和不可编程接口芯片(如 三态门、CMOS 锁存器、缓冲器电路等);按接口的通用性来分,可分为
4、通用接口芯片(8255、8251等)和专用接口芯片(键盘接口,显示器接口等)。,9,第6章 常用接口芯片及应用,本章将对一些常用的接口芯片8255A(并行I/O接口)、8253(计数/定时器)、8251A(串行I/O接口)、9259A(中断控制器)进行介绍。从接口芯片的外特性着手,介绍接口芯片的应用。,10,第6章 常用接口芯片及应用,2 可编程并行接口芯片8255A(P289),8255A是一种通用的可编程并行IO接口芯片,广泛用于几乎所有系列的微型机系统中,具有3个带锁存或缓冲的数据端口,用户可用程序来选择多种操作方式,各端口内具有中断控制逻辑,在外设与CPU之间可用中断方式进行信息交换,
5、使用条件传输方式时可用“联络”线进行控制。,11,第6章 常用接口芯片及应用,一、8255A的内部结构 8255A的内部结构如图6.1(P291,图6.5)所示。二、8255A的引脚功能 8255A芯片采用NMOS工艺制造,40个引脚的双列直插封装如图6.4所示。40条引脚可分为与CPU连接和与外设连接的引脚。,12,第6章 常用接口芯片及应用,三、8255A的工作方式及编程 1.8255A的工作方式 8255A各端口共有3种基本工作方式:方式0基本输入/输出方式;方式1选通输入/输出方式;方式2双向传送方式。,13,第6章 常用接口芯片及应用,方式0主要工作在无条件的输入/输出方式下,不需要
6、“联络”信号。A口、B口和C口均可工作在此方式下。在方式0下,C口的输出位可由用户直接独立设置为“0”或“1”。,第6章 常用接口芯片及应用,方式1主要工作在异步或条件传输方式(必须先检查状态,然后才能传输数据)下,此时,仅有A口和B口可工作于方式1。由于条件传输需要联络线,所以在方式1下C口的某些位分别为A口和B口提供3根联络线。,第6章 常用接口芯片及应用,方式2的双向传送方式是指在同一端口内分时进行输入/输出的操作。8255A中只有A口可工作在这种方式下,此时需要5个控制信号进行“联络”,这5个信号由C口提供。故此时B口只能工作在方式0或方式1下,当B口工作在方式1时,又需要3根联络线。
7、,第6章 常用接口芯片及应用,所以当A口工作在方式2下,同时B口又工作在方式1下时,8255A的C口8根线将全部作为联络线使用,C口也就因没有I/O功能而“消失”了。关于C口“联络”信号的定义后面讨论。,第6章 常用接口芯片及应用,2.8255A编程 所谓8255A编程,就是用户在使用8255前,用户可用软件来定义端口的工作方式,选择所需要的功能。掌握8255A的编程时正确使用该芯片的前提。8255A复位时,A、B、C三端口工作在方式0的输入状态。,18,第6章 常用接口芯片及应用,3.方式选择控制字 格式如图所示(P296,图6.12)。通过定义工作方式控制字可将3个端口定义为各种不同方式的
8、组合,19,【例1】设端口A工作在方式1输出,端口C上半部为输出,下半部为输入,端口B工作在方式0输入,则这时的方式选择控制字应为10100011B或A3H。,第6章 常用接口芯片及应用,如果把这个方式选择控制字通过输出指令写入到8255A的控制寄存器中,便完成了对8255A的初始化。显然,对8255A初始化后,8255A就会按照初始化时所设定的方式选择控制字指定的工作方式来完成工作。,20,第6章 常用接口芯片及应用,设8255A的控制端口地址为FFF6H,那么对8255A的初始化程序为MOV DX,0FFF6H;控制端口地址MOV AL,0A3H;写入控制字OUT DX,AL,21,第6章
9、 常用接口芯片及应用,【例2】按下述要求对8255A进行初始化:要求A口设为输入数据,工作于方式1;B口设为输出数据,工作于方式0;C口高四位输出,低四位输入数据。8255A的端口地址为04A0H04A6H。,22,第6章 常用接口芯片及应用,解:初始化程序段如下:MOV DX,04A6H;送控制口地址 MOV AL,10110001H;设置方式选择控制字 OUT DX,AL,23,第6章 常用接口芯片及应用,4.C口按位置位/复位控制字格式如图所示(P296)D7位为置位/复位控制字标志位,必须使D7=0;D3Dl位用于选择对端口C中某一位进行操作;D0位指出对选中位是置1还是清0。D0=1
10、时,使选中位置1;D0=0时,使选中位清0。,24,若D0=0,D3D2D1=101,则C端口的第5位PC5置“0”;若D0=1,D3D2D1=001,则C端口的第1位PC1置“1”。,第6章 常用接口芯片及应用,25,第6章 常用接口芯片及应用,【例1】设一片8255A的端口地址为60H63H,PC5平时为低电平,要求从PC5的引脚输出一个正脉冲。可以用程序先将PC5置1,输出一个高电平,再把PC5清0,输出一个低电平,结果PC5引脚上便输出一个正脉冲。,实现这个功能的程序段如下:MOV AL,000010l1B OUT 63H,AL;置PC5为高电平MOV AL,00001010B OUT
11、 63H,AL;置PC5为低电平,26,第6章 常用接口芯片及应用,【例2】要使端口C的bit3置位的控制字为:00000111B;MOV AL,00000111B OUT 0FBH,AL 而使端口C的bit3复位的控制字为:00000110B;MOV AL,00000110B OUT 0FBH,AL,27,第6章 常用接口芯片及应用,【例3】试编程使8255A的C口PC3位产生一个方波信号。8255A的端口地址为04A0H04A6H。解:可利用C口置/复位控制字,交替使PC3位输出“1”和“0”。程序段如下:,28,第6章 常用接口芯片及应用,MOV DX,04A6H;送控制口地址 LL:M
12、OV AL,00000111B;对PC3位置1 OUT DX,AL CALL DELAY;延时 MOV AL,00000110B;对PC3位置0 OUT DX,AL JMP LL;循环,产生周期信号,29,第6章 常用接口芯片及应用,【例4】要把端口C的PC7置成1。则控制字应为00001111B或0FH。把该控制字的内容写入8255A的控制寄存器中,就实现了对端口C的PC7位置1的操作。,其程序如下:MOV DX,0FFF6H;8255A控制端口地址MOV AL,0FH;PC7置1的控制字OUT DX,AL;写入控制端口若要使端口C的PC3置0,则控制字应为00000110B或06H。,30
13、,其程序段如下:MOV DX,0FFF6H;控制端口地址MOV AL,06H;PC3置0的控制字OUT DX,AL;写入控制端口端口C置1/置0控制字虽然是对端口C进行操作,但它是一种控制字,因此,必须写入控制端口而不能写入端口C的地址中。,第6章 常用接口芯片及应用,31,第6章 常用接口芯片及应用,5 读入C端口状态字前面指出,当8255A工作于方式1和方式2时,C端口产生或接收与外设间的联络信号,这时,读取C端口的内容可使编程人员测试或检查外设的状态,用输入指令对C端口进行读操作就可读取C端口的状态。C端口的状态字有以下几种格式。,32,第6章 常用接口芯片及应用,方式1状态字输入状态字
14、的格式如下:各位含义见P297,其中,D7D3位为A组状态字,D2D0位为B组状态字。输出状态字的格式如下:各位含义见P297,其中,D7D3位为A组状态字,D2D0位为B组状态字。,33,第6章 常用接口芯片及应用,方式2状态字方式2状态字的格式如下:,其中,D7D3位为A组状态字,D2D0位为B组所用,当B口工作于方式1时,这几位作B口的状态字,当B口工作于方式0时,这几位不是状态位,而是用做输入/输出。,34,第6章 常用接口芯片及应用,四.8255A的工作方式的功能及应用,8255A共有三种工作方式可选择,每个端口可选择的工作方式都有所差别。8255A端口A可以在方式0、方式1和方式2
15、三种方式下工作,而端口B只能在方式0和方式1两种方式下工作。8255A工作在什么方式下是由控制寄存器的内容决定的。8255A的各个I/O端口在不同工作方式下的功能如表6-3所示。下面介绍这三种工作方式的特点、功能、时序及使用场合等。,35,第6章 常用接口芯片及应用,、方式 0基本输入输出方式(P291)8255A的3个端口均可工作在这种方式下,特别是C口只能工作在方式0。在这种方式下,CPU与端口之间交换数据可以执行IN或OUT指令完成,不需检测状态线,8255A的3个端口可分别定义为输入或输出端口,因此3个端口可有表2所示的16种输入/输出组合。,36,第6章 常用接口芯片及应用,由控制字
16、中D4D3D1D0 等4位的不同取值可定义方式0的16种工作方式的组合,如表2所示。,37,第6章 常用接口芯片及应用,这意味着当8255A与CPU相连后,该接口部件可以提供用户16种不同功能的输入/输出端口。采用可编程芯片作为接口电路可以大大提高计算机硬件系统灵活性。方式0中,数据输出有锁存,输入无锁存。方式0的输入/输出时序如图6.6所示。,38,第6章 常用接口芯片及应用,39,第6章 常用接口芯片及应用,例1:要求8255A的A口和B口均工作于方式0,A口和下C口作输入口,B口和上C口作输出口,设8255A各端口地址为40H43H,可用下列指令来设置这种工作方式:MOV AL,91H;
17、方式控制字0010001BAL OUT 43H,AL;方式控制字送控制寄存器,第6章 常用接口芯片及应用,例2.8255A的A口和B口工作在方式0,A口为输入端口,接有四个开关。B口为输出端,接有一个七段发光二极管,连接电路如图所示。试编一程序要求七段发光二班管显示开关所拨通的数字。,第6章 常用接口芯片及应用,第6章 常用接口芯片及应用,例中,8255的端口地址由两部分组成,由CPUA15 A3通过74LS138产生CS,A2A1组合成4个端口地址,A0与译码器Y4通过逻辑组合,保证8255的4个端口地址为偶地址。8020H、8022H、8024H、8026H。七段发光二极管为共阳极LED器
18、件。a段亮从PB0输出1,熄灭输出0。,第6章 常用接口芯片及应用,8255A的口接有开关,4位开关的组合可为0HFH。为此,可将在LED上显示0HFH各字符的断码列于图表中。方式控制字:10010000B(90H或99H)参考程序如下:,第6章 常用接口芯片及应用,A_PORT EQU 8020H B_PORT EQU 8022H;定义端口的符号地址C_PORT EQU 8024HCTRL_PORT EQU 8026HDATA SEGMENT TAB1 DB 3FH,06H,31HDATA ENDS,第6章 常用接口芯片及应用,CODE SEGMENT ASSUME DS:DATA,CS:C
19、ODE MOV AX,DATA MOV DS,AX MOV AL,90H MOV DX,CTRL_PORT OUT DX,AL;设置8255方式字ADD1:MOV DX,A_PORT,第6章 常用接口芯片及应用,IN AL,DX;取键盘信息 AND AL,0FH;屏蔽高4位 MOV BX,OFFSET TAB1 XLAT MOV DX,B_PORT OUT DX,AL;输出显示 MOV CX,0600HADD2:LOOP ADD2 JMP ADD1 CODE ENDS END,第6章 常用接口芯片及应用,方式1选通输入/输出方式P292 在这种方式下,数据输入/输出操作要在选通信号控制下完成,
20、因此适合条件传送,A口和B口可工作在此方式下,这时C口的某些位就用来作“联络线”。A口和B口可以作为输入接口,也可作为输出接口,由于输入和输出接口所需的选通控制不同,相应“联络线”的定义功能也就不同。,48,第6章 常用接口芯片及应用,当8255A的端口A和端口B都工作在方式1时,任何一个端口都可作为输入端口或输出端口,这时端口C中有6位将被规定为配合方式1的联络信号,其中3位作为端口A的联络信号,另外3位作为端口B的联络信号。端口C剩下的2位可由程序设定为输入或输出,也具有置位/复位功能。,49,如果8255A的端口A和端口B中只有一个工作在方式1,则此时端口C中的3位被规定为配合工作在方式
21、1的联络信号。另外一个端口(端口A或端口B)可以工作在方式0,端口C中的其他位也可以工作在方式0,作为输入或输出。,第6章 常用接口芯片及应用,50,第6章 常用接口芯片及应用,方式1输入情况下有关信号的规定 当A口作为方式1输入时,C口的PC3、PC4、PC5作为控制信号,PC6、PC7则可作为I/O口利用。当B口作为方式1输入时,C口的PC0、PC1、PC2作为控制信号。如图6.7所示(P293,图6.8)。,51,第6章 常用接口芯片及应用,8255A中的端口A和端口B均工作于方式1输入模式,其工作方式控制字格式如图6.8-1所示 方式1的输入时序如图6.9所示(P294,T6.9)。常
22、见的8255A的输入接口(中断I/O)的连接图如图6-7所示,第6章 常用接口芯片及应用,例:8255的A口和B口分别工作在方式1和方式0,A口为输入端口,接有8个开关。B口为输出端,接有8个发光二极管,连接电路如图所示。现要求用方式1把改变后的键信息输入到CPU并通过B口显示。,第6章 常用接口芯片及应用,这个系统的工作过程如下:1、用户通过改变K0K7,产生新的键信息;2、按下开关K,产生选通信号,数据进入A口的缓冲器,此步骤实际上告诉CPU,8255的A口来了一个新数据;,第6章 常用接口芯片及应用,3、IBFA有效使LED点亮。这里含有两个信息,一个是8255A 通知CPU其A口来了一
23、个新数据,另一个是告诉用户CPU尚未取走这个这个数据,用户不得再送其他数据;,4、CPU取走这个数据,LED熄灭;5、转步骤1。,第6章 常用接口芯片及应用,设8255的I/O地址分布为88H8EH,相应的程序段如下 mov al,10111001b;设置A口为方式1的输入,loop1:in al,8ch;取C口的状态线 test al,00100000b;测试IBFA信息 jz loop1;等待用户设定新的键值 in al,80h;取数。LED灯灭(相对于步骤4)out 82h,al;更新B口的显示 jmp loop1;重复,56,第6章 常用接口芯片及应用,方式1输出有关信号的规定 当A口
24、作为方式1输出时,C口的PC7、PC6、PC3作为控制信号,PC4、PC5则作为I/O口使用。当B口作为方式1输出时,C口的PC0、PC1、PC2作为控制信号,PC4、PC5则作为I/O口使用。如图6.10所示(P292,图6.6)。,57,第6章 常用接口芯片及应用,8255A中的端口A和端口B为工作方式1输出模式,那么工作方式控制字的具体格式如图6.11所示,方式1的输出时序如图6.12所示(P293,T6.7),输出接口(中断I/O),其一般连接如图6-10-1所示,第6章 常用接口芯片及应用,例:8255A的A口工作在方式1的输出,接有8个发光二极管,现要求把内存中的10个数,通过A口
25、发送给发光二极管以二进制的形式供用户抄录。,第6章 常用接口芯片及应用,这个系统的工作过程如下:CPU把内存中的一个数据 写入A口;LED灯亮,告诉用户LED显示的是新数据.用户抄录数据;用户按下开关K,发ACK信号,告诉CPU数据已取走;转第一步。,第6章 常用接口芯片及应用,DATA SEGMENT XX DB X0,X1,X9DATA ENDSCODE SEGMENT ASSUME DS:DATA,CS:CODE MOV AX,DATA MOV DS,AX,第6章 常用接口芯片及应用,mov cx,10;送10个数mov bx,offset xx;数组指针送bxloop1:mov al,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 常用 接口 芯片 应用

链接地址:https://www.31ppt.com/p-6469388.html