您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 第6章 串并行通信和接口技术
第6章串并行通信和接口技术并行接口的基本概念一、并行通信和串行通信二、并行接口概述可编程并行接口8255A一、8255A引脚、编程结构二、8255A的控制字三、8255A的工作方式四、8255A的应用举例重点将数据的各位同时在多根并行传输线上进行传输。01010110D0D1D2D3D4D5D6D7目的D0D1D2D3D4D5D6D7源并行通信适于短距离、高速通信并行通信数据的各位同时由源到达目的地→快多根数据线→距离短、远程费用高数据的各位依次由源到达目的地→慢数据线少→远程,费用低串行通信将数据的各位按时间顺序依次在一根传输线上传输。RD目的TD源串行通信适于长距离、中低速通信0101并行接口的典型硬件结构包括:1、两个或两个以上具有锁存或缓冲的数据端口2、与CPU进行数据交换所必须的控制和状态信号3、与外设进行数据交换所必须的控制和状态信号4、端口译码电路、中断电路5、选片、控制电路二、并行接口概述并行接口连接CPU与并行外设,实现两者的并行通信,在信息传送过程中,起到输出锁存或输入缓冲的作用。8255A教学重点8255A的引脚、编程8255A的应用并行接口电路8255A具有多种功能的可编程并行接口电路芯片最基本的接口电路:三态缓冲器和锁存器与CPU间、与外设间的接口电路:状态寄存器和控制寄存器还有端口的译码和控制电路、中断控制电路分3个端口,共24个外设引脚共三种输入输出工作方式18255A的内部结构和引脚数据总线缓冲器内部控制线内部数据线D0~D7A组控制A组端口AA组端口C上部B组控制B组端口BB组端口C下部读写控制逻辑PC0~PC3PB0~PB7PC4~PC7PA0~PA7RDWRA0A1CSRESET1.数据端口A、B、C(1)端口A对应1个8位数据输入锁存器1个8位输出锁存器/缓冲器。(2)端口B对应1个8位数据输入缓冲器1个8位输出锁存器/缓冲器。(3)端口C对应1个8位数据输入缓冲器1个8位输出锁存器/缓冲器。通常使用方法:端口A、B作为独立的输入或者输出端口;端口C配合端口A、B1.外设数据端口端口A:PA0~PA7A组,支持工作方式0、1、2端口B:PB0~PB7B组,支持工作方式0、1端口C:PC0~PC7仅支持工作方式0A组控制高4位PC4~PC7B组控制低4位PC0~PC3端口A:PA0~PA7常作数据端口,功能最强大端口B:PB0~PB7常作数据端口端口C:PC0~PC7可作数据、状态和控制端口分两个4位,每位可独立操作控制最灵活,最难掌握D0~D7数据总线缓冲器内部控制线内部数据线A组控制A组端口AA组端口C上部B组控制B组端口BB组端口C下部读写控制逻辑PC0~PC3PB0~PB7PC4~PC7PA0~PA7RDWRA0A1CSRESET2.控制端口D(A组和B组控制电路)8位端口,无对外引脚控制端口的内容决定A口、B口、C口的工作状态(输入或输出)和工作方式(方式0、1、2),起控制作用。由1个8位双向三态缓冲器构成8255A内各端口通过数据缓冲器与系统总线相连。CPU与端口A、B、C间传送的数据,以及CPU写入控制端口D中的控制字均通过数据缓冲器传送。3.数据总线缓冲器(引脚D0~D7)4.读写控制电路(引脚CS、RD、WR)控制数据总线缓冲器的状态数据总线缓冲器有3种状态:输入、输出、高阻态Intel系列的8位并行接口芯片通用性强,使用灵活可用程序设置和改变芯片的工作方式是一种典型的可编程并行接口芯片8255APA3PA2PA1PA0RDCSGNDA1A0PC7PC6PC5PC4PC3PC2PC1PC0PB0PB1PB2PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VccPB7PB6PB5PB4PB340个引脚,双列直插式CSA1A0RDWR功能00001对端口A读00101对端口B读01001对端口C读01101非法,不能对D口读输入00010对端口A写00110对端口B写01010对端口C写01110对端口D写输出1×××××××11数据缓冲器为三态断开5.8255A端口寻址选择表10.28255A的编程初始化编程:一个方式控制字采用控制I/O地址:A1A0=11工作过程中:通过数据端口对外设数据进行读写数据读写利用端口A、B和C的I/O地址,A1A0依次等于00、01、10IBMPC/XT机上,端口A、B、C和控制端口的I/O地址为60H、61H、62H和63HB口工作方式B口0输出1输入0方式01方式11D7D6D5D4D3D2D1D0PC3~PC00输出1输入PC7~PC40输出1输入A口0输出1输入特征位,D7=1表示是方式控制字A口工作方式00方式001方式11x方式2一.写入方式控制字:控制字格式B组A组1.写入方式控制字:示例1要求:A端口:方式1输入C端口上半部:输出,C口下半部:输入B端口:方式0输出方式控制字:10110001B或B1H初始化的程序段,假设控制端口为FFFEH:movdx,0fffeh;假设控制端口为FFFEHmoval,0b1h;方式控制字outdx,al;送到控制端口8255A与系统的片选译码地址为F0~F3h1)确定各端口地址;2)假设系统地址总线宽度为8,则A7-A2为多少?3)编程设置8255A:A口方式0输入,PC7~PC4输出,B口方式0输出,PC3~PC0输入1.写入方式控制字:实例2最后得出结论:A口地址为F0HB口地址为F1HC口地址为F2HD口地址为F3H1)确定端口地址由8255A编程结构知:结合8255A与系统总线的连线:A7A6A5A4A3A2A1A0F0H11110000A口F1H11110001B口F2H11110010C口F3H11110011D口CSA1A08255A总线A1A0选中端口00端口A01端口B10端口C11控制端口D2)确定方式控制字10010001D7D6D5D4D3D2D1D0特征位A口方式0A口输入PC7~PC4输出B口方式0B口输出PC3~PC0输入所以,方式控制字为10010001B,即91H要求设置:A口方式0输入,PC7~PC4输出B口方式0输出,PC3~PC0输入设置方式控制字的程序段为:MOVDX,0F3H;控制口地址MOVAL,91H;方式控制字OUTDX,AL或MOVAL,91H;方式控制字OUT0F3H,AL2.读写数据端口初始化编程后:当数据端口作为输入接口时,执行输入IN指令将从输入设备得到外设数据当数据端口作为输出接口时,执行输出OUT指令将把CPU的数据送给输出设备8255A具有锁存输出数据的能力对输出方式的端口同样可以输入不是读取外设数据读取的是上次CPU给外设的数据2.读写数据端口:示例利用8255A的输出锁存能力,可实现按位输出控制对输出端口B的PB7位置位的程序段:movdx,0fffah;B端口假设为FFFAHinal,dx;读出B端口原输出内容oral,80h;使PB7=1outdx,al;输出新的内容3.读写端口C:归纳1C端口被分成两个4位端口,两个端口只能以方式0工作,可分别选择输入或输出在控制上,C端口上半部和A端口编为A组,C端口下半部和B端口编为B组3.读写端口C:归纳2当A和B端口工作在方式1或方式2时,C端口的部分或全部引脚将被征用其余引脚仍可设定工作在方式03.读写端口C:归纳3对端口C的数据输出有两种办法通过端口C的I/O地址:向C端口直接写入字节数据。这一数据被写进C端口的输出锁存器,并从输出引脚输出,但对设置为输入的引脚无效通过控制端口:向C端口写入位控字,使C端口的某个引脚输出1或0,或置位复位内部的中断允许触发器0D7D6D5D4D3D2D1D00复位1置位设置内容特征位,D7=0表示是C口按位置位/复位控制字无意义选择设置位D3D2D1设置位000PC0001PC1010PC2011PC3100PC4101PC5110PC6111PC7二、C口按位置位/复位控制字位控制字写入控制端口特别便于置位复位内部中断允许触发器INTEMOVDX,0F3H;置DX为控制口地址MOVAL,00000100B;置PC2为0OUTDX,ALMOVAL,00001001B;置PC4为1OUTDX,AL通过控制口置PC2为0,置PC4为1控制寄存器端口地址为F3H8255A的工作方式8255A与系统的连接示意图D0~D7WRRDA1A0CSDBIOWIORA1A0译码器8255A口B口C口D0~D7外设1A19~A2系统总线外设2外设38255A的工作方式方式0:基本输入输出方式适用于无条件传送和查询方式的接口电路方式1:选通输入输出方式适用于查询和中断方式的接口电路方式2:双向选通传送方式适用于与双向传送数据的外设适用于查询和中断方式的接口电路8255A的工作方式方式0:基本输入输出方式特点:8255A相当于三个独立的8位数据口。各端口既可设置为输入口,也可设置为输出口,但不能同时实现输入及输出。C端口即可以是一个8位的简单接口,也可以分为两个独立的4位端口。设置为输出口时有锁存能力,设置为输入口时无锁存能力。适用于:无条件输入输出方式。查询输入输出方式:把A、B口作为8位数据的输入或输出口,C口的高/低4位分别定义为A、B口的控制位和状态位。方式0输入-基本输入输出方式方式0输入(INAL,PORT)框图输入缓冲器译码器数据DBAB外设8nIO/MRD①外设将数据送到8255输入缓冲器中;②CPU给出有效的8255地址;③CPU发读命令,将8255A输入缓冲器中数据读入CPU的AL寄存器中。方式0输入-基本输入输出方式方式0输入时序图tRRtIRtARtRDtDFtRAtHR输入数据数据有效数据有效A1、A0D7~D0RDCS有效方式0输出-基本输入输出方式方式0输出(OUTPORT,AL)框图①CPU给出有效的8255地址;②CPU发写命令,将CPU的AL寄存器中数据写入8255A输出锁存器中。输出锁存器译码器数据DBAB外设8nIO/MWR方式0输出-基本输入输出方式方式0输出时序图数据有效数据有效A1、A2D7~D0WRCS输出数据tWWtDWtWDtWAtWBtAWA、B、C口都可工作在方式0,且每个端口的输入、输出可以有16种组合工作在方式0的端口:作为输入口相当于普通的三态门作为输出口相当于普通的锁存器CPU可利用方式0下的端口,直接对端口进行读写操作,实现CPU与外设间的数据传送。方式0输出-基本输入输出方式方式1(选通输入输出方式)特点:1.A、B口作输入或输出口,C口分为两部分,其部分位(6位)固定用作A口、B口的选通控制信号。2.C口的剩余位仍可作数据位使用。3.A口、B口在作为输入和输出时的选通信号不同。方式1的应用:主要用于中断控制方式下的输入输出。说明:C口除部分位用作选通信号外,其余位(2位)可工作在方式0下,作为输入或输出线,用程序指定其数据传送方向。A、B口都设为方式1输入C口的联络信号:STB#——选通信号,由外设输入。为0时,将外设数据送入8255的输入锁存器。A组对应PC4;B组对应PC2。IBF——输入锁存器满信号,由8255A输出。为1时通知外设输入的数据已写入缓冲器,此时不能送下一个数据。此信号由STB#的前沿产生。CPU用IN指令取走数据后(RD#的后沿),此信号被清除。A组对应PC5;B组对应PC1。PA7~PA0PC4PC5PC3INTEAIBFAINTRAD7~D0输入设备(到CPU)RDASTBPB7~PB0PC2PC1PC0INTEBD7~D0IBFBINTRB输入设备RDBSTBA、B口都设为方式1输入C口的联络信号:INTE——中断允许,是否允许发出INTR请求。INTE=1和IBF为高电平时,允许发出INTR请求。无引出。INT
本文标题:第6章 串并行通信和接口技术
链接地址:https://www.777doc.com/doc-3259986 .html