《最新微机原理第10章并行接口芯片8255PPT课件.ppt》由会员分享,可在线阅读,更多相关《最新微机原理第10章并行接口芯片8255PPT课件.ppt(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、微机原理第微机原理第1010章并行接口芯片章并行接口芯片82558255概述概述 并行接口:实现并行通信的接口就是并行接口,是在并行接口:实现并行通信的接口就是并行接口,是在多根数据线上,以字节多根数据线上,以字节/字为单位与字为单位与I/O设备交换数据设备交换数据 计算机与外设交换信息的过程中:计算机与外设交换信息的过程中:并行通信并行通信:多位数据通过多条数据线同时传送。多位数据通过多条数据线同时传送。串行通信串行通信:多位数据通过同一条数据线按位传送。多位数据通过同一条数据线按位传送。并行通信就是把一个字符的各数位用几条线同时进行传并行通信就是把一个字符的各数位用几条线同时进行传输。与串
2、行通信(一位一位传输)相比,在相同传输率下,输。与串行通信(一位一位传输)相比,在相同传输率下,并行通信的信息实际传输速度快、信息率高。但并行通信并行通信的信息实际传输速度快、信息率高。但并行通信比串行通信所用电缆多,随着距离的增加,电缆的开销会比串行通信所用电缆多,随着距离的增加,电缆的开销会成为突出的问题。所以,成为突出的问题。所以,并行通信总是用在数据传输率要并行通信总是用在数据传输率要求较高,而传输距离较短的场合求较高,而传输距离较短的场合。6 6端口寻址端口寻址8255A中中有有三三个个输输入入输输出出端端口口,另另外外,内内部部还还有有一一个个控控制制字字寄寄存存器器,共共有有四四
3、个个端端口口,要要有有两两个个输输入入端端来来加加以以选选择择,这这两两个个输输入入端端通通常常接接到到地地址址总总线线的的最最低低两两位位A1和和A0。(1)(1)与外设一边相连的引脚与外设一边相连的引脚 PA PA7 7PAPA0 0:端口:端口A A数据线。数据线。PB PB7 7PBPB0 0:端口:端口B B数据线。数据线。PC PC7 7PCPC0 0:端口:端口C C数据线。数据线。(2)(2)与与CPUCPU相连的引脚相连的引脚 D D7 7D D0 0:双双向向数数据据线线,与与系系统统数数据据总总线线相相连连。CPUCPU通通过过它它向向8255A8255A发发送送命命令令
4、、数数据据;8255A8255A向向CPUCPU回送状态、数据。回送状态、数据。CSCS:片片选选信信号号,低低电电平平有有效效。由由系系统统地地址址总总线线经经地地址址译译码码器器产产生生,是是8255A8255A芯芯片片被被选选中中的的信信号号。只只有有信信号号有有效效,CPUCPU才才能能对对8255A8255A进进行行读读写写。当当为为高高电平时,切断电平时,切断CPUCPU与芯片的联系。与芯片的联系。RDRD:读读信信号号,低低电电平平有有效效。与与系系统统读读控控制制线线相相连连,当当有有效效时时,CPUCPU可可以以从从8255A8255A中中读读取取输输入入数数据。据。WR W
5、R:写写信信号号,低低电电平平有有效效。与与系系统统写写控控制制线线相相连连,当当有有效效时时,CPUCPU可可以以向向8255A8255A写写入入控控制制字字或或数据,完成输出指令的功能。数据,完成输出指令的功能。A A1 1、A A0 0:端端口口选选择择信信号号。与与系系统统地地址址总总线线低低位位相相连连,用用来来对对8255A8255A内内部部三三个个数数据据端端口口及及一一个个控制端口寄存器进行寻址。控制端口寄存器进行寻址。RESET RESET:复位信号,高电平有效。与系统复:复位信号,高电平有效。与系统复位信号线,或自行设置的复位信号线相连。复位造位信号线,或自行设置的复位信号
6、线相连。复位造成的结果是把所有内部寄存器清成的结果是把所有内部寄存器清“0”“0”,且三个数,且三个数据端口被自动设置为输入端口。据端口被自动设置为输入端口。二二.8255A.8255A引脚说明引脚说明(3)(3)电源和地线:电源和地线:VccVcc和和GNDGND。8255A8255A的控制信号和传输动作的对应关系的控制信号和传输动作的对应关系CSCSA A1 1A A0 0RDRDWRWR传输说明传输说明0 00 00 00 01 1数据从口数据从口A A送到数据总线送到数据总线0 00 01 10 01 1数据从口数据从口B B送到数据总线送到数据总线0 01 10 00 01 1数据从
7、口数据从口C C送到数据总线送到数据总线0 00 00 01 10 0数据从数据总线送端口数据从数据总线送端口A A0 00 01 11 10 0数据从数据总线送端口数据从数据总线送端口B B0 01 10 01 10 0数据从数据总线送端口数据从数据总线送端口C C0 01 11 11 10 0D D7 7=1=1,则由数据总线往控制寄存器写入控,则由数据总线往控制寄存器写入控制字;制字;D D7 7=0=0,则由数据总线输入的数据作,则由数据总线输入的数据作为对口为对口C C的置位的置位/复位命令复位命令1 1X XX XX XX XD D7 7DD0 0进入高阻抗状态进入高阻抗状态0 0
8、1 11 10 01 1非法的信号组合非法的信号组合0 0X XX X1 11 1D D7 7DD0 0进入高阻抗状态进入高阻抗状态10.2 方式选择方式选择8255A有三种基本的工作方式。有三种基本的工作方式。(1)方式)方式0(Mode 0)基本输入基本输入/输出;输出;(2)方式)方式1(Mode 1)选通输入选通输入/输出;输出;(3)方式)方式2(Mode 2)双向传送。双向传送。8255A的的工工作作方方式式,可可由由CPU用用I/O指指令令输输出出一一个个控控制制字字到到8255A的的控控制制字字寄寄存存器器来来选选择择。这这个个控控制制命命令令字字的的格格式式如如图图所所示示。
9、可可以以分分别别选选择择端端口口A和和端端口口B的的工工作作方方式式,端端口口C分分成成两两部部分分,上上半半部部随随端端口口A,下下半半部部随随端端口口B。端端口口A能工作于方式能工作于方式0、1和和2,而端口,而端口B只能工作于方式只能工作于方式0和和1。对对A A1 1A A0 0=11=11的端口写入的端口写入D D7 7=1=1的数据的数据工作方式控制字:工作方式控制字:端端口口C的的8位位中中的的任任一一位位,可可用用一一条条输输出出指指令令来来置置位位或或复复位位(其其它它位位的的状状态态不不变变)。这这个个功能主要用于控制。功能主要用于控制。对对A A1 1A A0 0=11=
10、11的端口写入的端口写入D D7 7=0=0的数据表示对口的数据表示对口C C进行位操作。进行位操作。(注意:对(注意:对A A1 1A A0 0=10=10的端口操作表示对的端口操作表示对C C口进行字节操作。)口进行字节操作。)端口端口C置置1/置置0控制字:控制字:1 1 例如,设一片例如,设一片8255A8255A的口地址为的口地址为60H60H63H63H,PCPC5 5平时为低平时为低电平,要求从电平,要求从PCPC5 5的引脚输出一个正脉冲。的引脚输出一个正脉冲。可以用程序先将可以用程序先将PCPC5 5置置1 1,输出一个高电平,再把,输出一个高电平,再把PCPC5 5清清O
11、O,输出一个低电平,结果,输出一个低电平,结果,PCPC5 5引脚上便输出一个正脉冲。引脚上便输出一个正脉冲。实现这个功能的程序段如下:实现这个功能的程序段如下:MOV ALMOV AL,00001011B00001011BOUT 63HOUT 63H,ALALMOV ALMOV AL,00001010B00001010BOUT 63HOUT 63H,ALAL2 2、A A口口方方式式0 0,输输出出、B B口口方方式式0 0,输输入入,C C口口高高4 4位位输输出出,C C口低口低4 4位输入位输入 MOV AL MOV AL,1000 0011B1000 0011B OUT 63H OU
12、T 63H,AL AL 3 3、PC7PC7置置1 1,PC3PC3置置0 0MOV DXMOV DX,263H263HMOV ALMOV AL,0000 1111B0000 1111B;PC7PC7置置1 1OUT DXOUT DX,ALALMOV ALMOV AL,0000 0110B0000 0110B;PC3PC3置置0 0OUT DXOUT DX,ALAL10.3 方式方式 0 的功能的功能方方式式0是是一一种种基基本本的的输输入入或或输输出出方方式式。在在这这种种工工作作方方式式下下,方方式式0不不使使用用联联络络信信号号,也也不不使使用用中中断断,A口口和和B口口可可定定义义为为
13、输输入入或或输输出出口口,C口口分分成成两两个个部部分分(高高四四位位和和低低四四位位),C口口的的两两个个部部分分也也可可分分别别定定义义为为输输入入或或输输出出。在在方方式式0,所所有有口口输输出出均均有有锁锁存存,输输入入只只有有缓缓冲冲,但但无无锁锁存存,C口口还还具具有有按按位位将将其其各各位位清清0或置或置1的功能。的功能。10.4 方式方式1的功能的功能A口口借借用用C口口的的一一些些信信号号线线用用作作控控制制和和状状态态线线,形形成成A组组,B口口借借用用C口口的的一一些些信信号号线线用用作作控控制制和和状状态态线线,组组成成B组组。在在方方式式1下下,A口口和和B口口的的输
14、输入入输输出出均均带带有有锁锁存。存。A口、口、B口可以分别作为数据口工作在方式口可以分别作为数据口工作在方式1。需需要要使使用用C口口中中特特定定的的引引脚脚作作为为选选通通和和应应答答使使用用。C口口中中其其余余的的引引脚脚仍仍可可工工作作在在方方式式0,定定义义为为输输入入或或输输出出使用。使用。适合用于中断式传送和程序查询方式适合用于中断式传送和程序查询方式I/O传送。传送。数据选通信号数据选通信号表示外设已经准备好数据表示外设已经准备好数据输入缓冲器满信号输入缓冲器满信号表示表示A A口已经接收数据口已经接收数据中断请求信号中断请求信号请求请求CPUCPU接收数据接收数据中断允许触发
15、器中断允许触发器PCPC4 4PCPC5 5PCPC3 3PAPA7 7PAPA0 0INTEINTEA AIBFIBFA AINTRINTRA ASTBSTBA AA A口、方式口、方式1 1、输入、输入RDRDD D7 7DD0 0可通过对可通过对PC4PC4置位或复位来设置置位或复位来设置INTEaINTEa。说明:当外设数据准备好以后,发出一个负脉冲选通信号当外设数据准备好以后,发出一个负脉冲选通信号STB,使,使A口打开锁存器接收数据。口打开锁存器接收数据。A口接收到数据以后,发出口接收到数据以后,发出IBFA,由,由RD信号的上升信号的上升沿使沿使IBFA恢复低电平。恢复低电平。S
16、TB和和IBFA都变为高电平以后,如果都变为高电平以后,如果INTEA允许,则允许,则8255A发出中断请求信号,以便使发出中断请求信号,以便使CPU接收数据。接收数据。RD信号的下降沿使信号的下降沿使INTRA恢复低电平。恢复低电平。可以通过对可以通过对PC4的置位和复位来设置的置位和复位来设置INTEA。PCPC2 2PCPC1 1PCPC0 0PBPB7 7PBPB0 0INTEINTEB BIBFIBFB BINTRINTRB BSTBSTBB BB B口、方式口、方式1 1、输入、输入RDRDD D7 7DD0 0可通过对可通过对PC2PC2置位或复位来设置置位或复位来设置INTEB
17、INTEB。外设响应信号外设响应信号表示外设已经接收到表示外设已经接收到数据数据输出缓冲器满信号输出缓冲器满信号表示表示CPUCPU已经输出了已经输出了数据数据中断请求信号中断请求信号请求请求CPUCPU再次输出数据再次输出数据PCPC6 6PCPC7 7PCPC3 3PAPA7 7PAPA0 0INTEINTEA AOBFOBFA AINTRINTRA AACKACKA AA A口、方式口、方式1 1、输出、输出D D7 7DD0 0WRWR中断允许触发器中断允许触发器可通过对可通过对PC6PC6置位或复位来设置置位或复位来设置INTEaINTEa。说明:说明:当当CPU向端口向端口A输出数
18、据以后,在输出数据以后,在WR的上升沿使的上升沿使OBFA变为低电平。变为低电平。当外设接收到数据以后,发出一个负脉冲当外设接收到数据以后,发出一个负脉冲ACKA送给送给8255A,使,使OBFA变为高电平。变为高电平。ACKA和和OBFA都变为高电平以后,如果都变为高电平以后,如果INTEA允许,允许,则则8255A发出中断请求信号,以便使发出中断请求信号,以便使CPU再次输出数再次输出数据。据。WR的下降沿使的下降沿使INTRA恢复低电平。恢复低电平。可以通过对可以通过对PC6的置位和复位来设置的置位和复位来设置INTEA。PCPC2 2PCPC1 1PCPC0 0PBPB7 7PBPB0
19、 0INTEINTEB BOBFOBFB BINTRINTRB BACKACKB BD D7 7DD0 0WRWRB B口、方式口、方式1 1、输出、输出可通过对可通过对PC2PC2置位或复位来设置置位或复位来设置INTEBINTEB。10.5 方式方式2的功能的功能方方式式2是是A组组独独有有的的工工作作方方式式。外外设设既既能能在在A口口的的8条条引引线线上上发发送送数数据据,又又能能接接收收数数据据。此此方方式式也也是是借借用用C口口的的5条条信信号号线线作作控控制制和和状状态态线线,A口口的的输输入入和和输输出出均均带带有有锁锁存。存。A A口可以作为数据口工作在方式口可以作为数据口工
20、作在方式2 2。相当于是。相当于是A A口工作口工作在方式在方式1 1的输入和输出的叠加。的输入和输出的叠加。PCPC6 6PCPC7 7PCPC3 3PAPA7 7PAPA0 0INTEINTE1 1OBFOBFA AINTRINTRA AACKACKA APCPC4 4PCPC5 5IBFIBFA ASTBSTBA AINTEINTE2 2用用PCPC6 6设置设置INTEINTE1 1,用用PCPC4 4设置设置INTEINTE2 2。输入和输出中断通过输入和输出中断通过或门输出或门输出INTRINTR信号。信号。D D7 7DD0 0WRWRRDRD8255应用举例应用举例 P319双
21、机并行通信接口双机并行通信接口乙机(接收)乙机(接收)甲机(发送)甲机(发送)CPUCPU PA PA0 07 7未用未用CPUCPU82558255 PC PC7 7PCPC6 6PCPC3 3 PB PB0 07 7 PC PC0 07 782558255 PC PC4 4PCPC0 0PCPC5 57 7 PB PB0 07 7 PC PC1.2.31.2.3 PA PA0 07 70 0方式方式1 1方式方式OBFOBFACKACKINTRaINTRa要求:要求:在甲乙在甲乙2台微型计算机之间并行传送台微型计算机之间并行传送1KB数据。甲数据。甲机发送,乙机接收。甲机一侧的机发送,乙机
22、接收。甲机一侧的8255采用方式采用方式1工作,乙工作,乙机一侧的机一侧的8255采用方式采用方式0工作。两台微机的工作。两台微机的CPU与接口之与接口之间都采用查询方式交换数据。间都采用查询方式交换数据。分析:分析:双机均采用可编程并行接口芯片双机均采用可编程并行接口芯片8255构成接口电路,构成接口电路,只是只是8255的工作方式不同。的工作方式不同。设计:设计:硬件连接如图硬件连接如图 甲机:方式甲机:方式1,A口,输出,口,输出,PC6为为ACK信号,信号,PC7为为OBF信号信号 乙机:方式乙机:方式0,A口,输入,任选口,输入,任选PC0,PC4作为联络信作为联络信号号 端口地址均
23、为端口地址均为300h303h INC BX DEC CXL:MOV DX,302H IN AL,DX AND AL,08H JZ L MOV DX,300H MOV AL,ES:BX OUT DX,AL INC BX DEC CX JNZ L MOV AX,4C00H INT 21H编程编程甲机发送程序:甲机发送程序:MOV DX,303HMOV AL,1010 0000B;OUT DX,ALMOV AL,0000 1101BOUT DX,ALMOV AX,030HMOV ES,AXMOV BX,00HMOV CX,3FFHMOV DX,300HMOV AL,ES:BXOUT DX,AL端口
24、端口a,方式方式1,输出输出端口端口c的的PC6置置1将将030h:0000h内内存中的一存中的一个字节送个字节送甲机甲机8255的的A口,口,产生产生OBF信号信号将端口将端口C读读入入al,检,检查查PC3(intra)上是否)上是否为高电平为高电平若有中断若有中断请求,则请求,则继续送数继续送数乙机接收程序:乙机接收程序:MOV DX,303HMOV AL,1001 1000BOUT DX,ALMOV AL,0000 0001BOUT DX,ALMOV AX,040HMOV ES,AXMOV BX,00HMOV CX,3FFHL1:MOV DX,302H IN AL,DX AND AL,
25、10H JNZ L1MOV DX,300HIN AL,DXMOV ES:BX,ALMOV DX,303Hmov AL,0000 0000BOUT DX,ALNOPNOPMOV AL,0000 0001BOUT DX,ALINC BXDEC CXJNZ L1MOV AH,4CHINT 21H端口端口a,方式方式0,输入输入,c口口高四位输高四位输入入,c口低四口低四位输出位输出端口端口c的的PC0置置1将将c口读入口读入al,检查,检查PC4是否是否为为0,即甲,即甲机是否发机是否发送给乙机送给乙机有效的有效的OBF信号信号将端口将端口a读读入入al,再送,再送入内存中入内存中端口端口c的的PC
26、0置置0产产生生ACK端口端口c的的PC0置置1,ack置置1,甲机的甲机的PC3会给会给cpu发出发出intra请求再请求再送数据送数据应用举例应用举例应用举例应用举例 例例1 1:在一系统中,要求:在一系统中,要求82558255工作在方式工作在方式0 0,A A口为输入,口为输入,B B口、口、C C口为输出。口为输出。0 Mov al,Mov al,1001 0000B1001 0000B Out 63h,al ;Out 63h,al ;送控制字到控制字寄存器。送控制字到控制字寄存器。Call delay1 Call delay1 In al,60h ;In al,60h ;从从A A
27、口输入数据口输入数据 Call delay2 Call delay2 mov al,data1 mov al,data1 Out 61h,al ;Out 61h,al ;从从B B口输出数据口输出数据 Call delay3 Call delay3 mov al,data2 mov al,data2 Out 62h,al ;Out 62h,al ;从从C C口输出数据口输出数据例例2 2:假定在一个系统中,要求:假定在一个系统中,要求8255A.B8255A.B均工作在方式均工作在方式1 1,端口端口A A为输出,端口为输出,端口B B为输入,为输入,PCPC4 4PCPC5 5为输入,禁止端
28、口为输入,禁止端口B B中断中断,允许端口允许端口A A中断,设端口地址为中断,设端口地址为1230h1230h1233h1233hMov al,Mov al,1010 1111B1010 1111B ;控制字控制字Mov dx,1233h ;Mov dx,1233h ;控制寄存器地址控制寄存器地址 Out dx,al ;Out dx,al ;送入控制字寄存器送入控制字寄存器Mov al,0000 1001B;AMov al,0000 1001B;A口的口的INTEINTE(PCPC4 4)置)置1 1Out dx,al ;Out dx,al ;送入控制字寄存器送入控制字寄存器Mov al,0
29、000 0100B;BMov al,0000 0100B;B口的口的INTEINTE(PCPC2 2)置)置0 0Out dx,al ;Out dx,al ;送入控制字寄存器送入控制字寄存器8255A8255A的应用举例的应用举例一、基本输入输出应用举例一、基本输入输出应用举例 在工业控制等实际应用中,经常需要检测某些开关量在工业控制等实际应用中,经常需要检测某些开关量的状态。例如,在某一系统中,有的状态。例如,在某一系统中,有8 8个开关个开关K K 7 7K K0 0,要求不,要求不断检测它们的通断状态,并随时在发光二极管断检测它们的通断状态,并随时在发光二极管lEDlED7 7LEDLE
30、D0 0上上显示出来。开关断开,相应的显示出来。开关断开,相应的LEDLED点亮;开关合上,点亮;开关合上,lEDlED熄熄灭。我们选用灭。我们选用8086 CPU8086 CPU,8255A8255A和和74LSl3874LSl38译码器等芯片,译码器等芯片,构成构成如图所示如图所示的硬件电路,的硬件电路,8255A8255A的的A A口作输入口,口作输入口,8 8个开关个开关K K7 7K K0 0 。分别接。分别接PAPA7 7PAPA0 0,B B口为输出口,口为输出口,PBPB7 7PBPB0 0分别接显示分别接显示LEDLED7 7LEDLED0 0 。8255A8255A的的RD
31、RD、WRWR和和RESETRESET引脚分别与引脚分别与CPUCPU的相应输出相连。的相应输出相连。8255A8255A的数据线的数据线D7D7D0D0与与80868086的低的低8 8位数据总线位数据总线D7D7D0D0相相连,从上一章的讨论可知,这时连,从上一章的讨论可知,这时8255A8255A的的4 4个口地址都应个口地址都应为偶地址,为偶地址,A0A0必须总等于必须总等于0 0,用地址线的,用地址线的A2A2、A1A1来选择片来选择片内的内的4 4个端口。图中,地址线个端口。图中,地址线A7A7接译码器的接译码器的G1G1,M MIOIO而而与与G2AG2A相连,相连,A A6 6
32、、A A5 5接与非门输入端,与非门输出与接与非门输入端,与非门输出与G2BG2B相相连。当连。当A A7 7A A6 6A A5 5=111=111,A A4 4A A3 3A A0 0=100=100时,时,Y Y4 4=0=0,选中,选中8255A8255A。这样,这样,4 4个端口地址分别为个端口地址分别为F0HF0H、F2HF2H、F4HF4H和和F6HF6H,对应于,对应于8255A8255A的的A A口、口、B B口、口、C C口和控制字寄存器。口和控制字寄存器。编程时先要确定方式选择控制字。由于编程时先要确定方式选择控制字。由于A A口工作于方式口工作于方式0 0输输入,入,B
33、 B口为方式口为方式O O输出,输出,C C口未用,控制字中与口未用,控制字中与C C口对应的位口对应的位可以被置为可以被置为0 0,这样写入控制端口,这样写入控制端口F6HF6H的控制字为的控制字为10010000B10010000B。完成初始化后,即可将完成初始化后,即可将A A口的开关状态读入寄存器口的开关状态读入寄存器ALAL若开若开关合上,关合上,ALAL中的相应位为中的相应位为O O,断开则为,断开则为1 1。当把。当把ALAL中的内容中的内容从从B B口输出时,相应于口输出时,相应于O O的位上的的位上的LEDLED熄灭,表示对应的开关熄灭,表示对应的开关是合上的;否则是合上的;
34、否则LEDLED点亮,指示开关断开。具体程序如下:点亮,指示开关断开。具体程序如下:M0V DX M0V DX,OF6HOF6H MOV AL MOV AL,1001OOOOB1001OOOOB OUT DX OUT DX,ALALTEST-ITTEST-IT:MOV DX MOV DX,OFOHOFOH IN AL IN AL,DXDX MOV DX MOV DX,OF2HOF2H OUT DX OUT DX,ALAL JMP TEST-IT JMP TEST-IT;控制字寄存器;控制字寄存器;控制字;控制字;写入控制字;写入控制字;指向;指向A A口口;从;从A A口读入开关状态口读入开关
35、状态;指向;指向B B口口;B B口控制口控制LEDLED,指示开,指示开关状态关状态;循环检测;循环检测习题习题1:8255A为连接打印机的接口为连接打印机的接口,工作在方式工作在方式0,输出输出 工工作作过过程程:需需要要打打印印时时,查查询询打打印印机机是是否否忙忙?不不忙忙时时通通过过8255A发发送送一一个个字字符符给给打打印印机机。为为使使打打印印机机接接收收数数据据,要要生生成成一一个个选选通通脉脉冲冲(初初始始值值是是1,置置0,再再置置1 )。)。8086808682558255A A打印机打印机D D7 7DD0 0PAPAPCPC6 6PCPC2 2STBSTBBUSYB
36、USY查询式打印机接口示意图查询式打印机接口示意图习题习题1 1 题解:题解:A A口:方式口:方式0 0、输出数据、输出数据下下C C口:方式口:方式0 0、PCPC2 2输入状态信号输入状态信号上上C C口:方式口:方式0 0、PCPC6 6输出选通信号输出选通信号方式控制字为:方式控制字为:1000000110000001B B。为增强驱动能力,为增强驱动能力,可加门电路驱动可加门电路驱动设端口地址:设端口地址:0D0D0H0D3H0H0D3H,要打印的字符放在,要打印的字符放在BLBL中。中。程序如下:程序如下:SetupSetup:MOVMOVALAL,81H 81H ;设置工作方式
37、;设置工作方式OUTOUT0D3H0D3H,ALALMOV MOV ALAL,0DH0DH;PC6 PC6置置1 1,0DH=0000,11010DH=0000,1101OUTOUT0D3H0D3H,ALALReadyReady:IN ALIN AL,0D2H 0D2H ;读读PCPC口口TESTTESTALAL,04H04H ;打印机忙否(打印机忙否(PC2=BUSY=PC2=BUSY=?)?)JNZJNZReady Ready ;PC2=1PC2=1,打印机忙,等待,打印机忙,等待MOVMOVALAL,BLBL;打印的字符送;打印的字符送ALAL中中OUTOUT0D0H0D0H,AL AL
38、 ;BL BL中的字符送中的字符送PAPA口口MOV MOV ALAL,0CH0CH;置;置PCPC6 6为为0 0OUTOUT0D3H0D3H,AL AL ;置置PC6=0PC6=0,即,即=0=0;00001100=0CH00001100=0CHINC INC ALAL;置;置PCPC6 6为为1 1OUTOUT0D3H0D3H,ALAL;置置PC6=1PC6=1,即,即=1=1,00001101=0DH00001101=0DH 0.5ms0.5ms1.设设8255的端口的端口A、B、C和控制寄存器的地址为和控制寄存器的地址为F4H、F5H、F6H、F7H,要使,要使A口工作于方式口工作于
39、方式0输出,输出,B口工口工作于方式作于方式1输入,输入,C口上半部输入,下半部输出,且要口上半部输入,下半部输出,且要求初始化时求初始化时PC6=0,试编写初始化程序。,试编写初始化程序。2.8255A的方式选择字和置位复位字都写入什么端口?用的方式选择字和置位复位字都写入什么端口?用什么方式区分他们?什么方式区分他们?3.若要使若要使8255A的三个端口和控制寄存器的地址均为偶地的三个端口和控制寄存器的地址均为偶地址,则址,则8255的的A0.A1应与系统地址总线怎么连接?应与系统地址总线怎么连接?4.8255的端口地址分别为的端口地址分别为80H,82H,84H,86H,若若A口工作在口工作在方式方式0输入,输入,B口工作在方式口工作在方式1输出,输出,C口各位的作用是口各位的作用是什么?控制字是什么?若什么?控制字是什么?若B口工作在方式口工作在方式0输出,输出,A口工口工作在方式作在方式1输入,输入,C口各位的作用是什么?控制字是什口各位的作用是什么?控制字是什么?么?作业作业结束语结束语谢谢大家聆听!谢谢大家聆听!45