计算机汇编原理8255A

上传人:无*** 文档编号:240910453 上传时间:2024-05-17 格式:PPT 页数:65 大小:686.50KB
返回 下载 相关 举报
计算机汇编原理8255A_第1页
第1页 / 共65页
计算机汇编原理8255A_第2页
第2页 / 共65页
计算机汇编原理8255A_第3页
第3页 / 共65页
点击查看更多>>
资源描述
可编程并行输入可编程并行输入/输出接口芯片输出接口芯片8255A并行接口的特点并行接口的特点可编程并行通信接口芯片可编程并行通信接口芯片82551一、并行接口的特点一、并行接口的特点并行接口是在多根数据线上,以字节并行接口是在多根数据线上,以字节/字为单位与字为单位与I/O设备交换数据设备交换数据2二、二、可编程并行通信接口芯片可编程并行通信接口芯片8255F8255芯片引脚定义与功能芯片引脚定义与功能8255APA3PA2PA1PA0RDCSGNDA1A0PC7PC6PC5PC4PC3PC2PC1PC0PB0PB1PB2PA4PA5PA6PA7WRRESETD0D1D2D3D4D5D6D7VccPB7PB6PB5PB4PB3Intel系列的系列的8位并行接口芯片位并行接口芯片通用性强,使用灵活通用性强,使用灵活可用程序设置和改变芯片的工可用程序设置和改变芯片的工作方式作方式是一种是一种典型的可编程并行接口典型的可编程并行接口芯片芯片40个引脚,双列直插式个引脚,双列直插式3二、二、可编程并行通信接口芯片可编程并行通信接口芯片8255resetD7D0A9A2A1A0IORIOW片选片选译码译码数据数据缓冲器缓冲器读写读写控制控制片内片内译码译码CSRESETA1A0RDWRPC7PC0PB7PB0PA7PA0控制口控制口D端口端口A端口端口C端口端口B+5VGNDD7D0外外设设8255A总线总线4二、二、可编程并行通信接口芯片可编程并行通信接口芯片8255F8255芯片引脚定义与功能芯片引脚定义与功能1.数据端口数据端口 A、B、Cq每个端口每个端口8位,通过编程设定其为输入口或输出口位,通过编程设定其为输入口或输出口q可用来和外设传送信息可用来和外设传送信息q 端口端口A有有 3 种工作方式种工作方式(方式方式 0、方式、方式 1、方式、方式 2)对外对外 8 根引脚根引脚 PA7 PA0 5二、二、可编程并行通信接口芯片可编程并行通信接口芯片8255F8255芯片引脚定义与功能芯片引脚定义与功能1.数据端口数据端口 A、B、Cq端口端口B 有有 2 种工作方式:方式种工作方式:方式 0、方式、方式 1对外对外 8 根引脚根引脚 PB7 PB0q端口端口C对外引脚对外引脚PC0 PC76二、二、可编程并行通信接口芯片可编程并行通信接口芯片8255F8255芯片引脚定义与功能芯片引脚定义与功能1.数据端口数据端口 A、B、C 当端口当端口 A 在方式在方式 1 或方式或方式 2、端口、端口 B 在方式在方式 1 时,时,端口端口 C 的某些位用于传送联络信号,的某些位用于传送联络信号,以适应以适应CPU与外设间的各种数据传送方式的要求,与外设间的各种数据传送方式的要求,如如查查询询传传送送的的应应答答信信号号、中中断断传传送送的的中中断断申申请请信信 号等;号等;C口口未未被被用用作作联联络络信信号号的的其其它它位位可可工工作作在在方方式式 0下。下。7二、二、可编程并行通信接口芯片可编程并行通信接口芯片8255F8255芯片引脚定义与功能芯片引脚定义与功能2.控制端口控制端口D(A组和组和B组控制电路组控制电路)q 8位端口,无对外引脚可用来和外设传送信息位端口,无对外引脚可用来和外设传送信息q控制端口的内容决定控制端口的内容决定A口、口、B口、口、C口的工作状态口的工作状态(输输入或输出入或输出)和工作方式(方式和工作方式(方式 0、1、2),起控制作用。起控制作用。8二、二、可编程并行通信接口芯片可编程并行通信接口芯片8255F8255芯片引脚定义与功能芯片引脚定义与功能3.数据总线缓冲器数据总线缓冲器(引脚引脚D0D7)q由由1个个8位双向三态缓冲器构成位双向三态缓冲器构成 q8255A内各端口内各端口通过数据缓冲器与系统总线相连。通过数据缓冲器与系统总线相连。CPU与端口与端口A、B、C间传送的数据,间传送的数据,以及以及CPU写入控制端口写入控制端口D中的控制字均通过数据中的控制字均通过数据缓冲器传送。缓冲器传送。9二、二、可编程并行通信接口芯片可编程并行通信接口芯片8255F8255芯片引脚定义与功能芯片引脚定义与功能4.读写控制电路读写控制电路(引脚引脚CS、RD、WR)q控制数据总线缓冲器的状态。控制数据总线缓冲器的状态。数据总线缓冲器有数据总线缓冲器有3种状态:输入、输出、高阻态种状态:输入、输出、高阻态 10二、二、可编程并行通信接口芯片可编程并行通信接口芯片8255F8255芯片引脚定义与功能芯片引脚定义与功能5.片内译码电路片内译码电路(引脚引脚A1、A0)选择被操作的端口选择被操作的端口11二、二、可编程并行通信接口芯片可编程并行通信接口芯片8255F8255芯片引脚定义与功能芯片引脚定义与功能由由CS、A1、A0、RD、WR引脚的不同组合,实现各引脚的不同组合,实现各种不同的功能。种不同的功能。12q在在8255A内部硬件结构中内部硬件结构中:A口和口和B口之间没有硬件关系,口之间没有硬件关系,即可分别作为独立的输入或输出端口;即可分别作为独立的输入或输出端口;C口和口和A口,口,C口和口和B口之间有硬件联系,口之间有硬件联系,通过向控制口设置控制字可以改变这种联系。通过向控制口设置控制字可以改变这种联系。三、三、三种工作方式三种工作方式13三、三、三种工作方式三种工作方式q根据根据A口和口和C口、口、B口和口和C口之间硬件关系的不同,口之间硬件关系的不同,可以有三种不同的工作方式可以有三种不同的工作方式,分别称为方式分别称为方式 0、方式、方式 1、方式、方式 2。A口或口或B口口工作在工作在方式方式 0:与与C口之间口之间没有硬件联系没有硬件联系。A口或口或B口工作在口工作在方式方式 1:C口的口的某某3根引脚根引脚作为端口与外设作为端口与外设的联络信号。的联络信号。A口工作在口工作在方式方式 2:C口的口的某某5根引脚根引脚作为端口与外设的联作为端口与外设的联络信号。络信号。14三、三、三种工作方式三种工作方式1.方式方式0(基本输入输出方式)(基本输入输出方式)v A口口工工作作在在方方式式 0 时时,A口口和和C口口之之间间没没有硬件联系有硬件联系v B口口工工作作在在方方式式 0 时时,B口口和和C口口之之间间没没有硬件联系有硬件联系15三、三、三种工作方式三种工作方式1.方式方式0(基本输入输出方式)(基本输入输出方式)v 工作在方式工作在方式 0 的端口,为的端口,为单向传送端口单向传送端口,输入输入或输出或输出 v 作为输入口相当于普通的三态门作为输入口相当于普通的三态门 作为输出口作为输出口相当于普通的锁存器相当于普通的锁存器v CPU可利用工作在方式可利用工作在方式 0 的端口,直接对端口的端口,直接对端口进行读写操作,实现进行读写操作,实现CPU与外设间的数据传送。与外设间的数据传送。16三、三、三种工作方式三种工作方式 2.方式方式1(选通输入输出方式)(选通输入输出方式)v A口工作在方式口工作在方式1时,时,C口的口的某某3根引脚根引脚作为作为A口的联络信号口的联络信号。v B口工作在方式口工作在方式1时,时,C口的口的某某3根引脚根引脚作为作为B口的联络信号口的联络信号。v工作在方式工作在方式 1 的端口,为单向传送端口。的端口,为单向传送端口。在方式在方式 1 下,下,C口作为口作为A口、口、B口联络信号的口联络信号的引脚,引脚,其动作关系在芯片设计和制造时已固定,其动作关系在芯片设计和制造时已固定,不由用户自己安排,也不能编程改变。不由用户自己安排,也不能编程改变。17三、三、三种工作方式三种工作方式3方式方式2(双向传送方式)(双向传送方式)v端端口口工工作作在在方方式式 2时时,C口口的的某某5根根引引脚脚作作为为端端口口的的 联络信号联络信号v 8255A 只有只有A口口可以工作在方式可以工作在方式 2 下。下。v与方式与方式0和方式和方式1不同的是:不同的是:工作在方式工作在方式 2 的端口,为双向传送端口,既可输入又的端口,为双向传送端口,既可输入又可输出。可输出。18方式选择控制字方式选择控制字四、四、8255A的控制字的控制字1910001/0011/0D7D6D5D4D3D2D1D0特征位特征位A口口方式方式 0A口口输出输出PC7PC4I/OB口口方式方式 0B口口输入输入PC3PC0I/O所以所以,方式控制字为方式控制字为 1000 0010B,即即82H 由于对由于对 C口无要求,口无要求,控制控制C口的相应位口的相应位D4,D0可为任意值,假设取可为任意值,假设取0例例 假设假设8255A 控制端口的地址为控制端口的地址为203h,编程设置编程设置控制字,使控制字,使A口口方式方式0输出输出;B口口方式方式0输入输入20设置控制字的程序段如下:设置控制字的程序段如下:MOV DX,203h ;置置DX为控制口地址为控制口地址 MOV AL,82h ;置控制字于置控制字于AL中中 OUT DX,AL ;将控制字写入控制口将控制字写入控制口例例 假设假设8255A 控制端口的地址为控制端口的地址为203h,编程设置编程设置控制字,使控制字,使A口口方式方式0输出输出;B口口方式方式0输入输入21端口端口C置位置位/复位控制字复位控制字注意:注意:C口控制字虽然是对端口口控制字虽然是对端口C操作,但应写入到操作,但应写入到控制口地址,而不是写入到控制口地址,而不是写入到C数据口数据口22例例 假假设设8255A的的控控制制口口地地址址为为203h,通通过过控制口置控制口置 PC2 为为 0,置,置 PC4 为为 1 MOV DX,203H ;置置DX为控制口地址为控制口地址MOV AL,0000 0100B ;置置PC2为为0OUT DX,AL MOV AL,0000 1001B ;置置PC4为为1OUT DX,AL 23例:设例:设 A、B、C数据口地址分别位数据口地址分别位60H、61H、62H、控制口端口地址控制口端口地址 63H1:A口方式口方式0,输出、,输出、B口方式口方式0,输入,输入,C口高口高4位输位输出,出,C口低口低4位入位入MOV AL,10000011BOUT 63H,AL 2:PC7置置1,PC3置置0MOV DX,63HMOV AL,0000,1111B;PC7置置1OUT DX,ALMOV AL,0000,0110B;PC3置置0OUT DX,AL24F8255的工作方式的工作方式08255作为打印机接口,工作于方式作为打印机接口,工作于方式01.方式方式0(基本输入输出方式,单向传送端口(基本输入输出方式,单向传送端口,输入输入或输出或输出)25程序设计:设程序设计:设PA、PB、PC口地址分别为口地址分别为0D0H、0D2H、0D4H控制口地址:控制口地址:0D6HMOV AL,81H;OUT 0D6H,ALMOV AL,0DH;PC6置置1,0DH=0000,1101OUT 0D6H,ALLPST:IN AL,0D4H;读;读PC口口AND AL,04D;打印机忙否(打印机忙否(PC2=BUSY=?)?)JNZ LPST;PC2=1,打印机忙,等待打印机忙,等待MOV AL,CLOUT 0D0H,AL;CL中的字符送中的字符送PA口口MOV AL,0CHOUT 0D6H,AL;置置PC6=0,即即=0;00001100=0CHINC ALOUT 0D6H,AL;置;置PC6=1,即即=1,00001101=0DH 26F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式v A口工作在方式口工作在方式1时,时,C口的某口的某3根引脚作为根引脚作为A口的口的联络信号联络信号v B口工作在方式口工作在方式1时,时,C口的某口的某3根引脚作为根引脚作为B口的口的联络信号。联络信号。v 工作在方式工作在方式 1 的端口,为单向传送端口。由方式的端口,为单向传送端口。由方式控制字决定是输入还是输出。控制字决定是输入还是输出。v C口作为联络信号的引脚,不受方式控制字的控制。口作为联络信号的引脚,不受方式控制字的控制。该出则出,该入则入,该出则出,该入则入,不受不受C口按位置位口按位置位/复位控制复位控制字控制。字控制。27F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式v 利用方式利用方式 1 下的联络信号,下的联络信号,可方便地实可方便地实现查询或中断方式的硬件设计,现查询或中断方式的硬件设计,使使CPU能够能够有效、可靠地与外设进行数据传送。有效、可靠地与外设进行数据传送。v A口、口、B口在输入或输出不同的工作状态口在输入或输出不同的工作状态时,时,C口联络信号的引脚和意义也不同。口联络信号的引脚和意义也不同。28F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式29F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式对方式对方式1输入的端口,输入的端口,C口提供与外部联络的信号有:口提供与外部联络的信号有:STB 选通信号(低电平有效)选通信号(低电平有效)由外设发出,送给由外设发出,送给8255A,作用是将外设送来的数据锁存到作用是将外设送来的数据锁存到8255A的输入端口。的输入端口。IBF 输入缓冲器满信号(高电平有效)输入缓冲器满信号(高电平有效)8255A 发出,表示外设送来的数据已进入输入端口。发出,表示外设送来的数据已进入输入端口。当外设送来的数据送入输入端口后,当外设送来的数据送入输入端口后,8255A自动发出。自动发出。INTR 中断申请信号(高电平或上升沿有效)中断申请信号(高电平或上升沿有效)8255A 发出,用来向发出,用来向CPU发出中断申请。发出中断申请。STB、IBF、INTE均为时,均为时,8255A自动发出自动发出INTR。30F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式对方式对方式1输入的端口,输入的端口,8255A内部的控制信号有:内部的控制信号有:INTE 中断允许控制信号,中断允许控制信号,作用是控制是否允许作用是控制是否允许8255A的中断申请信号的中断申请信号INTR发出。发出。此信号无引出此信号无引出,通过,通过控制口控制口对对C口相应位的置位口相应位的置位/复位复位设置设置允许或不允许允许或不允许。A口,口,对对PC4置置位位,使使INTEA=1,允许允许中断中断 对对PC4复复位位,使使INTEA=0,不允许不允许中断中断 B口,口,对对PC2置置位位,使使INTEB=1,允许允许中断中断 对对PC2复复位位,使使INTEB=0,不允许不允许中断中断31F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式方式方式1的输入时序:的输入时序:从工作在方式从工作在方式1下的输入端口输下的输入端口输入数据时,有关信号的变化关系。入数据时,有关信号的变化关系。外设送来数据外设送来数据PB7PB0PA7PA0STBIBFINTRRD当当INTE=1时时 32F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式 当外设准备好数据,当外设准备好数据,将数据送至端口线将数据送至端口线PA7PA0或或PB7PB0 外设发出选通信号外设发出选通信号STB:(1)将数据锁存在输入端口内。将数据锁存在输入端口内。(2)使使IBF变高,表示输入端口满,可用于阻止外设输入新变高,表示输入端口满,可用于阻止外设输入新数据。数据。(3)如果如果INTE=1,STB的上升沿使的上升沿使INTR变高,发出中变高,发出中断请求。断请求。转转中断处理程序,执行中断处理程序,执行IN指令,指令,CPU 读取数据,发出读取数据,发出RD信号信号:(1)RD 的下降沿清除的下降沿清除INTR (2)RD 的上升沿清除的上升沿清除IBF (3)端口内的数据进入端口内的数据进入CPU33F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式34F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式对方式对方式1输出的端口,输出的端口,C口提供与外部联络的信号有口提供与外部联络的信号有:OBF 输出缓冲器满信号(低电平有效)输出缓冲器满信号(低电平有效)当数据送至当数据送至8255A输出缓冲器后,输出缓冲器后,8255A自动发出。自动发出。表示表示CPU送来的数据已进入送来的数据已进入8255A输出端口,可用来输出端口,可用来通知外设把数据取走。通知外设把数据取走。ACK 外设响应信号(低电平有效)外设响应信号(低电平有效)由外设发出,送给由外设发出,送给8255A。作用是通知作用是通知 8255A输出输出端口的数据已被外设取走,可以传送下一个数据。端口的数据已被外设取走,可以传送下一个数据。35F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式 INTR 中断申请信号(高电平或上升沿有效)中断申请信号(高电平或上升沿有效)8255A 发出发出,用来向用来向CPU发出中断申请。发出中断申请。当当OBF、ACK、INTE均为时,均为时,8255A自动发出自动发出INTR。36F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式对方式对方式1输出的端口,输出的端口,8255A内部的控制信号有:内部的控制信号有:INTE 中断允许控制信号,中断允许控制信号,作用是控制是否允许中断作用是控制是否允许中断申请信号申请信号INTR发出。发出。此信号无引出此信号无引出,通过,通过控制口控制口对对C口相应位的置位口相应位的置位/复位复位设置设置允许或不允许允许或不允许。A口,口,对对PC6置置位位,使使INTEA=1,允许允许中断中断 对对PC6复复位位,使使INTEA=0,不允许不允许中断中断 B口,口,对对PC2置置位位,使使INTEB=1,允许允许中断中断 对对PC2复复位位,使使INTEB=0,不允许不允许中断中断37F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式方式方式1的输出时序:的输出时序:向工作在方式向工作在方式1下的输出端口输下的输出端口输出数据时,有关信号的变化关系。出数据时,有关信号的变化关系。38F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式 CPU执行执行OUT指令,输出数据指令,输出数据 CPU发出发出WR (1)数据写到数据写到 8255A的端口的端口 (2)使使OBF有效(有效(OBF=0),表示输出端口满,可作为,表示输出端口满,可作为外设的选通信号外设的选通信号,通知外设取数据。通知外设取数据。(3)清除中断请求信号清除中断请求信号INTR 外设接受到数据后,发出外设接受到数据后,发出ACK信号信号 (1)ACK的下降沿使的下降沿使OBF变高,变高,(2)当当INTE=1,ACK的上降沿使的上降沿使INTR变高,发出中断请变高,发出中断请求,请求求,请求CPU输出新的数据。输出新的数据。39F8255的工作方式的工作方式1选通输入输出方式选通输入输出方式40主程序主程序:MAIN:MOV AL,0A0H;方式选择控制字方式选择控制字OUT 0C6H,ALMOV AL,01H;OUT 0C6H,ALCLI;替换中断向量前关中断替换中断向量前关中断MOV AH,25H;替换中断向量的典型方式替换中断向量的典型方式MOV AL,0BH;IR3的类型码为的类型码为0BHMOV DX,OFFSET ROUTINTRPUSH DSMOV AX,SEG ROUTINTRMOV DS,AXINT 21HPOP DSMOV AL,0DH;PA方式方式1输出,输出,“置置PC6=1的操作的操作”OUT 0C6H,AL;使使8255允许中断(允许中断(INTEA=1)STI;CPU开中断开中断 假假设:设:A口地址口地址 0C0HB口地址口地址 0C2HC口地址口地址 0C4H控制口控制口 0C6H41中断处理程序中断处理程序ROUTINTR:MOV AL,DI;DI为打印字符缓冲区地址为打印字符缓冲区地址OUT 0C0H,ALMOV AL,00H;置;置PC0=0OUT 0C6H,ALINC AL;置;置PC0=1 IRET42F8255的工作方式的工作方式2选通双向传输方式选通双向传输方式v 端口工作在方式端口工作在方式 2时,时,C口的某口的某5根引脚作为端口的根引脚作为端口的联络信号联络信号v 8255A 只有只有A口可以工作在方式口可以工作在方式 2 下。下。v 与与方方式式 0、方方式式 1的的单单向向传传送送不不同同,工工作作在在方方式式 2下的端口,具有双向传送功能。下的端口,具有双向传送功能。v A口口工工作作在在方方式式 2 下下,C口口未未做做联联络络信信号号的的3条条引引脚脚 可可作作为为B口口在在方方式式1下下的的联联络络线线,也也可可和和B口口一一样样工工作作在方式在方式0下。下。由方式控制字决定其输入由方式控制字决定其输入/输出。输出。43F8255的工作方式的工作方式2选通双向传输方式选通双向传输方式工作在方式工作在方式2时,时,C口有口有5根引脚作为根引脚作为A口的联络信号,口的联络信号,是方式是方式1下下A口输入、输出联络信号的组合。口输入、输出联络信号的组合。44F8255A在在IBM PC/XT主板上的应用主板上的应用键键盘盘接接口口键键盘盘键盘键盘中断申请中断申请8259AIR1INTAINT8088INTRINTA60H端口端口61H端口端口8255A应答信号应答信号扫描码扫描码辅辅助助电电路路IR018.2Hz方方 波波扬声器扬声器458255A与系统的连接与系统的连接F8255A在在IBM PC/XT主板上的应用主板上的应用46v各端口的地址分别为:各端口的地址分别为:A口口:60H B口口:61H C口口:62H 控制口控制口:63H 正常工作时,正常工作时,A、B、C三个端口均工作在方式三个端口均工作在方式0,A口输口输入、入、B口输出、口输出、C口输入口输入,方式控制字为:方式控制字为:1001 1001 B(99H)(8255A的控制字在系统初始化中已设置的控制字在系统初始化中已设置)F8255A在在IBM PC/XT主板上的应用主板上的应用47 F8255A在在IBM PC/XT主板上的应用主板上的应用v发声程序中发声程序中 通过通过61H端口控制发声端口控制发声v键盘中断子程中键盘中断子程中 通过通过60H端口读入键盘扫描码端口读入键盘扫描码执行执行:OUT 61H,AL48执行执行:OUT 61H,ALF8255A在在IBM PC/XT主板上的应用主板上的应用4950例例9.1 某系统要求使用某系统要求使用8255的的A口工作于方式口工作于方式1作输入,作输入,B口工作于方式口工作于方式0作输出,作输出,C口上半部输入,下半部输口上半部输入,下半部输出。出。8255端口地址为端口地址为60H-63H。控制字为:控制字为:10111000B=0B8H 初始化程序为:初始化程序为:MOVAL,0B8H OUT63H,AL 50512C口按位置口按位置/复位控制字(写,复位控制字(写,A1A011)C口按位置口按位置/复位控制字复位控制字例例9.2 如上例,若如上例,若A口工作于方式口工作于方式1作输入,要使用中作输入,要使用中断传送方式,则应当写断传送方式,则应当写PC4的按位置位字:的按位置位字:MOVAL,00001001B OUT63H,AL 5152 方式方式1下下8255状状态字中字中INTE位的置位和复位位的置位和复位 若禁止若禁止PA口口输入中断入中断请求求 MOV DX,303H ;8255命令口命令口 MOV AL,00001001000 0B ;置;置PCPC4 4=0,禁止中断,禁止中断请求求 OUT DX,AL 若允若允许PA口口输入中断入中断请求求 MOV DX,303H ;8255命令口命令口 MOV AL,00001001001B ;置;置PCPC4 4=1,允,允许中断中断请求求 OUT DX,AL 若允若允许PA口口输出中断出中断请求求 MOV DX,303H ;8255命令口命令口 MOV AL,00001101101B ;置;置PCPC6 6=1,允,允许中断中断请求求 OUT DX,AL5253 若允若允许PB口口输入中断入中断请求求 MOV DX,303H ;8255命令口命令口 MOV AL,00000100101B ;置;置PCPC2 2=1=1,允,允许中断中断请求求 OUT DX,AL 若禁止若禁止PB口口输入中断入中断请求求 MOV DX,303H ;8255命令口命令口 MOV AL,00000100100 0B ;置;置PCPC2 2=0=0,禁止中断,禁止中断请求求 OUT DX,AL 若允若允许PB口口输出中断出中断请求求 MOV DX,303H ;8255命令口命令口 MOV AL,00000100101B ;置;置PCPC2 2=1=1,允,允许中断中断请求求 OUT DX,AL5354例例9.3 下图采用一个下图采用一个8255芯片和软盘控制器相连,箭头芯片和软盘控制器相连,箭头标明了标明了I/O的方向,根据该图,试写出的方向,根据该图,试写出8255的初始化程的初始化程序。设序。设8255端口地址为端口地址为0300-0303H。8255用作软盘基本接口用作软盘基本接口5455 A口工作在方式口工作在方式2,PC4-PC7作应答联络信号线,作应答联络信号线,PC3用作用作A组中断请求,组中断请求,B口和口和PC0-PC2作输出,工作在方作输出,工作在方式式0。工作方式控制字为:工作方式控制字为:11XXX000B 初始化程序为:初始化程序为:MOVDX,303H MOVAL,0C0H OUTDX,AL MOVAL,00001001B OUTDX,AL ;PC4PC4置位,开放输入中断置位,开放输入中断置位,开放输入中断置位,开放输入中断 MOVAL,00001101B OUTDX,AL ;PC6PC6置位,开放输出中断置位,开放输出中断置位,开放输出中断置位,开放输出中断5556例例9.4 某应用系统以某应用系统以8255A作为接口,采集一组开关作为接口,采集一组开关S7S0 的状态,然后通过一组发光二极管的状态,然后通过一组发光二极管LED7LED0显示开关状态显示开关状态,(Si闭合,则对应闭合,则对应LEDi亮,亮,Si断开,则断开,则对应的对应的LEDi灭)电路连接如下图,已知灭)电路连接如下图,已知8255A、B两组两组均工作在方式均工作在方式0。1)写出写出8255四个端口的地址。四个端口的地址。2)写出写出8255工作方式控制字。工作方式控制字。3)写出实现给定功能的汇编语言程序。写出实现给定功能的汇编语言程序。5657LED7LED0S7S0PB7PB0PA7PA08255AD7D0D7D0WR#RD#IOW#IOR#Y0#G1G2A#G2B#CBA74LS138CS#A9AEN&A8A7A6A5A4A3A2A1A0A1A05758答:答:1)A口、口、B口、口、C口和控制口的地址分别是口和控制口的地址分别是320H、321H、322H和和323H。2)A口工作在方式口工作在方式0输出,输出,B口工作在方式口工作在方式0输入,输入,C口口空闲,所以其控制字是空闲,所以其控制字是10000010b82H3)程序如下:程序如下:MOVAL,82H;置方式字置方式字MOVDX,323H;置控制端口地址置控制端口地址OUTDX,ALL1:MOVDX,321H;置置B口地址口地址INAL,DX;读开关状态(读开关状态(1断,断,0通)通)NOTAL;状态取反状态取反MOVDX,320H;置置A口地址口地址OUTDX,AL;输出(输出(1亮,亮,0灭)灭)JMPL15859思考题:思考题:如果上题要求修改成:不用查询方式,而是每如果上题要求修改成:不用查询方式,而是每50ms来一次中断,在中断中读来一次中断,在中断中读B口,输出口,输出A口,口,请问电路和程序要怎么改动?假设系统提供一个请问电路和程序要怎么改动?假设系统提供一个2KHz的脉冲。的脉冲。5960例例9.5 假设利用假设利用8255的的A口方式口方式0与打印机相连,与打印机相连,将内存缓冲区将内存缓冲区BUFF中的字符打印输出。中的字符打印输出。打印机接口在打印机接口在STB#有效时,接收数据,而有效时,接收数据,而在在BUSY有效时,表示打印机忙,不能接收有效时,表示打印机忙,不能接收数据。数据。6061打印机时序打印机时序返回#61628255与打印机接口与打印机接口6263DATA SEGMENTBUFF DB HELLO,WORLD!,13,10,$PORTA EQU 60HPORTB EQU61HPORTC EQU62HPORTCN EQU63HDATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVSI,OFFSETBUFFMOVAL,88H;82558255初始化,初始化,初始化,初始化,A A口方式口方式口方式口方式0 0输出,输出,输出,输出,C C口上半部输入口上半部输入口上半部输入口上半部输入6364 OUTPORTCN,AL ;C C口下半部输出口下半部输出口下半部输出口下半部输出 MOVAL,01H ;置位;置位;置位;置位PC0PC0,STBSTB无效无效无效无效 OUTPORTCN,ALWAIT:INAL,PORTC ;读打印机状态,;读打印机状态,;读打印机状态,;读打印机状态,若若若若“忙忙忙忙”则等待则等待则等待则等待 TESTAL,80H JNZWAIT MOVAL,SI CMPAL,$JZPRINT_OVER6465OUT PORTA,AL;数据送出;数据送出;数据送出;数据送出MOVAL,00H ;产生选通信号,打印机接收数据,开始打印。;产生选通信号,打印机接收数据,开始打印。;产生选通信号,打印机接收数据,开始打印。;产生选通信号,打印机接收数据,开始打印。OUT PORTCN,AL MOV AL,01H OUT PORTCN,AL INC SI JMP WAITPRINT_OVER:MOV AH,4CH INT 21HCODE ENDSEND START 看图65
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!