单片机原理及应用试卷A
题号 得分
一、填空题(每空1分,共20分)
1、单片微型计算机由CPU、存储器和 I/O 三部分组成。
2、MCS-51系统中,当PSEN信号有效时,表示从P0口稳定地送出了低8位地址。 3、访问8031片外数据存储器采用的是 寄存器间接 寻址方式。
4、累加器(A)=80H,执行完指令 ADD A,#83H后,进位位CY= 1 。
5、指令LCALL 37B0H,首地址在2000H,所完成的操作是2003H入栈,37B0H送入PC。 6、51有 5个 中断源,有2个中断优先级,优先级由软件填写特殊功能寄存器IP 加以选择。 7、在变址寻址方式中,以A作为变址寄存器,以PC或DPTR作基址寄存器。 8、中断请求信号有 电平 触发和 脉冲 触发两种触发方式 9、用串行口扩展并行口时,串行接口的工作方式应选为方式0。
10、74LS273通常用来作简单 输出 接口扩展;而74LS244则常用来作简单 输入 接口扩展。 11、51的并行I/O口信息有 读引脚 和 读锁存器 两种读取方法,读—改—写操作是针对
并行I/O口内的锁存器进行的。
12、A/D转换器的三个重要指标是转换速度、 分辨率 和 转换精度。
二、选择题(从备选答案中选择一个正确答案,并将代号写在括号内。每题1.分,共10分) 1、计算机能识别的语言是( C )。
(A)汇编语言 (B)自然语言 (C)机器语言 (C)高级语言
2、MCS-51单片机外扩存储器芯片时,4个I/O口中用作数据总线的是( B )。 (A)P0和P2口 (B)P0口 (C)P2和P3口 (D)P2口
1
一 二 三 四 五 六 七 八 九 总分 3、在中断服务程序中,至少应有一条( D )。
(A)传送指令 (B)转移指令 (C)加法指令 (D)中断返回指令 4、访问外部数据存储器时,不起作用的信号是( C )。 (A)RD (B)WR (C)PSEN (D)ALE 5、以下指令中,属于单纯读引脚的指令是( C )。
(A)MOV P1,A (B)ORL P1,#0FH (C)MOVC C ,P1.5 (D)DJNZ P1,LAB 6、使用定时器T1时,有几种工作模式( C )。 (A)1种 (B)2种 (C)3种 (D)4种
7、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先响应( B )。 (A)INT1 (B)INT0 (C)T1 (D)T0
8、MCS-51响应中断时,下面哪一个条件不是必须的( C )。
A、当前指令执行完毕 B、中断是开放的 C、没有同级或高级中断服务 D、必须有RETI指令
9、如果8255端口A设置为方式2,则端口B设置为( A )。
(A)只可以方式0 (B)也可以方式2 (C)除方式2外,其它方式均可 (D)任意方式 10、当MCS-51进行多机通讯时,串行接口的工作方式应选为( C )。 (A)方式0 (B)方式1 (C)方式2 (D)方式0或方式2 三、简答题 (每题5分,共20分)
1、MCS-51单片机内部包括哪些主要逻辑功能部件? 答:MCS-51单片机主要由下列部件组成: 1个8位CPU;
1个片内振荡器及时钟电路;
4KB ROM程序存储器,256BRAM; 21个特殊功能寄存器; 2个16位定时/计数器;
4个8位并行I/O口及1个可编程全双工串行接口; 可寻址64KB的外部程序存储器空间; 可寻址64KB的外部数据存储器空间; 5个中断源、两个优先级中断嵌套中断结构。
2
2、 MCS-51单片机内部有几个定时/计数器?它们由哪些寄存器组成?
答:MCS-51单片机内部有两个16位可编程的定时/计数器,简称定时器0(T0)和定时器1(T1)。它们分别由方式寄存器TMOD、控制寄存器TCON和数据寄存器TH0、TL0,TH1、TL1组成。
3、 单片机对中断优先级的处理原则是什么?
答:(1)低优先级中断源可被高优先级中断源所中断,而高优先级中断源不能被任何中断源所中断;
(2)一种中断源(不管是高优先级还是低优先级)一旦得到响应,与它同级的中断源不能再中断它。
当同时收到几个同一优先级的中断时,响应哪一个中断源取决于内部查询顺序。其优先级排列如下:
中断源 同级内的中断优先级 外部中断0 最高 定时器/计数器0溢出中断 外部中断1
定时器/计数器1溢出中断
串行口中断 最低 4、8255有哪几种工作方式?怎样选择其工作方式?
答:8255A有三种工作方式: 方式0:基本输入/输出方式。方式1:选通输入输出方式。方式2:双向总线方式。
8255的工作方式选择是通过对控制口输入控制字来实现的。 四、阅读或编写程序
1、编写一程序实现将1000H单元开始的100个单元的数据转移到2000H开始的单元中。(8分)
ORG 0000H
MOV DPTR, #1000H ;给源数据块地址指针DPTR赋初值 MOV P2,#20H ;给目的数据块地址指针P2和R0赋初值 MOV R0,#00H
LOOP: MOVX A,@DPTR
MOVX @R0,A
3
INC DPTR INC R0
CJNE R0,#64H,LOOP SJMP $
2、设R0=20H,R1=25H,(20H)=80H,(21H)=90H,(22H)=A0H,(25H)=A0H,(26H)=6FH,(27H),下列程序执行后,结果如何? (7分)
(20H)=20H (21H)=00H (22H)=17H (23H)=01H CY=1 A=17H R0=23H R1=28H CLR C MOV R2,#3
LOOP:MOV A,@R0
ADDC A,@R1 MOV @R0,A INC R0 INC R1 DJNZ R2,LOOP JNC NEXT MOV @R0,#01H SJMP $
NEXT:DEC R0
SJMP $
五、MCS-51单片机外扩展一片2716存储器,画出系统电路原理图,写出地址分布。(15分)
程序存储器的地址范
P0.0..P0.78031ALEP2.0P2.1P2.2P2.7PSEND0..74LS373D7GQ0..Q7OEA8A9A10CEOEA1..A7D0..D72716(2K)围为:0000H~07FFH
4
六、编写航标灯控制程序。要求航标灯在白天熄灭,在夜晚断续点亮,时间间隔2秒,即亮2秒,息2秒,周期循环进行。(20分) 主程序
ORG 2000H
MAIN: MOV SP,#30H GAT0: CLR P1.7
MOV TMOD,#09H ;T0定时,模式1,GATE=1 MOV TL0,#058H ;T0计算初值 MOV TH0,#9EH
MOV R7,#28H ;软件计数初值 HERE1:JNB P3.2,HERE1 ;夜晚到了吗?P3.2=0(白天)转HER1即停在此语句等待,夜晚到了P3.2=1 往下执行。
SETB TR0 ;到了,启动T0 SETB ET0 ;允许T0中断 SETB EA ;CPU开中断
HERE2:JB P3.2,HERE2 ;白天到了吗?P3.2=1(黑夜)转HERE2,即停在此语句等待,白天
到了P3.2=0 往下执行。
CLR TR0 ;到了,关T0 CLR ET0 ;禁止T0中断 CLR EA ;关中断 CLR P1.7 ;关信号灯 SJMP GAT0 中断服务程序 ORG 000BH SJMP T0INT ORG 0020H
T0INT:MOV TL0,#058H ;重赋T0初值
MOV TH0,#9EH
DJNZ R7,EXIT ;软件计数为零吗?
5
P1.78051VcVT1VT2P3.2INT0MOV R7,#28H ;计数已到,重赋初值 CPL P1.7 ;输出取反,控制灯亮或灭
EXIT: RETI ;中断返回
END
6