一、选择题2.8255A在方式1工作时,端口A和端口B作为数据输入输出使用,而端口C的各位分别作为端口A和端口B的控制信息和状态信息。其中作为端口A和端口B的中断请求信号的分别是端口C的()A.PC4和PC2B.PC5和PC1C.PC6和PC7D.PC3和PC0D3.8255A的端口A或端口B工作在方式1输入时,端口与外设的联络信号有()。A.选通输入STB#B.中断请求信号INTRC.中断允许信号INTED.输入缓冲器满信号IBFA4.当8255A的端口A和端口B都工作在方式1输入时,端口C的PC7和PC6()。A.被禁止使用B.只能作为输入使用C.只能作为输出使用D.可以设定为输入或输出使用D7.8255A的A口工作在方式2时,B口()。A.可工作在方式0或方式1B.可工作在方式1或方式2C.只能工作在方式1D.只能空着A8.8255A用户可以用命令字设置()A.A口和B口均可工作在方式0或方式1或方式2B.A口工作在方式0,B口工作在方式1C.A口工作在方式1,B口工作在方式1或方式2D.A口工作在方式2,B口只能工作在方式1B10.当8255A工作在方式1时,端口C被分为两个部分,分别作为端口A和端口B的控制信息和状态信息。这两个部分的划分是()A.端口C的高4位和低4位B.端口C的高5位和低3位C.端口C的高3位和低5位D.端口C的高6位和低2两位B11.8255A工作方式设置为方式1时,CPU与外设通信()A.可以采用查询方式传送,或者采用中断方式传送B.只能采用中断方式传送C.可以进行双向方式传送D.只能采用无条件传送方式或查询方式传送A14.假定对8255A进行初始化时所访问的端口地址是0CBH,并将其A端口设定为工作方式1输出,则A端口的地址是()。A.0C8HB.0CAHC.0CCHD.0CEH本题答案为A。16.当8255A工作于方式2时,要占用几条联络信号线()。A.2B.3C.4D.5本题答案为D。17.8255A的PA口工作在方式2,PB口工作方式1时,其PC端口()。A用作两个4位I/O端口B部分引脚作联络,部分引脚作I/O线C全部引脚均作联络信号D作8位IO端口,引脚都为I/O线C19.若采用8255A的PA端口输出控制一个七段LED显示器,8255A的PA口应工作于方式()。A方式0B方式1C方式2D前面3中的任一方式A20.当8255A的PA口工作在方式1的输入时,对PC4置位,其作用是()。A启动输入B开放输入中断C允许中断D停止输入B22.8255A的方式选择控制字的正确值为()。A0A0HB7FHC70HD09HA23.8255A的C口位置位/复位字的正确值为()。A80HB90HCA0hD0FHD25.8255PA口工作于在方式1时,其PC端口()。A用作两个4位I/O端口。B部分引脚作联络,部分引脚作I/OC全部引脚均作联络信号D做8位I/O端口,引脚都为I/O端口B26.8255A的工作方式设置为方式2,则表示()。A仅PA口用于双向传送B仅PB口用于双向传送CPA口和PA都用于双向传送DPA口和PB口都不用于双向传送A二、填空题1.8255A是一个()接口芯片。可编程的通用并行输入输出6.8255A内部具有()个输入输出端口,每个端口的数据寄存器的长度为()位,其中端口()没有输入锁存功能。3;8;C7.8255A与CPU连接时,地址线一般与CPU的地址总线的()连接。A0和A19.8255A工作在方式1或方式2时,INTE为(),它的置1/清0由()进行控制。中断允许位;C口按位置位清零控制字13.8255A可允许中断请求的工作方式有()和()。方式1,方式215.8255A工作在方式1的输入状态时,通过信号()标识端口已经准备好了向CPU输入的数据。IBF三、简答题2.可编程并行接口芯片8255A有哪几种工作方式,每种工作方式有何特点?答:可编程并行接口芯片8255A有3种工作方式,各自特点如下:(1)方式0:没有固定的用于应答式传送的联络信号线,CPU可以采用无条件传送方式与8255A交换数据;(2)方式1:有专用的中断请求和联络信号线,因此,方式1通常用于查询传送或中断传送方式;(3)方式2:PA口为双向选通输入/输出或叫双向应答式输入/输出。13.设可编程并行接口芯片8255A的4个端口地址为00C0H、00C2H、00C4H、00C6H,要求用置0/置1方式对PC6置1,对PC4置0。2答:对端口C的PC6置1的控制字为:00001101B,对PC4置0的控制字为:00001000B。程序段为:MOVAL,0DHOUT00C6H,ALMOVAL,08HOUT00C6H,AL17.如果某个8255的控制字为91H,求出各个端口的工作方式。答:由于d7=1,91H是方式控制字;d6d5=00,PA端口选择方式0;d4=1,PA端口为输入方式;d3=0,PC7-4为输出方式;d2=0,PB端口选择方式0;d7=0,PB端口为输出方式;d0=1,PC3-0为输入方式。18.如果PA端口选择方式1输出,PB端口选择方式1输入,PC端口选择输出。(1)求出方式控制字。(2)说明哪些PC引脚可用作输出。(3)求出可用作输出的某根PC引脚输出高电平和低电平的端口C置1/置0控制字。答:(1)方式控制字d7=1,d6d5=01(PA端口方式1),d4=0(PA端口输出),d3=0(PC7-4输出),d2=1(PB端口方式1),d7=1(PB端口输入),d0=0(PC3-0输出),综合可得出方式控制字=10100110=A6H。(2)由于PA端口为方式1输出:PC6作为ACK#,PC7作为OBF#,PC3作为INTR。PB端口为方式1输入:PC0作为INTE,PC1作为IBF,PC2作为STB#。只有PC4、PC5可作为普通输出引脚。(3)使PC5输出高电平的C端口置1/置0控制字=00001011(0BH)。使PC5输出低电平的C端口置1/置0控制字=00001010(0AH)。四、综合题2.使用8255的B端口(端口地址为261H)驱动红色与绿色发光二级管各4只,且红绿管轮流发光各2s,不断循环,试画出只包括地址译码、8255与发光管部分的接口电路图及编写控制程序。答:接口电路图如图所示。编写的控制程序如下:stacksegmentstack'stack'dw32dup(0)stackendscodesegmentstartprocfarassumess:stack,cs:codepushdssuhax,axpushaxmovax,datamovds,axMOVDX,263HMOVAL,80HOUTDX,ALMOVAL,0FHMOVDX,261HLOP:NOTALOUTDX,ALCALLD2S&&IOW#IOR#RD#D7~D0WR#A0A1A0A1RESETCS#D7~D0A9A8A7A6A5A4A3A2AEN74LS308255VCCPB7PB6PB0......PUSHAXMOVAH,11INT21HCMPAL,0POPAXJELOPretstartendpcodeendsendstart35.CPU通过8255控制8个开关和发光二极管,要求发光二极管的亮灭和开关状态一致,设计电路并编写程序。答:8255控制开关、发光二极管电路如下图所示:MOVDX,26CH;设置8255控制端口地址MOVAL,82H;确定PA方式0输出,PB方式0输入OUTDX,ALMOVDX,264H;读入开关状态INAL,DXNOTAL;合上开关所对应的状态值为1MOVDX,260H;输出到PA端口,使发光二极管状态和开关一致OUTDX,AL每执行程序一次,合上开关所对应的发光二极管发亮,如果要永远保持开关状态和发光二极管亮灭一致,程序必须从读入开关状态开始无限次循环。39.假定某个8255的端口地址范围为260H~26FH,编写用PC7输出一个负脉冲的程序。答:用PC7输出一个负脉冲的电路图如下图所示:D7-D0IORIOWA2A3A4A5A6A7A8A9CPUABCG2AG2BGY6D7-D0RDWRA0A1CS8255PA7PA6PA0PB7PB6PB0+++---+5VMOVDX,26CHMOVAL,80H;PA、PB方式0输出,PC7-0输出MOVAL,0FH;C端口置1/置0控制字:使PC7输出高电平OUTDX,ALMOVCX,2000HYYY2:ADDAX,0;让PC7输出低电平维持一段时间LOOPYYY2MOVAL,0EH;C端口置1/置0控制字:使PC7输出高电平OUTDX,ALMOVCX,2000HYYY3:ADDAX,0LOOPYYY3MOVAL,0FH;C端口置1/置0控制字:使PC7输出高电平OUTDX,ALD7-D0IORIOWA2A3A4A5A6A7A8A9CPUABCG2AG2BGY6D7-D0RDWRA0A1CS8255PC7