版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第10章并行接口芯片8255 本章讲述:10.1可编程并行输入输出接口芯片8255-A的结构10.2方式选择10.3方式0的功能10.4方式1的功能10.5方式2的功能10.68255应用举例 当CPU要从外设输入信号或者输出信息给外设,可以采用程序查询方式、中断方式和DMA方式。但是,不论采用哪一种方式,CPU总是通过接口电路(Interface)才能与外设连接。所以,接口电路一边与CPU连接,另一边与外设连接。 在接口电路中,要有输入输出数据的锁存器和缓冲器,要有状态(如Ready,Busy等)和控制命令的寄存器,以便于CPU与接口电路之间采用应答方式(程序查询式)来交换信息,也便于接口电路与外设之间传送信息。接口电路中还要有端口的译码和控制电路,以及为了与CPU用中断方式交换信息所需要的中断请求触发器、中断屏蔽触发器、中断优先权排队电路和能向CPU发出中断矢量的电路等。这样,才能解决CPU的驱动能力问题、时序的配合问题以及实现各种控制,保证CPU能正确可靠地与外设交换信息。 随着大规模集成电路技术的发展,生产了许多通用的可编程序的接口芯片。这些接口芯片按数据传送的方式可以分为并行接口和串行接口两大类。本章只讨论并行接口芯片,串行接口芯片放在第11章中介绍。 通常并行接口芯片应该具有以下功能: (1)两个或两个以上的具有锁存器或缓冲器的数据端口; (2)每个数据端口都有与CPU用应答方式交换信号所必需的控制和状态信息,也有与外设交换信息所必需的控制和状态信息; (3)通常每个数据端口还具有能用中断方式与CPU交换信息所必需的电路; (4)选片和控制电路; (5)通常这类接口芯片可用程序选择数据端口,选择端口的传送方向(输入或输出或双向),选择与CPU交换信息的方法(查询或中断)等,故片中要有能实现这些选择的控制字寄存器,它可由CPU用输出指令来写入。 所以,接口芯片在工作前必须要由CPU用输出指令对它编程——初始化,以规定它的工作方式。10.1可编程的并行输入输出接口芯片8255A-5的结构 Intel8255A-5是一个为8080、8085和8086/8088微型计算机系统设计的通用I/O接口芯片。它可以用程序来改变功能,通用性强,使用灵活。通过它可以将CPU的总线直接接向外设。 8255A的方框图如图10-1所示。 8255A由以下几个部分组成:1.数据端口A、B、C 它有三个输入输出端口:PortA、PortB和PortC。每一个端口都是8位,都可以选择作为输入或输出,但功能上有着不同的特点。 (1)端口A:一个8位数据输出锁存和缓冲器;一个8位数据输入锁存器。 (2)端口B:一个8位数据输入/输出、锁存/缓冲器;一个8位数据输入缓冲器。 (3)端口C:一个8位数据输出锁存/缓冲器;一个8位数据输入缓冲器(输入没有锁存)。 通常端口A或B作为输入输出的数据端口,而端口C作为控制或状态信息的端口,它在方式字的控制下,可以分成两个4位的端口,每个端口包含一个4位锁存器,它们分别与端口A和B配合使用,可以作为控制信号输出,或者作为状态信号输入。2.A组和B组控制电路 这是两组根据CPU的命令字控制8255A工作方式的电路。它们有控制寄存器,接受CPU输出的命令字,然后分别决定两组的工作方式,也可根据CPU的命令字对端口C的每一位实现按位“复位”或“置位”。A组组控控制制电电路路控控制制端端口口A和和端端口口C的的上上半半部部(PC7~~PC4)。。B组组控控制制电电路路控控制制端端口口B和和端端口口C的的下下半半部部(PC3~~PC0)。。3.数数据据总总线线缓缓冲冲器器这是是一一个个三三态态双双向向8位位缓缓冲冲器器,,它它是是8255A芯芯片片与与系系统统数数据据总总线线的的接接口口。。输输入入输输出出的的数数据据,,输输出出的的指指令令以以及及CPU发发出出的的控控制制字字和和外外设设的的状状态态信信息息,,也也都都是是通通过过这这个个缓缓冲冲器器传传送送的的。。4.读读/写写和和控控制制逻逻辑辑它与与CPU的的地地址址总总线线中中的的A1、、A0以以及及有有关关的的控控制制信信号号(RD#,,WR#,,RESET,,IO/M#)相相连连,,由由它它控控制制把把CPU的的控控制制命命令令或或输输出出数数据据送送至至相相应应的的端端口口,,也也由由它它控控制制把把外外设设的的状状态态信信息息或或输输入入数数据据通通过过相相应应的的端端口口,,送送至至CPU。。5.一一些些控控制制命命令令(1)CS#(ChipSelect)————选选片片信信号号,,低低电电平平有有效效,,由由它它启启动动CPU与与8255A芯芯片片之之间间的的通通信信(Communication)。。(2)RD#————读读信信号号,,低低电电平平有有效效。。它它控控制制8255A送送出出数数据据或或状状态态信信息息至至CPU。。(3)WR#————写写信信号号,,低低电电平平有有效效。。它它控控制制把把CPU输输出出的的数数据据或或命命令令信信号号写写到到8255A。。(4)RESET————复复位位信信号号,,高高电电平平有有效效。。它它清清除除控控制制寄寄存存器器,,并并且且置置所所有有端端口口(A、、B、、C)为为输输入入方方式式。。6.端端口口寻寻址址8255A中中有有三三个个输输入入输输出出端端口口,,另另外外,,内内部部还还有有一一个个控控制制字字寄寄存存器器,,共共有有四四个个端端口口,,要要有有两两个个输输入入端端来来加加以以选选择择,,这这两两个个输输入入端端通通常常接接到到地地址址总总线线的的最最低低两两位位A1和和A0。。A1、、A0、、RD#、、WR#及及CS#组组合合所所实实现现的的各各种种功功能能,,如如表表10-1所所示示。。10.2方方式式选选择择可编编程程并并行行接接口口8255A有有三三种种基基本本的的工工作作方方式式::(1)方方式式0(Mode0)————基基本本输输入入输输出出方方式式;;(2)方方式式1(Mode1)————选选通通输输入入输输出出方方式式;;(3)方方式式2(Mode2)————双双向向传传送送方方式式。。如图图10-2所所示示,,它它们们由由CPU输输出出的的控控制制字字来来选选择择。。10.2.1方方式式选选择择控控制制字字可编编程程并并行行接接口口8255A的的工工作作方方式式,,可可由由CPU利利用用I/O指指令令输输出出一一个个控控制制字字到到8255A的的控控制制字字寄寄存存器器来来选选择择。。这这个个控控制制命命令令字字的的格格式式如如图图10-3所所示示。。可可以以分分别别选选择择端端口口A和和端端口口B的的工工作作方方式式,,端端口口C分分成成两两部部分分,,上上半半部部((PC7~PC4))随随端端口口A,,下下半半部部((PC3~PC0))随随端端口口B。。端端口口A有有方方式式0、、1和和2三三种种工工作作方方式式,,而而端端口口B只只能能工工作作于于方方式式0和和1。。10.2.2方方式式选选择择举举例例若有有一一个个8080系系统统,,它它有有两两个个8255A芯芯片片,,分分别别与与不不同同的的外外设设交交换换信信息息,,如如图图10-4所所示示。。要确确定定两两个个8255A的的工工作作方方式式,,就就要要在在输输出出控控制制字字之之前前,,先先确确定定两两个个8255A的的各各自自的的控控制制字字寄寄存存器器的的端端口口地地址址。。I/O端端口口地地址址由由CPU地地址址总总线线的的低低8位位A7~~A0确确定定。。在在本本例例中中,,端端口口地地址址的的考考虑虑如如图图10-5所所示示。。8位位地地址址线线可可选选择择256个个不不同同端端口口,,现现在在地地址址线线最最低低两两位位A0、、A1用用于于8255A内内部部的的端端口口选选择择,,另另外外6位位A2~A7就就用用于于选选择择不不同同的的8255A以以及及其其他他的的外外设设,,在在本本系系统统中中外外设设少少,,故故可可用用线线选选的的方方法法来来选选择择不不同同的的8255A。。因因而而,,两两个个8255A的的各各个个端端口口地地址址如如表表10-2所所示示。。当地地址址确确定定后后,,把把地地址址总总线线的的A0、、A1直直接接接接至至8255A的的A0、、A1输输入入端端,,地地址址总总线线的的其其他他6位位A2~A7应应按按地地址址的的规规定定经经译译码码后后送送至至8255A的的CS#输输入入端端。。若要求求8255A#1的的各个个端口口处在在如下下的工工作方方式::端口A方式式0输输入端口B方式式1输输出端口C(上上半部部)PC7~PC4输出出端口C(下下半部部)PC3~PC0输入入则要用用方式式控制制字=10010101B或或95H。。可用以以下汇汇编程程序来来置上上述工工作方方式::CWR:EQU0FBH;;8255A#1控控制字字寄存存器端端口地地址输输出方方式控控制字字MOVAL,10010101BOUTCWR,,AL10.2.3按按位置置位/复位位功能能端口C的8位中中的任任一位位,可可用一一条输输出指指令来来置位位或复复位(其他他位的的状态态不变变)。。这个个功能能主要要用于于控制制。能能实现现这个个功能能的控控制字字,如如图10-6所所示。。若要使使端口口C的的位3置位位的控控制字字为00000111B,而而使它它复位位的控控制字字为00000110B。相相应的的汇编编程序序为::CWR:EQU0FBH;置位位端口口C位位3MOVAL,00000111BOUTCWR,,AL;复位位端口口C位位3MOVAL,00000110BOUTCWR,,AL注意::使使端口口C按按位置置位或或复位位的控控制字字也是是写入入至控控制字字寄存存器的的。10.3方方式0的功功能10.3.1方方式0的基基本功功能方式0是一一种基基本的的输入入或输输出方方式。。在这这种工工作方方式下下,三三个端端口的的每一一个都都可由由程序序选定定作为为输入入或输输出,,但这这种方方式没没有规规定固固定的的用于于应答答式的的联络络信号号线。。其基基本功功能为为:(1)两两个8位端端口(A,,B)和两两个4位端端口(端口口C);(2)任任一个个端口口可以以作为为输入入或输输出;;(3)输输出是是锁存存的;;(4)输输入是是不锁锁存的的;(5)在在方式式0时时,各各个端端口的的输入入、输输出可可以有有16种不不同的的组合合。在这种种工作作方式式下,,任一一个端端口都都可由由CPU用用简单单的输输入或或输出出指令令来进进行读读或写写。方方式0可作作为查查询式式输入入或输输出的的接口口电路路,此此时端端口A和B可分分别作作为一一个数数据端端口,,而取取端口口C的的某些些位作作为这这两个个数据据端口口的控控制和和状态态信息息。10.3.2方方式式0的时时序1.方方式0的输入入时序在方式0时,基基本的输输入时序序如图10-7所示。。若外设的的数据已已经准备备好,CPU用用输入指指令从8255A读入入这个数数据,则则RD#的宽度度至少应应为300ns,而且且地址信信号必须须在RD#有效效前tAR时间有效效。这样样在RD#有效效后经过过时间tRD,数据即即可在数数据总线线上稳定定。经分析,,在I/O读周周期8088CPU与8255A在时序序上不能能很好配配合,需需要CPU插入入一个等等待状态态。2.方方式0的输出出时序可编程并并行接口口芯片8255A方式式0的基基本输出出时序,,如图10-9所示。。要由写指指令把CPU的的数据输输出给外外设,对对于8255A,要求求写脉冲冲宽度至至少为400ns。且且地址信信号必须须在写信信号前tAW时间有效效。并保保持tWA时间。另另外要写写出的数数据必须须在写信信号结束束前tDW时间有效效(出现现在数据据总线上上),且且保持tWD时间。这这样,在在写信号号后最多多tWB时间,写写出的数数据在输输出端口口出现。。经分分析,I/O写写周期也也要求8088插入一一个等待待状态。。10.4方方式1的的功能这是一种种选通的的I/O方式。。在这种种方式时时,端口口A或端端口B仍仍作为数数据的输输入/输输出口,,但同时时规定端端口C的的某些位位作为控控制或状状态信息息。10.4.1方方式式1的主主要功能能8255A的端端口工作作在方式式1时,,具有以以下主要要功能::(1)用用作一一个或两两个选通通端口;;(2)每每一个个端口包包含:8位的的数据端端口,三三条控制制线(是是固定指指定的,,不能用用程序改改变),,提供中中断逻辑辑;(3)任任何一一个端口口都可作作为输入入或输出出;(4)若若只有有一个端端口工作作于方式式1,余余下的13位,,可以工工作在方方式0(由控制制字决定定);(5)若若两个个端口都都工作于于方式1,端口口C还留留下两位位,这两两位可以以由程序序指定作作为输入入或输出出,也具具有置位位/复位位功能。。10.4.2方方式式1输入入当任一端端口工作作于方式式1输入入时,如如图10-11所示。。其各个个控制信信号的意意义为::STB#(Strobe)———选通通输入,,低电平平有效。。这是由由外设供供给的输输入信号号,当其其有效时时,把输输入装置置来的数数据送入入输入锁锁存器。。IBF(InputBufferFull)——输输入缓冲冲器满,,高电平平有效。。这是一一个8255A输出至至外设的的联络信信号。当当其有效效时,表表示数据据已输入入至输入入锁存器器,它由由STB#信号号置位(高电平平),而而RD#信号的的上升沿沿使其复复位。INTR(InterruptRequest)———中断请请求信号号,高电电平有效效。这是是8255A的的一个输输出信号号,可用用于作为为向CPU的中中断请求求信号,,以要求求CPU服务。。它是当当STB#为高高电平、、IBF为高电电平和INTE(中断断允许)为高电电平时被被置为高高,而由由RD#信号的的下降沿沿清除。。INTEA(InterruptEnableA)——端端口A中中断允许许信号,,可由用用户通过过对PC4的按按位置位位/复位位来控制制(PC4=1,允许许中断)。而INTEB由由PC2的置位位/复位位控制。。方式1的的输入时时序,如如图10-12所示。。当外设设的数数据已已经输输至8255A的端端口数数据线线上,,用选选通信信号把把数据据锁入入8255A的的输入入锁存存器,,选通通信号号的宽宽度至至少为为500ns。。选通通信号号经过过时间间tSIT后,IBF信号号有效效,输输送给给外设设,阻阻止外外设输输入新新的数数据,,也可可供CPU查询询。在在选通通信号号结束束后,,经过过tSIT向CPU发发出INTR信信号(中断断是允允许的的话)。CPU响应应中断断,发发出RD#信号号,把把数据据读入入CPU。。在RD#信号号有效效后经经过tRIT就清除除中断断请求求,当当RD#信信号结结束后后,数数据已已读至至CPU,,使IBF变低低。表表示输输入缓缓冲器器已空空,通通知外外设可可以输输入新新的数数据。。10.4.3方方式1输出出8255A的端端口工工作在在方式式1输输出时时,如如图10-13所示示。1.主主要的的控制制信号号OBF#(OutputBufferFull)———输输出缓缓冲器器满信信号,,低电电平有有效。。这是是8255A输输出给给外设设的一一个控控制信信号。。当其其有效效时,,表示示CPU已已经把把数据据输出出给指指定的的端口口,外外设可可以把把数据据输出出。它它由输输出命命令WR#的上上升沿沿设置置为有有效,,由ACK#的的有效效信号号使其其恢复复为高高。ACK#(Acknowledge)———低电电平有有效,,这是是一个个外设设的响响应信信号,,指示示CPU输输出给给8255A的的数据据已经经由外外设接接收。。INTR———中中断请请求信信号,,高电电平有有效。。当输输出装装置已已经接接收了了CPU输输出的的数据据后,,它用用来作作为向向CPU提提出新新的中中断请请求,,要求求CPU继继续输输出数数据。。当ACK#为为“1”(高电电平),OBF为““1””(高电电平)和INTE为为“1”(高电电平)时,,使其其置位位(高高电平平),,而WR#信号号的下下降沿沿使其其复位位(低低电平平)。。INTEA由PC6的置置位/复位位控制制。而而INTEB由由PC2的的置位位/复复位控控制。。2.时时序8255工工作在在方式式1输输出时时的时时序,,如图图10-14所所示。。用在中中断控控制方方式时时,输输出过过程是是由CPU响应应中断断开始始的,,在中中断服服务程程序中中,CPU输出出数据据和发发出WR#信号号,WR#信号号一方方面清清除INTR(经过过时间间tWIT),另另外在在WR#上上升沿沿,使使OBF有有效,,通知知外设设接收收数据据,实实质上上OBF信信号是是外设设的一一个选选通命命令。。在WR#上升升沿后后经过过tWB时间间数数据据就就输输出出了了,,当当外外设设接接收收数数据据后后,,发发出出ACK#信信号号,,它它一一方方面面使使OBF无无效效(经经过过tAOB),,另另一一方方面面在在ACK#的的上上升升沿沿使使INTR有有效效(经经过过tAIT),,发发出出新新的的中中断断请请求求。。10.5方方式式2的的功功能能这种种工工作作方方式式,,使使外外设设可可以以在在单单一一的的8位位总总线线上上,,既既能能发发送送数数据据也也能能接接收收数数据据(双双向向总总线线I/O)。。工工作作时时可可用用程程序序查查询询方方式式,,也也可可工工作作在在中中断断方方式式。。10.5.1方方式式2的的主主要要功功能能8255A的的端端口口工工作作在在方方式式2时时,,具具有有以以下下主主要要功功能能::(1)方方式式2只只用用于于端端口口A;;(2)一一个个8位位的的双双向向总总线线端端口口(A)和和一一个个5位位控控制制端端口口(端端口口C);;(3)输输入入和和输输出出是是锁锁存存的的;;(4)5位位控控制制端端口口是是用用作作端端口口A的的控控制制和和状状态态信信息息,,如如图图10-15所所示示。。各个个信信号号的的意意义义为为::INTR————中中断断请请求求信信号号,,高高电电平平有有效效。。在在输输入入和和输输出出方方式式时时,,用用来来作作为为向向CPU发发出出的的中中断断请请求求信信号号。。OBF#————输输出出缓缓冲冲器器满满,,低低电电平平有有效效。。这这是是对对外外设设的的一一种种命命令令信信号号,,表表示示CPU已已把把数数据据输输出出至至端端口口A。。ACK#————响响应应信信号号,,低低电电平平有有效效。。ACK#的的有有效效沿沿启启动动端端口口A的的三三态态输输出出缓缓冲冲器器,,送送出出数数据据;;否否则则,,输输出出缓缓冲冲器器处处在在高高阻阻状状态态。。ACK#的的上上升升沿沿是是数数据据已已输输出出的的回回答答信信号号。。INTE1————与与输输出出缓缓冲冲器器相相关关的的中中断断屏屏蔽蔽触触发发器器,,由由PC6的的置置位位/复复位位控控制制。。STB#——选选通输入入,低电电平有效效。这是是外设供供给8255A的选通通信号,,它把输输入数据据选通至至输入锁锁存器。。IBF———输入入缓冲器器满,高高电平有有效。它它是一个个控制信信息,指指示数据据已进入入输入锁锁存器。。在CPU未把把数据读读走前,,IBF始终为为高电平平,阻止止输入设设备送来来新的数数据。INTE2———与输入入缓冲器器相关的的中断屏屏蔽触发发器,由由PC4的置位位/复位位控制。。10.5.2方方式式2的时时序8255A的端端口工作作在方式式2的时时序,如如图10-16所示。。方式2实实质上是是方式1输入与与方式1输出的的组合,,故各个个时间参参数的意意义与方方式1的的相同。。输出是是由CPU执行行输出指指令(给给出I/O的WR#)信号开开始的,,输入是是由选通通信号开开始的。。图上的输输入、输输出的顺顺序是任任意的,,只要WR#在在ACK#以前前发生。。STB#在RD#以以前发生生就行。。在输入和和输出的的情况下下,都可可以用中中断方式式。故INTR=IBF·MASK#·STB#·RD#+OBF#·MASK#·ACK#··WR#其中,MASK#=INTE。10.5.3方方式式2控制制字当端口A工作于于方式2时,端端口B可可以工作作在方式式0或方方式1;;可以作作为输入入,也可可以作为为输出。。此时端端口C的的各位的的功能如如图10-17所示。。若要求8255A工作作于如下下所示的的方式::则方式字字ICW=11000110B=C6H在8255A方方式控制制命令字字已经输输出后,,读端口口C,则则可得到到如下的的方式2状态字字:若要允许许方式2中断,,则可用用端口C的置位位/复位位命令::允许输出出中断,,置PC6,则则控制字字为00001101B。允许输入入中断,,置PC4,控控制字为为00001001B。10.68255应用举举例下面以双双机并行行通信接接口为例例,介绍绍8255的应应用。1.要要求在甲乙两两台微型型计算机机之间并并行传送送1KB数据。。甲机发发送,乙乙机接收收。甲机机一侧的的8255A采采用方式式1工作作,乙机机一侧的的8255A采采用方式式0工作作。两台台微机的的CPU与接口口之间都都采用查查询方式式交换数数据。2.分分析根据要求求,双机机均采用用可编程程并行接接口芯片片8255A构构成接口口电路,,只是8255A的工工作方式式不同。。3.设设计(1)硬硬件连连接。根根据上述述要求,,接口电电路的连连接如图图10-18所所示。甲机8255A为方式式l发送送(输出出),因因此,把把PA口口指定为为输出,,发送数数据,PC7和和PC6引脚由由方式1规定作作为联络络信号线线OBF#和ACK#。乙机机8255A为为方式0接收(输入),把PA口用用作输入入,接收收数据,,联络信信号自行行选择,,可选择择PC4和PC0作为为联络信信号线,,PC4输入、、PC0输出。。虽然,,两侧的的8255A都都设置了了联络信信号线,,但它们们是不同同的,甲甲机8255A工作在在方式1,其联联络信号号PC7、PC6是由由方式1规定的的不可替替换;而而乙机的的8255A工工作在方方式0,,其联络络信号线线是可以以选择的的,比如如可选PC5、、PC1或PC6、PC7等等。(2)软软件编编程①甲甲机发发送程程序::MOVDX,3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年城市轨道交通设备采购框架协议范本3篇
- 无人机物流配送协议
- 二零二五年度大型设备搬运安装合同2篇
- 2024版外聘讲师合作合同模板2篇
- 2025年度柳梅离婚协议书撰写与见证合同3篇
- 2024消防安全管理制度设计与优化合同
- 2025年度碳排放权交易合同标的确定及履行3篇
- 二零二五年度新型环保工地围挡材料供应施工合同2篇
- 二零二五年度建筑工程渣土外运服务合同3篇
- 2024年版高级品质管理专家聘用协议
- T-BIE 003-2023 通孔回流焊接技术规范
- 口腔颌面外科学 09颞下颌关节疾病
- 台达变频器说明书
- 2023年广东罗浮山旅游集团有限公司招聘笔试题库及答案解析
- DB11-T1835-2021 给水排水管道工程施工技术规程高清最新版
- 解剖篇2-1内脏系统消化呼吸生理学
- 《小学生错别字原因及对策研究(论文)》
- 北师大版七年级数学上册教案(全册完整版)教学设计含教学反思
- 智慧水库平台建设方案
- 系统性红斑狼疮-第九版内科学
- 粮食平房仓设计规范
评论
0/150
提交评论