《微机接口模拟题4答案》由会员分享,可在线阅读,更多相关《微机接口模拟题4答案(4页珍藏版)》请在金锄头文库上搜索。
1、一、填空题:(35分)1. (4分)中断类型号为20H的中断矢量存储在从地址( 0000:0080H )开始的4个单元处,如果这个中断处理子程序从0000H:2000H开始,则这4个单元里的内容从低地址起依次为( 00H 20H 00H 00H )。2. (4分)在两片8259A级连的中断系统中,主片的IR5作为从片的中断请求输入端,则初始化主、从片时ICW3分别是( 20H,05H )。3. (2分)可以被CPU禁止的中断称为( 可屏蔽中断 )。4. (4分)在8086CPU系统中,设某中断源的中断类型码为08H,中断向量为0100:1000H,则相应的中断向量存储地址为( 0000:002
2、0H0000:0023H )5. (2分)非屏蔽中断类型码为( 02H )。6. (2分)如果8086CPU与8255通过低8位数据线传送数据,设8255端口A的地址是80H,则端口B、C、D的地址分别是( 82H,84H,86H )。7. (5分)数据从8255的端口C往总线上读出时,下面的几个端口信号的电平分别是CS(0),A1( 1 ),A0(0 ),RD(0 ),WR( 1 )。8. (2分)为使8255端口A的中断控制标志INTEA处于允许状态,写入的控制字是( 0000 1001B )。9. (4分)设8253的计数初值N=4,CLK=10HZ,则方式1和方式5输出的负脉冲宽度分别
3、是( 0.4S )和( 0.1S )。10. (4分)8255的( C )口可被置位复位,( C )口只能工作在方式0。11. (2分)CPU通过外设接口同外设之间交换的信息包括数据信息、状态信息和(控制信息)。二、设计题(65分)1. (15分)若利用8253的计数器0、1、2分别产生下列三种信号,试选择工作方式,求出初始值,分别写出初始化程序。设8253的端口地址是:30H33H ,三个通道的CLK=10KHZ。1) (5分)周期为10毫秒的对称方波;2) (5分)每隔1秒产生一个宽度为一个时钟周期的负脉冲;3) (5分)2秒后产生一个宽度为一个时钟周期的负脉冲;1、答案:1)输出频率:1
4、/10ms=100HZ,初值N0=10KHZ/100HZ=100;通道0初始化程序方法1:MOV DX,33HMOV AL,00110111B;(37H)通道0控制字,先低后高,方式3,BCD计数OUT DX,ALMOV DX,30HMOV AL,00HOUT DX,ALMOV AL,01HOUT DX,AL方法2:MOV DX,33HMOV AL,00010110B; (16H)通道0控制字,方式3,二进制计数OUT DX,ALMOV DX,30HMOV AL,64HOUT DX,AL2) 输出频率:1/1S=1HZ,初值N0=10KHZ/1HZ=10000;通道1初始化程序方法1:MOV
5、DX,33HMOV AL,01110100B;(74H)通道1控制字,先低后高,方式2,二进制计数OUT DX,ALMOV DX,31HMOV AL,10HOUT DX,ALMOV AL,27HOUT DX,AL方法2:MOV DX,33HMOV AL,01110101B;(75H)通道1控制字,先低后高,方式2,BCD计数OUT DX,ALMOV DX,31HMOV AL,00HOUT DX,ALMOV AL,00HOUT DX,AL3) 输出频率:1/2S=0.5HZ,初值N0=10KHZ/0.5HZ=20000=4E20H;通道2初始化程序MOV DX,33HMOV AL,1011101
6、0B;通道3控制字,先低后高,方式5,二进制计数OUT DX,ALMOV DX,32HMOV AL,20HOUT DX,ALMOV AL,4EHOUT DX,AL2(10分)试按照如下要求对8259A设定初始化命令字:8086系统中只有一片8259A,中断请求信号使用电平触发方式,普通全嵌套,数据总线无缓冲,采用中断自动结束方式。中断类型码为20H27H,8259A的端口地址为B0H和B1H。2答案:MOV AL,1BH;(0001 1011B) OUT 0B0H,AL;ICW1:电平触发,单级使用MOV AL,20HOUT 0B1H,AL;ICW2 :中断类型高5位20HMOV AL,03H
7、;(0000 0011B)OUT 0B1H,AL;ICW4 非缓冲,全嵌套,自动EOI方式,8086配置3(10分)设8254控制寄存器端口地址23H。试编写程序片段,读出计数器2的内容,并把读出的数据装入寄存器AX。答案:MOV AL,11011000B; 锁存计数器2的数值MOV DX,23HOUT DX,ALMOV DX,22HIN AL,DX;先低字节MOV AH,ALIN AL,DX;后高字节XCHG AH,AL4 (15分)如下图所示,已知8255的A口外接8个发光二极管,B口的PB0外接一个按键,设A口地址为60H,A,B组均工作在方式0。先写出端口地址,再编写一段程序,循环检测
8、按键是否按下,若按下(低电平有效),则把8个二极管点亮,否则全灭。端口地址:A口60H,B口61H,C口62H,控制口63HSTART:MOVDX,63HMOV AL,82H;(10000010B)A口方式0输出,B口方式0输入OUT DX,ALAA1:MOV AL,00HOUT 60H, 00H;端口A输出低电平,熄灭二极管AA2:MOV DX,61HINAL,DX;读取端口B电平AND AL,01H;PB0为0?JNZ AA1;结果不为零,跳转MOV AL,0FFHOUT 60H,AL;端口A输出高电平,点亮二极管JMP AA2 5(15分) 设8251A为异步工作方式,波特率因数为16,
9、7位数据位,奇校验,两位停止位。CPU通过8251A输入80个字符,放到0000H开始的单元中。试编程实现其功能,设8251A的控制端口地址为0F2H。答案:MOV AL,0DAH;11011010B控制字OUT 0F2H,ALMOV AL,35H ;00110101B命令字OUT 0F2H,ALMOV DI,0 ;数据存放首地址MOV CX,80 ;数据个数WAIT:IN AL,0F2H ;输入状态TEST AL,02; 检测RxRDYJZ WAIT ;IN AL,0F0H ;从数据口输入MOV DI,AL ;INC DIIN AL,0F2H; 检测错误标志位TEST AL,38HJNZ ERRORLOOP WAITERROR:CALL ERR-OUT 。