微型计算机原理作业第九章习题与思考题

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1第九章习题与思考题典型例题解析一、填空题:1.8255A把①和②分别称为A组和B组,可组成两个独立的并行接口。答案:①A口和C口的上半部分(PC4~PC7);②B口和C口的下半部分(PC0~PC3)。分析:8255A的内部控制部分包括A组和B组控制部分,A组控制电路控制端口A和端口C的上半部分,B组控制电路控制端口B和端口C的下半部分。每组控制部件从读写控制逻辑接受各种命令,从内部数据总线接收控制字,并发出适当的命令到相应的I/O端口,以确定各个端口的工作方式。2.8255A中,A组有①种工作方式,它们是②,B组有③种工作方式,它们是④。当A组工作于方式2时,B组可以工作于⑤。答案:①3;②方式0、方式1和方式2;③2;④方式0和方式1;⑤方式0或方式1。分析:8255A的A组和B组可以通过程序分别设置于不同的方式组合,在此要注意只有A组能工作于方式2。3.当8255A的PC4~PC7全部为输出线时,表明8255A的A端口的工作方式是。答案:方式0分析:A口工作在方式1或方式2时,均要使用PC4~PC7中部分或全部信号线作为固定的应答信号线和中断请求线。此题全部PC4~PC7为输出线,说明A口工作时无固定的应答控制线,由此判断A口只能工作在方式0。二、选择题1.并行接口和串行接口的区别主要表现在()之间的数据传输前者是并行,后者是串行。A.接口与CPUB.接口与外设C.CPU与外设D.接口与CPU和外设答案:B分析:无论是并行接口还是串行接口,接口与CPU之间的数据传输都是并行的,主要区别是在接口与外设之间。2.8255A有两种控制字,分别为工作方式字和C口位控字,其工作方式控制字一定是2()。A.不等于80HB.小于等于80HC.大于等于80HD.都不是答案:C分析:8255A的方式控制字最高位D7是特征位,固定为1,所以只有答案C是正确的。3.8255A工作在方式1的输入状态时,可以通过()知道端口是否已经准备好了输入的数据。A.READYB.ACKC.OBFD.INTR答案:D分析:当外部输入设备通过工作在方式1的8255A与CPU相连时,若外设的输入数据已经送到端口的数据输入缓冲器锁存,则IBF变高,此时若中断是允许的,即INTE为高时,则INTR也变高,可通过INTR向CPU发出中断请求或查询INTR状态,来判别外设数据是否准备好,所以选择D。此题还可用排斥法直接选择,因READY、ACK和OBF都与方式1输入无关的信号,所以选择D。4.当8255A的端口A和端口B都工作在方式1输入时,端口C的PC7和PC6()。A.被禁止使用B.只能作为输入使用C.只能作为输出使用D.可以设定为输入或输出使用答案:D分析:当8255A的端口A和端口B都有工作在方式1输入时,端口C的PC0~PC5被固定作为端口A和端口B的联络控制信号使用。而PC7和PC6两位没有专门指定用途,可以设定为输入或输出使用。三、判断题1.8255A工作于方式2时,A口、B口均作为双向数据传送端口,C口各位作为它们的应答控制线。答案:×分析:8255A只有A口工作于方式2,B口只能工作在方式1或方式0。2.8255A工作在方式1或方式2时,其状态字通过读控制端口获得:×分析:8255A的状态字应通过读C端口获得。33.8255A工作于方式0时,C口只有两种功能:作为数据口和作为位控,即按位输出逻辑1或逻辑0。答案:√分析:0方式又称为“基本I/O方式”。方式0不要求固定的联络(应答)信号,不要求固定的工作时序,不设置固定的工作状态字。因此,8255A的0方式下C口有两种功能,作数据口(4位并行,分高4位和低4位)和作位控,即按位输出逻辑1或逻辑0。四、问答题1.试述并行通信的特点答案:并行通信是指利用多根传输线,以字节或字为单位同时进行传输的数据通信方式。与串行通信方式相比,并行通信方式具有以下特点:(1)以字节、字宽度在接口与外设之间的多根数据线上传输数据。(2)除数据线外,还可设置交互用的握手联络信号线。(3)并行数据格式无固定模式。(4)并行数据传送过程中,一般不作差错检验和传输速度控制,数据传输速度高。(5)并行接口,用于近距离传送,不适合远距离传送。2.在3种不同的工作方式下,8255A的A口、B口和C口的功能有什么变化?答案:8255A有3种工作方式,在3种不同工作方式下,8255A的A口和B口的功能没有变化,都是作数据口用。但C口的功能有比较大的变化:(1)0方式下,C口有两种功能:作数据口(4行并行数据口,分高/低4位);作位控,按位输出逻辑1或逻辑0。(2)1方式下,C口有4种功能:作A口和B口的固定联络信号线;作A口和B口的状态口;作位控,按位输出逻辑1和逻辑0;作数据口,未分配作固定联络信号的引脚,可作数据线用。(3)2方式下,C口有4种功能,与1方式的类似。3.试述8255A的按位置1/置0命令和方式命令的作用以及在程序中出现的位置有什么不同?答案:8255A是通用可编程并行接口芯片,上电后,其工作方式及3个并行口的功能都不确定,因此,在8255A开始工作之前,应进行初始化,以确定它的工作方式及3个并行口的功能,方式命令字的作用就是指定8255A的工作方式及其不同方式下3个并行口的功能,4是作输入还是作输出。所以,方式命令又称为初始化命令。显然,这个命令应出现在8255A的开始工作之前的初始化程序段中。置1/置0命令是一个按位控制命令,由于每次只输出1位,所以叫按位输出。用于指定C口的某一位是输出高电平还是低电平。按位输出的C口的8个引脚可用于控制外设,特别适合作开关量控制和脉冲选通信号。按位置1/置0命令要在初始化以后才能使用,故它可放在初始化程序段之后的任何位置。五、设计题1.设8255A端口A为输入,端口B为输出,端口C为输出,试对其进行初始化。分析:8255A的B口和A口工作于方式1或A口工作于方式2时,均要使用C口的部分或全部信号线作为固定的应答信号线和中断请求线。此题C口为数据输出,说明A口和B口无固定的应答控制线,由此判断A口和B口只能工作在方式0。故其初始化方式选择控制字格式为:10010000B=90H,设端口地址为80H~83H。则初始化程序为:MOVAL,90H;方式选择控制字10010000BOUT83H,AL;方式选择控制字送8255A控制端口写完控制字后CPU可通过IN/OUT指令来与8255A传送数据。如:INAL,80H;读端口A的数据MOVDATAA,ALMOVAL,DATABOUT81H,AL;将数据DATAB送端口BMOVAL,DATACOUT82H,AL;将数据DATAC送端口C2.中断方式打印机接口设计(1)要求设计一个并行打印机接口电路,要求采用中断方式,将存放在BUFR缓冲区的800个字符送打印机打印。(2)分析打印机接口所面向的对象是打印机并行接口标准Centronics,而不是直接面向打印机,因此,应按照并行接口标准的要求设计接口电路。为了实现中断方式交换数据,须采用8255A的选通I/O方式,即1方式。5(3)设计①硬件设计根据打印机接口标准所要求的接口信号线(主要信号线有11根)来分配8255A3个并口引脚的功能。指定A组为1方式,A口输出,作为接口标准所要求的8根数据线。1方式输出时,使用的3根固定联络线,它们均由C口的引脚提供。指定C口的两根固定联络线PC7(AOBF)和PC6(AACK)分别作Centronics接口标准所要求的STROBE和ACK信号,实现8255A与打印机一侧的联络。另外,指定C口的固定联络线PC3(INTRA)作为中断请求线,送到IRQ7上,向CPU申请中断,实现8255A与CPU一侧的联络。接口电路如图9-3所示。8255AIRQ7CPUACKAOBFAGNDDB1-8ACKSTBGNDPA0~72~9PC610PC71单稳DB-25插座PC3图9-3中断方式打印机接口电路原理图②软件设计分主程序和中断服务程序两部分主程序包括8255A初始化,中断处理(中断向量修改/恢复、中断请求的屏蔽/开放、开/关中断等)。服务程序主要是向8255A送数据(打印字符),寄存器进/出栈,中断结束,中断返回等。STACKSEGMENTPARA‘STACK’DW200DUP(?)STACKENDSDATASEGMENTPARA‘DATA’OLD_OFFDW?OLD_SEGDW?BUFRDB800DUP(0);设置打印字符缓冲区POINTDW?;设置保存缓冲区指针的变量DATAENDS;主程序CODESEGMENTASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACKSTART:MOVAX,DATAMOVDS,AXMOVES,AX6MOVAX,STACKMOVSS,AX;MOVDX,303H;8255A初始化MOVAL,0A0HOUTDX,ALMOVAL,0DH;允许8255A中断OUTDX,AL;MOVAX,350FH;取IRQ7的原中断向量,并保存INT21HMOVOLD_OFF,BXMOVBX,ESMOVOLD_SEG,BX;CLI;置IRQ7的新中断向量MOVAX,250FHMOVDX,SEGPRNTMOVDS,DXMOVDX,OFFSETPRNTINT21H;MOVAX,DATA;恢复数据段MOVDS,AXSTI;INAL,21H;开放IRQ7ANDAL,07FHOUT21H,AL;MOVCX,800;设置打印次数MOVAX,OFFSETBUFR;设置缓冲区指针MOVPOINT,AX;MOVDX,303H;向打印机送回车符(0DH)MOVAL,0DHOUTDX,AL;BEGIN:STI;开中断HLT;等待中断;DECCX;修改打印次数JNZBEGIN;未完,继续打印7;MOVDX,303H;已完,禁止8255A中断MOVAL,0CHOUTDX,AL;CLIMOVAX,250FH;恢复IRQ7的原中断向量MOVDX,OLD_SEGMOVDS,DXMOVDX,OLD_OFFINT21H;MOVAX,DATA;恢复数据段MOVDS,AXSTI;INAL,21H;屏蔽IRQ7ORAL,80HOUT21H,AL;MOVAX,4C00H;返回DOSINT21H;中断服务程序PRNTPROCFARPUSHAX;寄存器进栈PUSHDXPUSHSI;CLI;关中断MOVSI,POINT;向打印机输出字符MOVDX,300HMOVAL,[SI]OUTDX,AL;INCSIMOVPOINT,SI;MOVAL,67H;指定中断结束OUT20H,AL;POPSI;寄存器出栈8POPDXPOPAXSTI;开中断IRET;中断返回PRNTENDPCODEENDSENDSTART习题与思考题一、填空题1.8255A接口芯片中的A口的功能是___①______,B口的功能是____②_____,C口的功能是________③_________。2.8255A是___________________________________________________________芯片。3.8255A具有____①_____、____②_____和______③_____三种工作方式。4.8255A工作于方式1的输入模式时,该芯片与外设的联络信号有_________。5.并行通信是指。6.8255A的编程主要是____①___个控制字,分别是___②____和___③___控制字。7.8255A的两个控制字写入同一个端口,区别的方法是_____________________________。8.8255A的A口的工作方式有___①____种,B口的工作方式有_____②___种。9.8255A的A口,在____________________情况下具有双向传送的功能。10.8255A的C口按位置位/复位功能,一次可使C口的__________位同时置1或置0。11.8255A的状态字可以通过读_________端口获得。二、选择题1.8255A的A口工作在方

1 / 14
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功