当前位置:文档之家› 单片机试卷及答案

单片机试卷及答案

单片机试卷及答案
《单片机原理与接口技术》模拟试题(3)
一、填空(每题2分,共10分)
1、MCS-51单片机内部RAM区有32 个工作寄存器,
有 128 个位地址。

2、外部中断1(INT1)的中断入口地址为0013H ;定时器1的中断入口地址为 001BH 。

3、单片机一共有四个物理存储器空间,分别是_片内程序存储器空间_、_片内数据存储器空间、__片外程序存储器空间和_片外数据存储器空间。

4、 A/D转换器芯片ADC 0809中,既可作为查询的状态标志,又可作为中断请求信号使用的引脚信号是 EOC 。

5、在存储器编址中,不需要额外增加电路,却造成存储器映象区重叠的编址方法是线选法,能有效地利用存储空间适用于大容量存储器扩展的编址方法
是译码法。

二、选择题(每小题2分,共10分)
1、假定设置堆栈指针SP的值为37H,进行子程序调用时把断点地址进栈保护后,SP的值为
(A)36H (B)37H (C)38H (D)39H
2、在寄存器间接寻址方式中,指定寄存器中存放的是
(A)操作数(B)操作数地址(C)转移地址(D)地址偏移量
3、中断查询的是
(A)中断请求信号(B)中断标志位(C)外中断方式控制位(D)中断允许控制位
4、以下不是构成单片机的部件()
(A) 微处理器(CPU) (B)存储器 (C)接口适配器(I/O接口电路) (D) 打印机
5、用MCS-51用串行扩展并行I/O口时,串行接口工作方式选择()
(A) 方式0 (B)方式1 (C)方式2 (D)方式3
三、指令题(每小题4分,共16分)
1、若20H位为1,则转移到到标号LOOP,并将20H位清零(一条指令) JBC 20H , LOOP
2、片内20H中的字符从串行接口发送出去。

(串行口工作方式已设定)MOV A,20H
MOV SBUF,A
3、已知DAC0832地址为7FFFH,启动D/A转换。

MOV DPTR,#7FFFH
MOVX @DPTR,A
4、把DPTR所指地址的内容压入堆栈
MOVX A,@DPTR
PUSH ACC
四、读程序填写每条指令执行结果(每小题5分,共20分)
1、设内部RAM(30H)=5AH,(5AH)=40H,(40H)=00H。

MOV R0,#30H (R0)=30H
MOV A,@R0 (A)=5AH
MOV R1,A (R1)=5AH
MOV B,R1 (B)=5AH
MOV @R1, #20H (5AH)=20H
MOV 30H,40H (30H)=00H
2、已知:(60H)=23H,(61H)=61H。

CLR C (CY)=0
MOV A,#9AH (A)=9AH
SUBB A,60H (A)=77H
ADD A,61H (A)=0C8H
DA A (A)=38H
MOV 62H,A (62H)=38H
3、若(10H)=0FFH,(11H)=00H,(12H)=0FFH,(13H)=00H
MOV A,10H (A)=0FFH
ANL A,#01H (A)=01H
MOV A,11H (A)=00H
ORL A,#01H (A)=01H
MOV A,12H (A)=0FFH
XRL A,#01H (A)=0FEH
MOV A,13H (A)=00H
XRL A,#0AAH (A)=0AAH
4、已知:(SP)=60H,(A)=01H,(B)=02H。

PUSH A (SP)= 61H ,
PUSH B (SP)= 62H ,
POP ACC (SP)=61H ,(A)=02H
POP B (SP)=60H ,(B)=01H
六、简答题(共14分)
1、 MCS-51单片机可以外接64KB的程序存储器和64KB数据存储器。

这两种片
外存储器地址重叠而不发生总线冲突,主要依靠单片机外引脚上的那些信号来区分?简述区分的方法?(10分)
主要靠ALE、PSEN、RD、WR引脚上的信号来区分。

(2分)
PSEN连接程序存储器的允许输出控制端OE,低电平有效;ALE连接地址锁存器的锁存控制端G,低电平锁存。

