《第10章并行接口芯片8255微机原理ppt课件.ppt》由会员分享,可在线阅读,更多相关《第10章并行接口芯片8255微机原理ppt课件.ppt(146页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第 10 章 并行接口芯片825510.1 可编程并行输入输出接口芯片8255-A的结构10.2 方式选择10.3 方式 0 的功能10.4 方式 1 的功能10.5 方式 2 的功能10.6 8255应用举例并行数据传输方式n并并行行传传输输以以计计算算机机的的字字长长为为传传输输单单位位(通通常常是是8位、位、16位或位或32位),一次传送位),一次传送1个字长的数据个字长的数据n并行传输是并行传输是微机系统中最基本的信息交换方法微机系统中最基本的信息交换方法n例例如如:系系统统板板上上各各部部件件之之间间,接接口口电电路路板板上上各各部部件件之之间间n适适合合于于外外部部设设备备与与微微
2、机机之之间间进进行行近近距距离离、大大量量和和快速的信息交换快速的信息交换n例如:微机与并行接口打印机、磁盘驱动器例如:微机与并行接口打印机、磁盘驱动器74LS373具具有有三三态态输输出出的的透透明明锁锁存器存器TTL工作电平工作电平LE 电平锁存高电平有效电平锁存高电平有效-OE 输出允许输出允许Intel 8282具具有有三三态态输输出出的的透透明明锁存器锁存器TTL工作电平工作电平STB 电平锁存高电平有效电平锁存高电平有效-OE 输出允许输出允许74LS244双双4位单向缓冲器位单向缓冲器分成分成4位的两组位的两组每每组组的的控控制制端端连连接接在一起在一起控制端低电平有效控制端低电
3、平有效输出与输入同相输出与输入同相双向三态缓冲器双双向向三三态态门门具具有有双双向向导通和三态的特性导通和三态的特性ABT-OE-OE0,导通,导通 T1 AB T0 AB-OE1,不导通,不导通Intel 82868位双向缓冲器位双向缓冲器控控制制端端连连接接在在一一起起,低电平有效低电平有效可以双向导通可以双向导通输出与输入同相输出与输入同相-OE0,导通,导通 T1 AB T0 AB-OE1,不导通,不导通74LS2458位双向缓冲器位双向缓冲器控控制制端端连连接接在在一一起起,低电平有效低电平有效可以双向导通可以双向导通输出与输入同相输出与输入同相-E0,导通,导通 DIR1 AB D
4、IR0 AB-E1,不导通,不导通10.1 8255A的结构 8255A是具有多种功能的可编程并行接口电路芯片其内部最基本的接口部件是:三态缓冲器锁存器此外,还包括与CPU的联络电路及与外设的联络电路:状态寄存器控制寄存器端口译码电路控制电路(如读写控制、中断控制)8255有3个8位的数据端口(A/B/C),共24个I/O引脚,各端口共有3种输入输出工作方式基本输入/输出(A/B/C口)选通输入或选通输出(A/B口)双向选通(A口)结构方框图数据数据总线总线缓冲器缓冲器内部控制线内部控制线内部数据线内部数据线D0D7A组组控制控制A组组端口端口C上部上部B组组控制控制B组组端口端口BB组组端口
5、端口C下部下部读写读写控制控制逻辑逻辑PC0PC3CL口口PB0PB7B口口PC4PC7CH口口PA0PA7A口口-RD-WRA0A1-CSRESETA组组端口端口ARESET:高电平有效,清除控制寄存器并置所有端口为输入方式。1.连接外设的数据端口n端口端口A:PA0-PA7,8位端口,支持工作方式位端口,支持工作方式0、1、2n端口端口B:PB0-PB7,8位端口,支持工作方式位端口,支持工作方式0、1n端口端口C:PC0-PC7,拆分为两个,拆分为两个4位端口,仅支持工作方式位端口,仅支持工作方式0n端口端口A:PA0-PA7(A组控制组控制)n常作数据端口使用,功能最强大常作数据端口使
6、用,功能最强大n端口端口B:PB0-PB7(B组控制组控制)n常作数据端口使用常作数据端口使用n端口端口C:PC4-PC7(A组控制组控制),PC0-PC3(B组控制组控制)n可作数据、状态或控制端口使用可作数据、状态或控制端口使用n可拆分成两个可拆分成两个4位端口分别输入或输出位端口分别输入或输出n每位可独立进行输出控制(位控制)每位可独立进行输出控制(位控制)n使用最灵活,较难掌握使用最灵活,较难掌握2.内部控制逻辑A组和B组控制电路两组根据CPU的命令字控制8255A工作方式的电路。它们有控制寄存器控制寄存器,接受CPU输出的命令字,然后分别决定两组的工作方式,也可根据CPU的命令字对端
7、口C的每一位实现按位“复位”或“置位”。A组控制电路控制端口A和端口C的上半部(PC7PC4)。B组控制电路控制端口B和端口C的下半部(PC3PC0)。3.与处理器的接口数据总线缓冲器:三态双向8位缓冲器,负责CPU与8255的数据传输。读/写控制逻辑:CS、RD、WR、A0、A1CS A1 A0 RD WR功功 能能 0 0 0 0 1对端口对端口A 读读 0 0 1 0 1对端口对端口B 读读 0 1 0 0 1对端口对端口C 读读0 1非法,不能对控制口读非法,不能对控制口读输输入入0对端口对端口A 写写0对端口对端口B 写写0对端口对端口C 写写0对控制口对控制口 写写输输出出 1 1
8、 1数据缓冲器为数据缓冲器为 三态三态断断开开 0 1 1 1 1 1 1 0 0 0 0 0 1 0 1 0 0 1 1 引脚图8255A与系统的连接示意图D0D7WRRDA1A0CSDBIOWIORA1A0译码器译码器8255A口口B口口C口口D0D7外设1A15A2系系统统总总线线外设2外设310.2 方式选择n方式方式0:基本输入输出方式基本输入输出方式(不带联络)(不带联络)n适用于无条件传送和查询方式的接口电路适用于无条件传送和查询方式的接口电路n方方式式1:选选通通输输入入输输出出方方式式(带带输输入入联联络络或或输输出出联络)联络)n适用于查询和中断方式的接口电路适用于查询和中
9、断方式的接口电路n方方式式2:双双向向选选通通方方式式(同同时时带带输输入入联联络络和和输输出出联络)联络)n适用于可双向传送数据的外设适用于可双向传送数据的外设n适用于查询和中断方式的接口电路适用于查询和中断方式的接口电路10.2.1 方式选择控制字D7D6D5D4D3D2D1D0101001011 A口工作方式口工作方式 00 方式方式0 01 方式方式1 1x 方式方式2A口输出口输出/输入输入0 输出输出1 输入输入 CH口输口输出出/输入输入0 输出输出1 输入输入 B口工作口工作方式方式0 方式方式0 1 方式方式1B口输口输出出/输入输入0 输出输出1 输入输入CL口输口输出出/
10、输入输入0 输出输出1 输入输入A组控制组控制B组控制组控制表示:表示:A口方式口方式1输出,输出,CH口输出,口输出,B口方式口方式1输入,输入,CL口输入。口输入。A510.2.2 方式选择举例8086片选译码1#11111000-11111011F8H-FBH2#11110100 11110111F4H-F7H控制字若要求若要求8255A#1的各个端口处在如下的工作方式:的各个端口处在如下的工作方式:端口A方式0输入端口B方式1输出端口C(上半部)PC7PC4输出端口C(下半部)PC3PC0输入MOV AL,10010101BOUT0FBH,AL要要求求:设设置置A口口工工作作在在方方式
11、式2,B口口位位方方式式1输输入入,8255的控制字的控制字方式字ICW=11000110B=C6H10.2.3 按位置位/复位功能n位位控控字字用用于于控控制制C口口的的输输出出引引脚脚(CH/CL口口工工作作于于基基本本方式)或方式)或内部的中断允许位内部的中断允许位(A/B口工作于选通方式),口工作于选通方式),n位控字位控字应写入应写入8255的的控制口控制口,例如:,例如:mov al,0dh out 控制口控制口,aln当当CH工作在工作在非选通输出非选通输出方式时,令方式时,令PC6引脚引脚输出输出1;n当当A口口工工作作在在选选通通输输出出或或双双向向选选通通输输出出方方式式时
12、时,将将相相应应的的中断允许位中断允许位INTEA或或INTE1置置1(开中断)。(开中断)。D7D6D5D4D3D2D1D00标志标志xxx位编码位编码位位数据数据0 xxx11010dh10.3 方式0的功能(1)两个两个8位端口位端口(A,B)和两个和两个4位端口位端口(端口端口C);(2)任一个端口可以作为输入或输出;任一个端口可以作为输入或输出;(3)输出是锁存的;输出是锁存的;(4)输入是不锁存的;输入是不锁存的;(5)在在方方式式0时时,各各个个端端口口的的输输入入、输输出出可可以以有有16种种不同的组合。不同的组合。8255A在方式0工作时,CPU可以采用无条件读写方式无条件读
13、写方式与8255A交换数据;如果把C口的两个部分用作控制和状态口,与外设的控制和状态端相连,CPU也可以通过对C口的读写,实现A口与B口的查询方式查询方式工作;方式0中,不允许采用中断方式不允许采用中断方式工作。输入缓冲器译码器数据数据DBDBABAB外设8nRDIO/M输出锁存器译码器数据数据DBDBABAB外设8nWRIO/M方式0的输入时序(数据来自外设)外设提供数据外设提供数据输入端口输入端口D0D7-RD-CS、A1A0请体会这里请体会这里8255A的数据缓冲作用的数据缓冲作用数据数据8255外设外设CPU内总线内总线外总线外总线方式0的输出时序(数据来自CPU)-WRCPU数据数据
14、数据数据输出端口输出端口D0D7-CS、A1A08255A对对CPU输出的数据进行锁存输出的数据进行锁存8255外设外设CPU内总线内总线外总线外总线需要插入Tw周期10.4 方式1的功能(1)用作一个或两个选通端口;(2)每一个端口包含:8位的数据端口,三条控制线(是固定指定的,不能用程序改变),提供中断逻辑;(3)任何一个端口都可作为输入或输出;(4)若只有一个端口工作于方式1,余下的13位,可以工作在方式0(由控制字决定);(5)若两个端口都工作于方式1,端口C还留下两位,这两位可以由程序指定作为输入或输出,也具有置位/复位功能。8255方式1的特点(1)方式1是一种选通输入/输出方式,
15、因此,需设置专用的联络信号线或应答信号线,以便对I/O设备和CPU两侧进行联络。这种方式通常用于查询(条件)传送或中断传送。数据的输入输出都有锁存能力。(2)PA和PB为数据口,而PC口的大部分引脚分配作专用(固定)的联络信号用,对已经分配做联络信号的C口引脚,用户不能再指定做其它用途。(3)各联络信号之间有固定的时序关系,传送数据时,要严格按照时序进行。(4)输入/输出操作过程中,产生固定的状态字,这些状态信息可作为查询或中断请求之用。状态字从PC口读取。(5)单向传送。一次初始化只能设置在一个方向上传送,不能同时作两个方向的传送。方式1输入引脚:端口APC4PC5PC3PA7PA0INTE
16、AIBFAINTRA-STBA中断允许触发器中断允许触发器输入缓冲器满信号输入缓冲器满信号表示表示A口已经接收数据口已经接收数据数据选通信号数据选通信号表示外设已经准备好数据表示外设已经准备好数据中断请求信号中断请求信号请求请求CPU接收数据接收数据外设数据外设数据征用征用C口口3引脚和引脚和1个控制位个控制位INTEA可通过对PC4的按位置位/复位来控制。方式1输入引脚:端口BPC2PC1PC0PB7PB0INTEBIBFBINTRB-STBB中断允许触发器中断允许触发器输入缓冲器满信号输入缓冲器满信号表示表示B口已经接收数据口已经接收数据数据选通信号数据选通信号表示外设已经准备好数据表示外
17、设已经准备好数据中断请求信号中断请求信号请求请求CPU接收数据接收数据外设数据外设数据征用征用C口口3引脚和引脚和1个控制位个控制位INTEB可通过对PC2的按位置位/复位来控制。方式1 输入 联络信号n-STB选通信号,低电平有效选通信号,低电平有效n由由外外设设提提供供的的输输入入信信号号,当当其其有有效效时时,将将输输入入设设备备送送来的数据锁存至来的数据锁存至8255A的输入锁存器的输入锁存器nIBF输入缓冲器满信号,高电平有效输入缓冲器满信号,高电平有效n8255A输输出出的的联联络络信信号号。当当其其有有效效时时,表表示示数数据据已已锁锁存在输入锁存器存在输入锁存器nINTR中断请
18、求信号,高电平有效中断请求信号,高电平有效n8255A输输出出的的信信号号,可可用用于于向向CPU提提出出中中断断请请求求,要要求求CPU读取外设数据读取外设数据方式1 输入 时序外设数据外设数据INTRIBF 数据数据输入端口输入端口D0D7-STB-RD-STB和和IBF是外设和是外设和8255A间的一对应答联络信号,间的一对应答联络信号,为的是可靠地输入数据为的是可靠地输入数据方式1中断控制n8255A的中断由中断允许触发器的中断由中断允许触发器INTE控制控制n置位允许中断,复位禁止中断置位允许中断,复位禁止中断n对对INTE的的操操作作通通过过写写入入端端口口C的的对对应应位位实实现
19、现,INTE触触发发器器对对应应端端口口C的的位位是是作作应应答答联联络络信信号号的的输输入入信信号号的的哪哪一一位位,只只要要对对那那一一位位置置位位/复复位位就可以控制就可以控制INTE触发器触发器n选通输入方式下选通输入方式下n端口端口A的的INTEA对应对应PC4n端口端口B的的INTEB对应对应PC2方式1输出引脚:端口APC6PC7PC3PA7PA0INTEA-OBFAINTRA-ACKA输出缓冲器满信号输出缓冲器满信号表示表示CPU已经输出了数据已经输出了数据外设响应信号外设响应信号表示外设已经接收到数据表示外设已经接收到数据中断请求信号中断请求信号请求请求CPU再次输出数据再次
20、输出数据征用征用C口口3引脚和引脚和1个控制位个控制位中断允许触发器中断允许触发器通过位控通过位控PC6 设置设置INTEA输出数据输出数据方式1输出引脚:端口BPC2PC1PC0PB7PB0INTEB-OBFBINTRB-ACKB输出缓冲器满信号输出缓冲器满信号表示表示CPU已经输出了数据已经输出了数据外设响应信号外设响应信号表示外设已经接收到数据表示外设已经接收到数据中断请求信号中断请求信号请求请求CPU再次输出数据再次输出数据征用征用C口口3引脚和引脚和1个控制位个控制位中断允许触发器中断允许触发器通过位控通过位控PC2设置设置INTEB输出数据输出数据方式1输出联络信号n-OBF输出缓
21、冲器满信号,低电平有效输出缓冲器满信号,低电平有效n8255A输输出出给给外外设设的的一一个个控控制制信信号号,当当其其有有效效时时,表表示示CPU已已将将输输出出数数据据锁锁存存在在8255A指指定定的的端端口口,外外设设可以来取可以来取n-ACK响应信号,低电平有效响应信号,低电平有效n外外设设提提供供的的响响应应信信号号,通通知知8255A其其端端口口数数据据已已被被外外设接收设接收nINTR中断请求信号,高有效中断请求信号,高有效n当当输输出出设设备备已已接接受受数数据据后后,8255A输输出出此此信信号号向向CPU提出中断请求,要求提出中断请求,要求CPU继续提供数据继续提供数据端口
22、端口A的的INTEA对应对应PC6端口端口B的的INTEB对应对应PC2方式1 输出 时序8255外设外设CPU内总线内总线外总线外总线 INTR CPU数据数据数据数据输出端口输出端口D0D7-WR-OBF-ACK-OBF和和-ACK是外设和是外设和8255A间的一对应答联络间的一对应答联络信号,为的是可靠地输出数据信号,为的是可靠地输出数据10.5 方式2 双向选通方式n方方式式2将将方方式式1的的选选通通输输入入与与选选通通输输出出功功能能组组合合成成一个双向数据端口,可以发送数据和接收数据一个双向数据端口,可以发送数据和接收数据n只只有有端端口口A可可以以工工作作于于方方式式2,需需要
23、要利利用用端端口口C的的5个信号线,其作用与方式个信号线,其作用与方式1相同相同n方式方式2的数据输入过程与方式的数据输入过程与方式1的输入方式一样的输入方式一样n方方式式2的的数数据据输输出出过过程程与与方方式式1的的输输出出方方式式有有一一点点不不同同:数数据据输输出出时时8255A不不是是在在-OBF有有效效时时向向外外设设输输出出数数据据,而而是是在在外外设设提提供供响响应应信信号号-ACK有有效效时时才送出数据才送出数据方式2 双向选通引脚PC6PC7PC3PA7PA0INTE1-OBFAINTRA-ACKAPC4PC5IBFA-STBAINTE2数据数据输入中断和输出中断输入中断和
24、输出中断通过或门输出通过或门输出INTRA信号信号征用征用C口口5引脚和引脚和2个控制位个控制位中断允许触发器中断允许触发器(控制中断输出)(控制中断输出)通过位控通过位控PC6设置设置INTE1中断允许触发器中断允许触发器(控制中断输出)(控制中断输出)通过位控通过位控PC4设置设置INTE2输入联络输入联络输入联络输入联络输出联络输出联络输出联络输出联络方式2 双向选通时序该例中:该例中:CPU先输出数据,再读取外设输入的数据先输出数据,再读取外设输入的数据 INTR 输出数据输出数据输入数据输入数据输入数据输入数据PA0PA7D0D7IBF-WR-OBF-ACK-STB-RD输出数据输出
25、数据D7D6D5D4D3D2D1D0方式方式1 输入(输入(A口、口、B口)口)I/OI/OIBFAINTEA INTRAINTEBIBFBINTRB方式方式1 输出(输出(A口、口、B口)口)OBFAINTEAI/OI/OINTRAINTEBOBFBINTRB方式方式2 双向(双向(A口)口)OBFAINTE1IBFAINTE2INTRAA口B口在不同工作方式下从端口C读到状态字A组控制组控制B组控制组控制方式方式1 输入(输入(B口)口)INTRAINTE2IBFAINTE1OBFAINTRBOBFBINTEB方式方式2 双向(双向(A口)口)方式方式1 输出(输出(B口)口)INTRBI
26、BFBINTEBI/OD0D1D2D3D4D5D6D7A口工作在方式2,B口在不同工作方式下从端口C读到状态字A组控制组控制B组控制组控制I/OI/O方式方式0(B口)口)方式2的中断若若要要允允许许方方式式2中中断断,则则可可用用端端口口C的的置置位位/复复位命令:位命令:允允许许输输出出中中断断,置置PC6,则则控控制制字字为为00001101B。允允 许许 输输 入入 中中 断断,置置 PC4,控控 制制 字字 为为00001001B。1.向控制口写方式字n要求:要求:nA口:方式口:方式1输入输入nCH口:输出口:输出nCL口:输入口:输入nB口:方式口:方式0输出输出n方式控制字:方
27、式控制字:1 0110 001 B或或B1Hn初始化的程序段:初始化的程序段:mov dx,0fffeh;假设控制端口为假设控制端口为FFFEHmov al,0b1h;方式控制字方式控制字out dx,al;送到控制端口送到控制端口编程实例编程实例2.读写数据端口(A口/B口/C口)n初始化编程后:初始化编程后:n当当数数据据端端口口作作为为输输入入接接口口时时,CPU执执行行输输入入IN指指令令,CPU将从输入设备得到外设数据将从输入设备得到外设数据n当当数数据据端端口口作作为为输输出出接接口口时时,CPU执执行行输输出出OUT指指令令,将把将把CPU的数据送给输出设备的数据送给输出设备n8
28、255A具有锁存输出数据的能力具有锁存输出数据的能力n对设置为输出的端口同样可以输入(读)对设置为输出的端口同样可以输入(读)n此此时时不不是是读读取取外外设设数数据据,而而是是读读取取的的是是前前次次CPU输输出出给外设的数据(锁存在锁存器中)给外设的数据(锁存在锁存器中)2.读写数据端口n利利用用8255A的的输输出出锁锁存存能能力力,可可实实现现对对某某一一位位的的输出控制输出控制 n对输出端口对输出端口B的的PB7位置位的程序段:位置位的程序段:mov dx,0fffah;B端口假设为端口假设为FFFAHin al,dx;读出读出B端口原输出内容端口原输出内容or al,80h;使使P
29、B71out dx,al;输出新的内容输出新的内容3.涉及C口的操作归纳1n在在控控制制上上,C口口上上半半部部(CH)和和A口口被被编编为为A组组,C口口下下半半部部(CL)和和B口口被被编编为为B组组。即即它它被被拆拆分分成成两两个个4位位端端口口分分别进行控制别进行控制:n两个两个4位端口均只能工作于位端口均只能工作于方式方式0(指未被征用的引脚)(指未被征用的引脚)n但可但可分别选择输入或者输出分别选择输入或者输出nC口具有唯一的地址,可按口具有唯一的地址,可按8位方式进行读位方式进行读/写写,此时:,此时:n设置为输出的引脚可读可写(输出锁存器)设置为输出的引脚可读可写(输出锁存器)
30、n设置为输入的引脚可读(引脚)、写操作无意义设置为输入的引脚可读(引脚)、写操作无意义n在在选选通通方方式式下下,对对被被征征用用的的引引脚脚可可读读(分分别别映映射射到到中中断断允允许许位位、输入输入/输出缓冲器状态位输出缓冲器状态位、中断请求状态位中断请求状态位)。)。nC口还可通过口还可通过位控字位控字进行进行按位的写按位的写(只写(只写C口口1位):位):n对设置为输出的引脚可写(输出锁存器)对设置为输出的引脚可写(输出锁存器)n在选通方式下,对被征用的输入引脚可写(映射到中断允许位)在选通方式下,对被征用的输入引脚可写(映射到中断允许位)3.涉及C口的操作归纳2n当当A和和B口口工工
31、作作在在方方式式1或或方方式式2时时,C口口的的部部分分引引脚脚或或全部引脚全部引脚将将被征用:被征用:nA口方式口方式1将征用将征用C口口3个引脚:个引脚:n输出:输出:PC6/PC7(输出联络)(输出联络),PC3(中断)(中断)n输入:输入:PC4/PC5(输入联络)(输入联络),PC3(中断)(中断)nB口方式口方式1将征用将征用C口口3个引脚:个引脚:n输出:输出:PC2/PC1(输出联络),(输出联络),PC0(中断(中断)n输入:输入:PC2/PC1(输入联络),(输入联络),PC0(中断(中断)nA口方式口方式2将征用将征用5个引脚:个引脚:nPC4/PC5(输入联络),(输入
32、联络),PC6/PC7(输出联络(输出联络),),PC3(中断)(中断)nC口口未未被被征征用用的的引引脚脚仍仍将将工工作作在在方方式式0,但但必必须须成成组组进进行行设设置置,即即CH或或CL中中的的引引脚脚必必须须同同为为输输入入或或同同为输出。为输出。3.涉及C口的操作归纳3n对对C口的数据输出有两种办法口的数据输出有两种办法n向向C口口直直接接写写字字节节数数据据该该数数据据将将被被写写进进C端端口口的的输输出出锁锁存存器器中中,并并从从设设置置为为输输出出的的引引脚脚输输出出,但但对对设设置置为输入的引脚无效。为输入的引脚无效。n向向控控制制口口写写位位控控字字使使C口口设设置置为为
33、输输出出的的某某个个引引脚脚输输出出1或或0。n在在选选通通方方式式下下向向控控制制口口写写位位控控字字还还可可置置位位或或复复位位8255内内部部的的中中断断允允许许触触发发器器。在在选选通通方方式式下下,该该触触发发器已被映射在器已被映射在C口被征用的某个输入引脚上。口被征用的某个输入引脚上。3.涉及C口的操作归纳4n读取读取C口数据有两种情况:口数据有两种情况:n针对未被针对未被A和和B端口征用的引脚端口征用的引脚:n将从定义为输入的位读到将从定义为输入的位读到引脚上的输入引脚上的输入信息信息n将从定义为输出的位读到前次将从定义为输出的位读到前次输出锁存的输出锁存的信息信息n针对已被针对
34、已被A和和B端口征用作为联络线的引脚端口征用作为联络线的引脚:n将将读读到到反反映映8255A工工作作状状态态的的状状态态字字,其其中中包包括:括:n数据缓冲器的状态(数据缓冲器的状态(-OBFx 或或 IBFx)n中断允许的状态(中断允许的状态(INTEx)n中断请求的状态(中断请求的状态(INTRx)D7D6D5D4D3D2D1D0方式方式1 输入(输入(A口、口、B口)口)I/OI/OIBFAINTEA INTRAINTEBIBFBINTRB方式方式1 输出(输出(A口、口、B口)口)OBFAINTEAI/OI/OINTRAINTEBOBFBINTRB方式方式2 双向(双向(A口)口)O
35、BFAINTE1IBFAINTE2INTRA从端口C读到状态字A组控制组控制B组控制组控制10.6 8255A的应用n作作为为通通用用的的并并行行接接口口电电路路芯芯片片,825A具具有广泛的应用,如有广泛的应用,如:n应用在应用在IBM PC/XT微机上微机上n应用于打印机接口电路应用于打印机接口电路n用于连接简易键盘用于连接简易键盘n用于驱动用于驱动LED数码管数码管n等等等等10.6.4 双机并行通信接口PA0PA7PC4PC08255A甲方(发送)甲方(发送)方式方式1 输出输出PA0PA7PC7PC68255A乙方(接收)乙方(接收)方式方式0 输入输入-OBF-ACKCPU查询引脚
36、输入查询引脚输入有效时,读数据有效时,读数据并输出应答信号并输出应答信号两机均采用查询方式工作两机均采用查询方式工作CPU查询查询中断请求标志中断请求标志,亦可查询亦可查询输出缓冲器状态输出缓冲器状态甲机的初始化mov dx,0fffeh ;控制端口控制端口mov al,0a0h ;方式字方式字1 0100 000:A口方式口方式1输出输出out dx,almov al,0dh ;令令INTEA(PC6)1,允许中断输出,允许中断输出out dx,al例10.3设设8255A的四个端口地址为:的四个端口地址为:A口口-FFF8HB口口-FFFAHC口口-FFFCH控制端口控制端口-FFFEH甲
37、机发送程序trsmt:mov dx,0fffch ;C口地址口地址in al,dx ;读读C口口and al,08h ;查询查询INTRA(PC3)jz trsmt;为为0,无中断请求,继续查,无中断请求,继续查mov dx,0fff8h;否则,发送数据否则,发送数据mov al,ahout dx,al例10.3乙机的初始化mov dx,0fffehmov al,98h ;方式字方式字1 0011 000:A口方式口方式0输入输入out dx,almov al,01h ;令应答信号(令应答信号(PC0)1(初始无效)(初始无效)out dx,al例10.3乙机:查询接收receive:mov
38、dx,0fffchin al,dx;读读C口口and al,10h ;查询甲机的写选通信号(查询甲机的写选通信号(PC4)jnz receive;为为1时无效(甲未发数据),时无效(甲未发数据),;继续查询继续查询 mov dx,0fff8h;接收数据接收数据in al,dxmov ah,al ;数据保存于数据保存于ah例10.3乙机:接收响应mov dx,0fffehmov al,00h ;应答信号(应答信号(PC0)0(有效)(有效)out dx,alnop ;适当延时,产生一定宽度的有效负脉冲适当延时,产生一定宽度的有效负脉冲nopmov al,01h ;应答信号(应答信号(PC0)1(无效)(无效)out dx,al例10.3