。。。。。。。。。。。。。。。。。。。装。。。。。。。。。。。。。。。。。。。。。订。。。。。。。。。。。。。。。。。。。。。。。。。线。。。。。。。。。。。。。。。
2009~2010学年第2学期《单片机与嵌入式开发技术》试卷〖A卷〗
附:试卷中可能用到的特殊功能寄存器
2.
3.
4.
5.
一、选择题(每题1分,共20分)
注:请将选择题答案填入下表中,否则答题无效。
1、80C51单片机的堆栈区只可设置在(A)。
A. 片内RAM
B. 片外RAM
C. 片内ROM
D. 片外ROM
2、MCS-51单片机串行端口有四种工作方式,其中方式1为(C)。
A. 同步串行移位寄存器方式
B. 11位波特率可变的通用异步收发器
C. 10位波特率可变的通用异步收发器
D. 11位固定波特率的通用异步收发器
3、下面关于MCS-51单片机并行扩展接口的描述,正确的为(C)。
A. 扩展的数据存储器和并行存储器必须统一编制
B. 必须用专用的地址译码器来产生片选信号
C. 执行“MOVX A,@R0”期间,P3.7(RD)引脚可能为低电平,而P3.6(WR)引脚保持高电平
D. 执行“MOVX @R0,A”期间,P3.7(RD)引脚可能为低电平,而P3.6(WR)引脚保持高电平
4、 80C51 CPU是(C)位的单片机。
A. 16
B. 4
C. 8
D. 准16
5、在单片机中,通常将一些中间计算结果放在( D )中。
A.累加器
B.控制器
C.程序存储器
D.数据存储器
6、数据指针DPTR在(C)中。
A.CPU控制器
B.CPU运算器
C.内部数据存储器
D.外部数据存储器
7、指令和程序是以(C)形式存放在程序存储器中。
A.源程序
B.汇编程序
C.二进制编码
D.BCD码
8、辅助进位标志AC在( C )中
A.累加器
B.逻辑运算部件ALU
C.程序状态字寄存器PSW
D.DPTR
9、单片机80C51的XTAL1和XTAL2引脚是(D)引脚
A.外接定时器
B.外接串行口
C.外接中断
D.外接晶振
10、当标志寄存器P S W 的R S 0和R S 1分别为1和0时,系统选用的工作寄存器组为( C ) A.组0 B.组1 C.组2 D.组3 11、下列指令中错误的是( C )
A.MOV A ,R4
B.MOV 20H ,R4
C.MOV R4,R3
D.MOV ﹫R4,A
12、已知1只共阴极LED 显示器,其中a 笔段为字形代码的最低位,若需显示数字9,它的字形代码应为( D )。 A.06H B.F9H C.30H D.6FH 13、下面关于8051单片机内部寄存器功能的描述,正确的为( C ) A. PC 是一个8位特殊功能寄存器用于保存下面将要执行的指令地址
B. DPTR 是一个16位的数据指针,也是唯一一个用于访问扩展的I/O 口的寄存器
C. SP 是一个8位的特殊功能寄存器,执行“LCALL ”指令时,它的值增加2
D. A 只允许按字节方式访问
14、计算机内部数据之所以用二进制形式表示,主要是( B )。
A.为了编程方便
B.由于受器件的物理性能限制
C.为了通用性
D.为了提高运算速度 15、80C51的内部RAM 中,可以进行位寻址的地址空间为( B ) A.00H-2FH B.20H-2FH C.00H-FFH D.20H-FFH
16、设累加器A 的内容为0 C 9 H ,寄存器R2的内容为54H ,C Y=1,执行指令S U B B A , R2后结果为( A )
A.(A )=74H
B.(R2)=74H
C.(A )=75H
D.(R2)=75H 17、设(A )=0 C 3 H ,(R0)=0 A A H ,执行指令A N L A ,R0后,结果( A ) A.(A )=82H B.(A )=6CH C.(R0)=82 D.(R0)=6CH 18、8051单片机中,唯一一个用户可使用的16位寄存器是( B ) A 、P S W B 、D P T R C 、A C C D 、P C 19、执行如下三条指令后,30H 单元的内容是( C ) M O V R 1,#30H M O V 40H ,#0 E H M O V ﹫R 1,40H
A.40H
B.30H C .0 E H D.F F H 20、有如下程序段:
M O V R 0,#30H S E T B C C L R A
A D D C A ,#0 0H M O V ﹫R 0,A 执行结果是(
B )
A.(30H )=0 0H
B.(30H )=0 1H
C.(00H )=0 0H
D.(00H )=0 1H 1. 特殊功能寄存器IE 的EA 位的作用是总中断的开关。当EA=0时,表示禁止所有中断。
假设执行“P2.7=(P2.7)?(0:1);”语句前P2.7引脚为低电平,执行后P2.7的状态为高电平,将该语句写成if..else
格式为:if (0==P2.7)
P2.7 = 1; else
P2.7 = 0;
2. 指令“MOVX A,@DPTR ”和“MOVX A,@R0”的共同点是读外部数据存储器,区别是MOVX A,@DPTR 可以寻址
二、填空(每空1分,共25分)
0x0000~0xffff ,而MOVX A,@R0只能寻址0x0000~0x00ff 。
3. 80C51芯片中存储器主要包括ROM 和RAM ,其中ROM 存储器的寻址空间是4KB ,范围是0x0000~0x0FFF ;RAM
存储器的寻址空间256B ,范围是0x00~0xFF 。
4. MCS-51系列单片机中断系统中有5个中断源,分别是串行中断、外部中断0、外部中断1 、 定时器中断0 、
和定时器中断1 ,这5个中断源分为 2个优先级。
5. 当使用89S51且EA =1,程序存储器地址小于0FFF 时,访问的是片内ROM 。
6. 假定DPTR 的内容为8100H ,累加器A 的内容为40H ,执行下列指令: MOVC A ,@A+DPTR 后,送入A 的程序存
储器 8140H 容。
7. 当单片机复位时PSW =00H ,这时当前的工作寄存器区是0区,R0所对应的存储单元地址为
00H 。
8. MCS —51单片机外部中断请求信号有电平方式和 下降沿方式 ,在电平方式下,当采集到INT0、INT1的有效
信号为 低电平 时,激活外部中断。 1、简述行列式扫描键盘的工作原理。
先对某一行输出0,其他行输出1,检测各列,如果有为0的列,则该列与该行的交界处有键按下,转入按键处理程序否则改变为0的行号,其余行输出1,继续检测各列。
2、MCS-51外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲突,为什么?
指令不同,访问外部程序存储器用MOVC 指令,访问外部数据存储器用MOVX 指令。发出指令后产生的信号不同,访问外部程序存储器的信号为PSEN ,而访问外部数据存储器的信号为RD 和WR 。 (一)若(50H )=40H ,(3BH )=60H ,试写出执行以下程序后累加器A 、 寄存器R0以及内部RAM 的40H 、41H 单元中的内容各是多少?(A )=5FH _,(R0)= __40H ____,(40H)= __00H ____,(41H)= _5FH __。 MOV A ,50H MOV R0,A MOV A ,#00H MOV @R0,A ADD A,3BH DEC A MOV 41H ,A MOV 42H ,41H
(二)已知(B )=35H ,(A )=43H 在执行下列指令后,(SP )=52H ,内部RAM (51H )=43H 。 MOV SP ,# 50H PUSH ACC PUSH B
(三).执行下列程序后,(A )= A5H ,(B )=16H 。 MOV A ,#9FH
三、简答计算题(每题5分,共10分)
四、程序分析题(每空1分,共8分)
MOV B,#36H
ANL B,A
SETB C
ADDC A,B
五、编程题:试编写程序,完成以下操作(共17分)
1、(每题2分,共6分)
(1)外部RAM单元1000H单元的内容传送到R2。
MOV DPTR,#1000H
MOVX A,@DPTR
MOV R2,A
(2)外部RAM单元1000H单元的内容传送到内部RAM单元60H。
MOV DPTR,#1000H
MOVX A,@DPTR
MOV 60H,A
(3)将R0 的内容传送到R1 。
MOV A,R0
MOV R1,A
2、(5分)有一变量存放在片内RAM的20H单元,其取值范围为:00H-05H,编写程序,根据变量的值求其平方值,并存入片内RAM的21H单元。
MOV DPTR,#TAB
MOV A,20H
MOVC A,@A+DPTR
MOV 21H,A
TAB:
DB 00H,01H,04H,09H,10H,29H
3、(6分)MCS-51采用6MHz的晶振,定时2ms,如用定时器0方式1时的初值(16进制数)应为多少?写出计算过程,
并编写该定时程序。
初值为FC17H
计算过程:0xFFFF-2000/(12/6) #include
}
Void it0 ()interrupt 1 { ;
} 1.下图中外部扩展的程序存储器和数据存储器容量各是多少?(2分) 程序存储器 4KB 数据存储器 2*4KB
2.三片存储器芯片的地址范围分别是多少?(地址线未用到的位填1) (2分,) 2846: C000H~DFFFH 1#6264: A000H~BFFFH 2#6264: 6000H~7FFFFH
3.请编写程序,要求:
(1) 将内部RAM 30H~3FH 中的内容送入1# 6264的前16个单元中;(3分)
MOV DPTR,#A000H MOV R0,#30H MOV R7,#16 LOOP:MOV A,@R0
MOVX @DPTR,A INC R0 INC DPTR
六、设计题(共10分)
DJNZ R7,LOOP
SJMP $
(2)将2# 6264 的前4个单元的内容送入内部RAM 40H~43H中;(3分)
MOV DPTR,#6000H
MOV R0,#40H
MOV R7,#04H
LOOP:MOVX A,@DPTR
MOVX @R0,A
INC R0
INC DPTR
DJNZ R7,LOOP
SJMP $
得分七、应用设计题(共10分)
阅卷人
某控制系统需要实现每20秒报时一次的功能。假设报时喇叭由P1.7控制,P1.7为高电平时打开喇叭,低电平时关闭喇叭,要求每次喇叭只打开1秒钟,单片机的晶振频率为12MHZ,编写程序实现该功能。
#include
sbit P1_7=P1^7;
unsigned int count=0;
Void main()
{
TMOD = 0X01;
TH0 = 0x3C;
Tl0 = 0xAF;//50ms中断
IE = 0x81;
TR0 = 1;
while(1)
;
}
void IT0 ()interrupt 1 {
count++;
if(400==count)
{
P1_7 = 1;
}
If(420==count)
{
P1_7 = 0;
count = 0;
}
}