RD连接片外数据存储器的允许输出控制端OE,低电平有效;WR连接片外数据存储器的允许输入出控制端WE,低电平有效。

(2分)
在访问片外程序存储器时,在每个机器周期ALE出现两次高电平,出现时刻为S1P2和S4P2,高电平宽度为一个S状态。

PSEN信号与ALE信号相同,只是高电平宽度为1.5个S状态。

在ALE 由高变低时,低8位地址在地址锁存器中被锁存,此时,PSEN也为低电平,程序存储器的输出控制端OE有效,指令或数据允许输出到CPU。

(3分)
当指令是访问外部数据存储器和MOVX时,S4P2时刻的ALE 不再出现高电平,而PSEN在S1P2后一直为高电平,使程序存储器的输出控制端OE无效,禁止程序存储器的输出;同时MOVX @DPTR,A指令使引脚WR上出现负脉冲,使外部数据存储器WE有效,允许数据写入;而MOVX A,@DPTR指令使引脚RD上出现负脉冲,使外部数据存储器OE有效,允许数据输出。

因此两种片外存储器地址重叠而不发生总线冲突。

(3分)
2、 MCS-51指令系统主要有哪几种寻址方式?试举例说明。

(4分)
寄存器寻址:MOV A, R0 直接寻址:MOV A,
3AH 寄存器间接寻址:MOV A, @R0
立即寻址:MOV A, #30H 变址寻址:MOVC A, @A+DPTR
位寻址:SETB C 相对寻址:SJMP $
七、编程题(10分)
片内RAM40H开始的单元内有20个字节有符号数,将其中等于0、小于0和大于0的个数分别存50H、51H和52H单元中。

COMP: MOV A,@R0
JZ ZERO
JB ACC.7, NEG
INC 52H ;大于零
SJMP OVER
NEG: INC 51H ;小于零
SJMP OVER
ZERO: INC 50H ;等于零
OVER: RET
START: MOV R0,#40H
MOV R7,#14H
CLR A
MOV 50H, A ;清零
MOV 51H, A
MOV 52H, A
LOOP:ACALL COMP ;调与零比较子程序
DJNZ R7, LOOP
SJMP $
COMP: MOV A,@R0
JZ ZERO
JB ACC.7, NEG
INC 52H ;大于零
SJMP OVER
NEG: INC 51H ;小于零
SJMP OVER
ZERO: INC 50H ;等于零
OVER: RET
2、在8051单片机的INT0引脚外接脉冲信号,要求每送来一个脉冲,把30H单元值加1,若30H单元记满则进位31H单元。

试利用中断结构,编制主程序和中断服务程序。

解:设INT0为边沿触发
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP SUBG
MAIN :CLR A
MOV 30H,A ;清零
MOV 31H,A
MOV SP,#70H
SETB IT0 ;中断初始化
SETB EA
SETB EX0
SJMP $;等待中断
SUBG:INC 30H;30H加1
MOV A,30H
JNZ BACK
INC 31H ;若30H单元记满则进位31H单元
BACK: RET1 ;中断返回
八、读图题(20分)
阅读下列硬件图,并回答问题(各5分):
1、写出8155中RAM及各口的地址。

命令口:7FF00H
PA口:7FF01H
PB口:7FF02H
PC口:7FF03H
定时器低8位:7FF04H
定时器高8位:7FF05H
RAM:7E00H~7EFFH
2、将A口和B口定义为基本输入方式,C口定义为输出方式,定时器作为方波
发生器,对输入脉冲进行 24分频,写出8155的初始化程序。

计数器B口C口C口B口A口
装入后启动不允许中断输出输入输入
1 1 0 0 0 1 0 0
则命令字:11000100B=0D4H
要求连续方波,M2M1=01对输入脉冲24分频, 24D=18H ,计数器高8位为01000000B=40H
MOV DPTR,#7F00H
MOV A,#0D4H
MOVX @DPTR,A
MOV DPTR,#7F04H
MOV A,#18H
MOVX @DPTR,A
INC DPTR
MOV A,#40H MOVX @DPTR,A。

相关主题