单片机理论实践综合试卷(4)答案
第一部分 理论部分(60分)
、填空题:(每空1分,共10分)
1. 在R7初值为00H 的情况下,DJNZR7,rel 指令将循环执行(256
3.欲使P1 口的低4位输出0,高4位不变,应执行一条( ANL A,#0FH )
命令
4.单片机是把中央处理器,(存储器 )以及I/O 接口电路等主要计算机部件
集成在一块集成电路芯片上的微型计算机。
率 ___ )o 6 .单片机复位时 P0的值为(0FFH )。
7. 当PSW4=0,PSW3=时,工作寄存器 Rn,工作在第(_J —)区。
8 .当允许定时器1工作在方式1时,控制字TMODL 为(10H )。 9.当允许定时/计数器1溢出中断时IE 控制字应为(84H )o
二、单项选择题(将结果的字母填写在括号内)
(每题1分,共10分)
1. JNZ e 指令的寻址方式是(C )。
2.执行LCALL 4000H 指令时,MCS-51所完成的操作是(
(A )立即寻址
(B )寄存器寻址 (C )相对寻址
(D )位寻
址 姓名:
专业年级: 学号: 评阅人: 成绩:
2.晶振的频率为6MHz 时,一个机器周期为( ________ 2
(1 So )次。
5. 传输速率是用每秒传送数据位的(
位数 )来表示,把它定义为( 波特
)。
(A )保护PC (B ) 4000H
PC
(C )保护现场
(D ) PC+3入栈,4000H PC
3.下面哪一条指令产生WR信号(D )。
(A) MOVX A,@D PTR (B) MOVC A,@A+DPTR
MOVC @A+D PTR,A (D) MOVX @DPTR, A
4. MOVX A,@D PTR指令中源操作数的地址寻址方式是(B )0
寄存器寻址(B)寄存器间接寻址
直接寻址(D)立即寻址
5.工作串行口工作方式的寄存器是(
(A) TCON (B) PCON (C SCON (D) TMOD
6.使用T1时,有几种管理工作模式
(B) 2 (C) 3 (D) 4
7.执行PUSH ACC指令,MCS-51完成的操作是(
(A) SP+1 SP (ACC) (SP) (B)(ACC) SP SP — 1 SP
(C) SP — 1 SP (ACC) (SP) (D) (ACC) (SP) SP+1 SP
8.MCS-51单片机各中断源的优先级别设定是利用寄存器(
(A) TMOD (B) IP (C) P CON (D)SCON
9.指令AJMP的跳转范围是(C ) 0
(A) 256B (B) 1KB (0 2 KB (D) 64 KB
10.执行返回指令时,返回的断点是(
(A)调用指令的首地址(B)调用指令的末地址
(C)调用指令下一条指令的首地址(D)返回指令的末地址
三、判断题(将判断结果填写在括号内, 正确画“2”错误画“X”)(10 分)
1.我们所说的单片机系统实质上是单片机的硬件系统和软件系统的总称
(X )
四、分析说明题(本题10分)
1.指出以下程序段每一条指令执行后累加器
A 内的值,已知(R0)= 30H,CY=Q
2. 单片机的程 存储器只是用来存放程
(X)
3.
AT89S52 单片
断源优先级
(X )
4. 单片机外扩 I/O
RAM 是统一编
5. 单片机
有复位 电路。
(X )
6. 单片机上电复
堆栈指令
SP=00H 。
(X
7.
单片机系统中,
器周期等于 1.5us 0
8.使用AT89C52且EA =1时,仍可外扩 64K 的程序存储器。
9.调用子程序指令及返
回指令与堆栈有关但与 PC 无关。
10
(X
单片机外部中 断 0 的入口 地址是 0003H 。
2. 已知(SP =60H, ( DPTR =3456H ,在执行下列指令后,
(SP ) =_62__,内部 RAM( 61H) =_56H_。
PUSH DPH PUSH DPL
3. 执行下列程序后, MOV A , MOV B , MUL AB
1.片内RAM30H^始的单元中有10B 的二进制数,请编程求它们之和(和V
256 ).
解:
2. 编一个程序,将累加器中的一个字符从串行接口发送出去.
MOV A , # 0AAH ;(A)= 0AA H Q
CPL ;(A)= 55H
RL ;(A)= OAAH
RLC ;(A)= 54H Q CLR ;(A)= 54H Q
ADDC A , RO
;(A)= 84H Q
(A) =_40H__,( B) =
00H Q
#02H #20H 五、程序设计题 (本题20分)
ADDIO :MOV R0,30H
MOV R7,#9 MOV A,@R0 LOOP
INC R0
ADD A,@R0 DJNZ R7,LO OP
MOV 30H,A
RET
解: SOUT
:MOV SCON,#40H
MOV TMOD,#20H MOV TL1,#0E8H;; MOV TH1,#0E8H SETB TR1 MOV
SBUF,A
JNB T1,$ CLR T1 RET
设置串行接口为工作方式 定时器T1工作于模式2 设置波特率为1200b/s
六、实践操作题 (本题40 分)
任务:在数码管上循环显示0~9数字,时间间隔0.2 秒。(fosc=12MHZ) 。
要求:
根据要求设计硬件连接图。
编写程序。
上机调试并运行,展示结果。
参考程序:
ORG 0
START: MOV R1,#00H
NEXT: MOV A,R1
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV P0,A
LCALL DELAY
INC R1
CJNE R1,#10,NEXT
LJMP START
DELAY: MOV R5,#20
D2: MOV R6,#20 D1: MOV R7,#248 DJNZ R7,$
DJNZ R6,D1
DJNZ R5,D2
RET
TABLE:
DB 3FH,06H,5BH,4FH,66H
DB 6DH,7DH,07H,7FH,6FH
END
一、填空题(25分,每空 1 分)
1. AT89S51 单片机为8 位单片机
2. MCS-51 系列单片机的典型芯片分别为8031 8051 8751 。
3. AT89S51 的异步通信口为全双工单工/ 半双工/ 全双工)
4. AT89S51 有 2 级中断, 5 个中断源
5. AT89S51 内部数据存储器的地址范围是00H~7FH ,位地址空间的字节地址范围是20H~2FH ,对应的位地址范围是00H~7FH ,外部数据存储器的最
大可扩展容量是64K 。
6. AT89S51 单片机指令系统的寻址方式有__寄存器寻址直接寻址
寄存器间接寻址立即寻址基址寄存器加变址寄存器寻址
7. 如果(A)=34H , (R7)=0ABH,执行XCHA, R7 ;结果(A)二OABH
(R7)= 34H
8. 82C55 可以扩展 3 个并行口,其中8 条口线具有位操作功能;
9.当单片机复位时PSW^ 00 H,这时当前的工作寄存器区是0区,R4所对应
的存储单元地址为04 H。
10.若A中的内容为67H,那么,P标志位为 1 0
11. 74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选
中8 片芯片。
二、简答题
1、如果(DPTR)=507BH (SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下
列指令后:
POP DPH;
POP DPL;
POP SP;
则:(DPH)= ___3CH___;(DPL) =___5FH___;(SP) =___50H___; ( 6分) 2、采用6MHz的晶振,定时1ms用定时器方式0时的初值应为多少?(请给出计
算过程)( 6 分)解:???采用6MHZ晶振???机器周期为2us
(213-X)X 2X 10-6=1 X 10-3
??? X=7692 ( D) =1E0CH=1 1110 0000 1100 ( B),
化成方式0 要求格式为1111 0000 1100 B
即0F00CH
综上可知:TLX=0CH, THX=0F0H
3.分析下列程序的功能( 5 分)
PUSH ACC
PUSH B
POP ACC
POP B
解:该程序的功能是通过累加器ACC与寄存器B数据交换。
三、图为8 段共阴数码管,请写出如下数值的段码。
0__ 3FH___1__06H___2_5BH 3_ 4FH__4_ 66H_ 5 6DH
P__73H__ 7_03H___ 8 _7FH
C_39H
四、简述MCS-51系列单片机主从结构多机通信原理,设有一台主机与三台从机通信,其中一台从机通信地址号为01H,请叙述主机呼叫从机并向其传送一个字节数
据的过程。(请给出原理图)(10 分)答:原理图如上图所示,假设主机呼叫01H 从机,首先呼叫:主机发送地址帧0000 00011
(TB8)此时各从机的SM2位置1,且收到的RB8=1,故激活RI。各从机将接收到
的地址与地机地址比较,结果1#机被选中,则其SM2清零;0#、2#机不变。接着
传数;主机发送数据帧,xxxx XXXX 0 ,此时1#机SM2=0, RB8=0则激
活RI,而0# 2#机SM2=1,RB8=(则不激活RI,然后数据进入1#机的缓冲区。
五、简述一种多外部中断源系统的设计方法。(给出图和程序)(10分)
答:原理电路如图所示程序如下:
INT:PUSH PSW
P USH A
JNB P1.0, IR0 ;扫描中断请求
JNB P1.1 , IR1 JNB P1.2, IR2 JNB P1.3, IR3 INTIR: POP A
POP PSW
AJMP INTIR
IR1: 中断服务子程序
AJMP INTIR IR2: 中断服务子程序
AJMP INTIR IR3: 中断服务子程序
AJMP INTIP
六、简述行列式扫描键盘的工作原理。 (8 分) 答: 扫描键盘工作原理
(1) 首先XO ?X3,始终接高电平,Y0?Y3给低电平,扫描P 1.0?P1.3若全为高电平,则
没有键按下 , 若有低电平 , 则有键按下。
⑵ 接着Y0输出低电平,Y 1?Y3输出高平,扫描P1.0?P1.3,若全为高电平,则没有键
按下,若有低电平 , 则找出相位 ,得到所按的键。
(3) 再 Y1 输出低电平 ,Y0,Y2,Y3 输出高电平 , 重复第 2 步骤作 .
⑷ 再Y2输出低电平,Y0,Y1,Y3输出高电平扫描 ⑸再Y3输出低电平,Y0,Y1,Y2输出高电平扫描
;返回
IR0: 中断服务子程序
;中断服务
6000H ?7FFFH A000H ?BFFFH
ORG 0000H
ORG 0100H
MOV DPH,#60H
MOVX @DPTR, A
INC R0 INC DPTR
根据据以上扫描,确定以上各键是否按下。 七、请回答: (共 20分)
1、
下图中外部扩展的数据存储器容量是多少? (2 分) 2、
三片 6264 的地址范围分别是多少? (地址线未用到的位填 1) (6 分,)
3、
若外部程序存储器已扩展(未画出) ,请编写程序,要求: (1) 将30H ?3FH 中的内容送入 6264 1#的前16个单元中;(6分) (2) 将6264 2#的前32个单元的内容送入 40H~5FH 中; (6分)
解:1.外部扩展的数据存储器为 3片8K 的RAM 外扩容量为24 K
2. A15 A!4 A13
地址范围
3 .(1)
程序如下: RESET : AJMP MAIN ;复位,转主程序
MAIN :
MOV DPL,#00H ; 初始化 DPTR LOOP:
MOV R0,#30H.
初始化 R0
MOV A ,@R0
CJNE R0,#40H,LOOP
NOP
RET
(1)程序如下:
ORG 0000H
RESET:AJMP MAIN ;转主程序
ORG 0100H
MAIN:MOV DPL#00H ;初始化DPTR
MOV DPH,#0A0H
MOV R0,#40H ;初始化R0
LOOP2 MOVX A,@DPTR
MOV @R0,A
INC DPTR
INC R0
CJNE R0,#60H,LOOP2
NOP
RET
24分,每空1 分)
)位的单片机。
)个中断源,(2
一、填空题
1.AT89S51单片机是(8
2.AT89S51单片机有(5 )个中断源,(2 )级优先级中断。
3 .串行口方式3发送的第9位数据要事先写入(SCON)寄存器的(TB8 )位。
4.串行口的方式0的波特率为( f OSC/1 2 )。
5.AT89S51 内部数据存储器的地址范围是(00- 7FH ),位地址空间的字节地址范围是(20-2FH),对应的位地址范围是(00-7FH)外部数据存储器的最大可扩展容量是
(64KB )。
6.在内部RAM 中可位寻址区中,位地址为40H 的位,该位所在字节的字节地址为(28H )。 如果(A )=58H , (R1)= 49H, (49H )= 79H,执行指令 XCH A, @R 后;结果(A )=( 49 H ),
(49H )=( 58H )。
利用81C55可以扩展( 当单片机复位时PS 辟
10. 若A 中的内容为88H,
11. 当AT89S51执行MOVC A @A+ DPT 指令时,伴随着(PSEN* )控制信号有效。 12. AT89S51访问片外存储器时,利用(ALE )信号锁存来自(P0 口 )发出的低 8位地址
信号。
13. 已知fosc=12MHz T0作为定时器使用时,其定时时间间隔为( 1us )。 14. 若AT89S5外扩8KB 程序存储器的首地址若为1000H,则末地址为(2FFF ) H 。
连接。(V )
10.各中断源发出的中断请求信号,都会标记在 AT89S51的 TCON 寄存器中。(X )
三、简答题
1.如果(DPTR)=5678H (SP)=42H, (3FH)=12H , (40H)=34H , (41H)=50H , (42H)=80H ,
则执行下列指令后:
POP DPH POP DPL RET
贝(PCH ) = 34H ;( PCL = 12H ;( DPH = 80H _ (DPL = 50H ;( 4 分)
2. AT89S51采用6MHZ 的晶振,定时2ms 如用定时器方式1时的初值(16进制数)应为 多
7. 3 )个并行口,(256)个RAM 单元。
(00)H, SP =( 07H ),P0~P3口均为(高)电平。 那么,P 标志位为(0
)。
8. 9. 二、判断对错,如对则在(
)中写“2”,如错则在(
)中写“X”。( 10分)
AT89S51单片机可执行指令:MOV 35H @R 3 ( X ) 8031与8751的区别在于内部是否有程序存储器。(V ) 当向堆栈压入一个字节的数据后,SP 中的内容减1。(X ) 程序计数器PC 中装的内容是当前正在执行指令的地址。(X )
某特殊功能寄存器的字节地址为 80H,它即能字节寻址,也能位寻址。(V ) AT89S51单片机中的PC 是不可寻址的。(V )
当AT89S51执行MOVX @DPTFA 指令时,伴随着 WR 信号有效。(X )
AT89S51的定时器/计数器对外部脉冲进行计数时,要求输入的计数脉冲的高电平或 低电
平的持续时间不小于1个机器周期。(X )
区分外部程序存储器和数据存储器的最可靠的方法是看其是被 WR 坯是被PSEN 信号
1. 2. 3. 4. 5. 6. 7. 8. 9.
少?(写出计算过程)(6分)答:机器周期6X 106=2X 10-6s=2uS
缺点是:占用的 BOH
H ⑵ 3f
8-9 80 e5:T 92 d
? dp I/O 口太多,当需要的LED 825目较多时,需要外扩展的I/O F 7CH 1
—
匚 CH t
口。
又方式1为16进制定时器.故
(216
—X )X 2X 10-6
=2X 10-3
=>216
-X=1000
=>X=65536-1000=64536 即初值=FC18H
3. AT89S5外扩的程序存储器和数据存储器可以有相同的地址空间,但不会发生数据冲
突,为什么? ( 6分)
答:不发生数据冲突的原因是:AT89S51中访问程序存储器和数据存储器的指令不一样。
选通信号也就不一样,前者为PSEN 后者为WF 与 RD 程序存储器访问指令为 MOVC A @DPTRMOVC A,@A+p c
数据存储器访问指令为:MOVX A,@DPT ; MOVX A,@Ri; MOVX @DPTR,A
4. 说明AT89S51的外部引脚EA*的作用? ( 4分)
答:当EA*为高电平时,AT89S51访问内部程序存储器,但当地址大于0FFF 时,自动转 到外部程序存储器;当EA*为低电平时,AT89S51只读取外部程序存储器。
5. 写出AT89S51的所有中断源,并说明说明哪些中断源在响应中断时,由硬件自动
清除,哪些中断源必须用软件清除,为什么? (6分)
答:外部中断INT0*
定时器/计数器中断 外部中断INT1* 定时器/计数器中断 串行口中断
其中串行口中断TI 断为RI,故用软件清“ 0”。
四、下图为某AT89S51应用系统的3位LED 8段共阳极静态显示器的接口电路,(1)该 静态显示器电路与动态扫描的显示器电路相比有哪些优缺点? (
2)写出显示字符“3”、
“ 8”、“5”的段码,注意:段码的最低位为“ a ”段,段码的最高位为“ dp ”段(3) 已知8255A 的PA D 、PB 口和PC 口的地址分别为 FF7CH FF7DH FF7EH 且8255A 的这3 个端口均已被编写完毕的初始化程序初始化为方式
0输出,请编写出使3位LED 共阳极
显示器从左至右显示“ 3.85 ”的程序段。(14分)
来自 AT89S51
解:⑴ 优点是:亮度高,字符不闪烁,占用CPI 资源少C
TO T1 与RI 必须用软件清“0”,因为串口中断的输出中断为TI,输入中 PA PC
H c
DP TR,#OF
MOVX @DP TR,A MOV DP TR,#0FF7DH MOV A ,#80H MOVX @DP TR,A
MVOX @DP TR,#0FF7EH MOV A,#92H MOVX @DP TR,A RET
五、画出AT89S5係列单片机利用串行口进行1台主机与4台从机多机串行通讯连线图, 其中
1台从机通讯地址号为02H,请叙述主机向02H 从机发送一个字节数据的过程(10分) 答:主机
发送数据过程如下:
(1) 将从机00-03H 的REN 置1, SM2=1并使它们工作在串行口工作方式 2或3。 (2) 由主机向4个从机发出一帧地址址信息02H,第9位为1。从机接到信息后均 发生中断,执行中断服务程序,将 不同则
SM2不变仍为1。
(3) 主机发送一帧数据信息,第 生中断,将数据信息收取,其余 机向02H 从机发送一个字节数据的功能。
一、填空题(25分,每空1分)
7. 如果(A)=34H ,(R7)=0ABH,执行 XCHA R7 ;结果(A)= 0ABH
02H 与自身地址做比较。若相同,则清 SM2=0若 9位为0,从机接到信息后,只有 SM2=0勺从机发 SM2=1的从机不放出中断,信息丢失,从而实现主
1. AT89S51 单片机为8 位单片机
2. MCS-51 系列单片机的典型芯片分别为 8031
8051
8751
。
3. AT89S51 的异步通信口为 全双工
(单工/半双工/全双工) 4. AT89S51 有2 级中断,5
个中断源
5. AT89S51
内部数据存储器的地址范围是
00H ?7FH
,位地址空间的字节 地址范围是 20H~2FH
,对应的位地址范围是 00H~7FH
,外部数据存储器的最
大可扩展容量是64K 。
6. AT89S51单片机指令系统的寻址方式有
寄存器寻址 直接寻址
寄存器间接寻址
立即寻址
、基址寄存器加变址寄存器寻址
(R7)= 34H
8. 82C55 可以扩展 3 个并行口,其中8 条口线具有位操作功能;
9.当单片机复位时PSW^ 00 H,这时当前的工作寄存器区是0区,R4所对应
的存储单元地址为04 H。
10.若A中的内容为67H,那么,P标志位为 1 0
11.74LS138是具有3个输入的译码器芯片,其输出作为片选信号时,最多可以选
中8 片芯片。
二、简答题
1、如果(DPTR)=507BH (SP)=32H,(30H)=50H,(31H)=5FH,(32H)=3CH,则执行下
列指令后:
POP DPH;
POP DPL;
POP SP;
则:(DPH)= ___3CH___;(DPL) =___5FH___;(SP) =___50H___; ( 6分) 2、采用6MHz的晶振,定时1ms用定时器方式0时的初值应为多少?(请给出计
算过程)(6分)
解:T采用6MHZ晶振???机器周期为2us
(213-X)X 2X 10-6=1 X 10-3
??? X=7692 ( D) =1E0CH=1 1110 0000 1100 ( B),
化成方式0 要求格式为1111 0000 1100 B
即0F00CH
综上可知:TLX=0CH, THX=0F0H
3.分析下列程序的功能( 5 分)
PUSH ACC
PUSH B
POP ACC
POP B
解:该程序的功能是通过累加器ACC与寄存器B数据交换。
三、图为8 段共阴数码管,请写出如下数值的段码。
0__ 3FH___1__06H___2_5BH 3_ 4FH__4_ 66H_ 5 6DH
P__73H__ 7_03H___ 8 _7FH
C_39H
四、简述MCS-51系列单片机主从结构多机通信原理,设有一台主机与三台从机通信,其中一台从机通信地址号为01H,请叙述主机呼叫从机并向其传送一个字节数
据的过程。(请给出原理图)(10 分)答:原理图如上图所示,假设主机呼叫01H 从机,首先呼叫:主机发送地址帧0000 00011
(TB8)此时各从机的SM2位置1,且收到的RB8=1,故激活RI。各从机将接收到
的地址与地机地址比较,结果1#机被选中,则其SM2清零;0#、2#机不变。接着
传数;主机发送数据帧,XXXX XXXX 0 ,此时1#机SM2=0, RB8=0则激
活RI,而0# 2#机SM2=1,RB8=(则不激活RI,然后数据进入1#机的缓冲区。
五、简述一种多外部中断源系统的设计方法。(给出图和程序)(10分)
答:原理电路如图所示 程序如下:
AJMP INTIR
IR1: 中断服务子程序
AJMP INTIR IR2: 中断服务子程序
AJMP INTIR IR3: 中断服务子程序
AJMP INTIP
六、简述行列式扫描键盘的工作原理。 (8 分) 答: 扫描键盘工作原理
(1)首先XO ?X3,始终接高电平,Y0?Y3给低电平,扫描P 1.0?P1.3若全为高电平,则
没有键按下 , 若有低电平 , 则有键按下。
INT : PUSH PSW PUSH A
JNB P1.0, IR0 JNB P1.1 , IR1 JNB P1.2,
IR2 JNB P1.3,
IR3
;扫描中断请求
;返回
POP PSW
IR0: 中断服务子程序
;中断服务
INTIR: POP A