首页 > 代码库 > 单片机试题
单片机试题
1、内部RAM中的位寻址区定义的位是给( B )。
A).位操作准备的 B).移位操作准备的 C).控制转移操作准备的 D).以上都对
2、对程序计数器PC的操作( A )。
A).是自动进行的 B).是通过传送进行的
C).是通过加1指令进行的 D).是通过减 1 指令进行的
3、假定设置堆栈指针SP的值为37H,在进行子程序调用时把断点地址进行堆栈保护后,SP的值为( D )。
A).36H B). 37H C).38H D).39H
4、在MCS-51单片机的运算电路中,不能为 ALU 提供数据的是( D )。
A).累加器A B).暂存器 C).通用寄存器B D).状态条件寄存器PSW
5、边沿触发方式的外部中断信号是( A )有效。
A).下降沿 B).上升沿 C).高电平 D).低电平
6、MCS-51响应中断时,下面哪一个条件不是必须的( B )。
A).当前指令执行完毕 B).中断是开放的
C).没有同级或高级中断服务 D).必须有RETI指令
7、确定定时器/计数器工作方式的寄存器是( B )。
A).TCON B).TMOD C).SCON D).PCON
8、异步串行通信中,收发双方必须保持( B )。
A).收发时钟相同 B).停止位相同
C).数据格式和波特率相同 D).以上都正确
9、使累加器的最高位置1,其余位不变,可以用下面的( A )指令实现。
A). ORL A, #80H B). ANL A, #80H
C). XRL A, #80H D). MOV A, #80H
10、在MCS-51单片机外扩展存储器芯片时,4个I/O口中用作地址总线的是( B )。
A). P0口 B). P0和P2口 C).P2和P3口 D).P2口
11、访问外部数据存储器时,不起作用的信号是( C )。
A).RD B).WR C).PSEN D).ALE
12、以下指令中,属于单纯读引脚的指令是( C )。
A). MOV P1, A B). ORL P1, #0FH
C). DJNZ P1, LAB D). MOV C, P1.5
13、对程序存储器的读操作,只能使用( C )指令。
A). MOVX B).PUSH C). MOVC D).MOV
14、若MCS-51中断源都编程为同级,当它们同时申请中断时,CPU首先相应( B )
A).INT1 B).INT0 C).T1 D).T0
15、当MCS-51进行多机通讯时,串行接口的工作方式应选为(D )
A).方式0 B).方式1 C).方式2 D).方式2或方式3
1、PSW中RS1 RS0=10H时,R2的地址是 12H 。
2、单片机经加电复位后,执行第一条指令的地址是 0000H 。
3、在串行通信中,数据传送方向有 单工 、 半双工 、全双工三种方式。
4、一个机器周期= 6 个状态周期=12个振荡周期。
5、设DPTR=2000H,(A)=A0H,则MOVC A,@A+DPTR操作数的实际操作地址为 20A0H 。
6、若8051单片机的引脚EA接地,表示 只能访问片外程序存储器 。
7、在 MCS-51 单片机系统中,采用的编址方式是 统一编址 。
8、在查询和中断两种数据输入输出方式中,效率较高的是 中断 。
9、指令LCALL 37B0H,首地址在2000H,所完成的操作是 2003H 入栈,PC= 37B0H 。
10、外部中断INT1入口地址为 0013H 。
11、ANL A, #0F0H是将A的高四位保持不变,而低4位 取反 。
12、8051单片机定时器/计数器作定时和计数用时,其计数脉冲分别由 8051片内脉冲 和 P3.4或P3.5引脚端的外
部脉冲 提供。
判断下列叙述的正误,对的打“”√,错的打“×”,并对错误的叙述进行改正。
1、复位是单片机的初始化操作。 ( √ )
2、内部 RAM 的位寻址区,只能供位寻址使用而不能供字节寻址使用。 ( × ) 可以字节寻址
3、在相对寻址方式中,寻址的结果体现在DPTR中。 ( × ) PC
4、PC存放的是当前正在执行的指令的地址。 ( × )下一条令地址
5、MOV 28H, @R4 ( × )MOV 28H,@R0或MOV 28H,@R1
1、(4分)简述单片机对中断优先级的处理原则。
答:1)先处理优先等级高的中断,再处理优先等级低的中断
2)若这些中断属于同一优先等级,则按中断硬件查询顺序进行排队,依次处理
3)若当前正在处理的是低优先级的中断,在CPU开中断的前提下,它能被另一个高优先级的中断申请中断,形成中断嵌套。
4)若当前正在处理的是高优先级中断,则暂不响应其他中断。
2、(6分)8051单片机有哪几种寻址方式?每种寻址方式各涉及哪些寄存器和存储器空间。请说明。
答:
寻址方式 | 涉及的寄存器 | 使用的存储空间 |
直接寻址 |
| 片内RAM低128位字节 |
寄存器寻址 | R0~R7,A,B,Cy,DPTR | 片内RAM |
寄存器间接寻址 | R0,R1,DPTR | 片内RAM,片外RAM与I/O口 |
立即数寻址 |
| 程序存储器 |
基寄存器加变址寄存器间接寻址 | A,PC,DPTR | 程序存储器 |
相对寻址 | PC | 程序存储器 |
位寻址 | Cy | 片内RAM的20H~2FH,部分SFR |
1、(5分)编程实现下列运算:设Di为片内RAM 22H单元中对应位,运算结果存入进位位CY中。
MOV C,22H.0
ANL C,22H.1
MOV 22H.2,C ;D0.D1->D2
CPL 22H.1
MOV C,22H.0
ANL C,22H.1 ;D0.D1_->C
ORL C,22H.2 ;D0.D1+D0.D1_->C
CPL C
MOV 22H.2,C
MOV C,22H.7
CPL C
ANL C,22H.5 ;D5.D7_->C
ORL C,22H.2
2、(5分)试编写延时2S的子程序,并给出2S时间的得出算式。
ORG 000BH ;T0中断入口
AJMP BRT0 ;跳转到BRT0执行中断服务程序
DELAY: MOV TMOD,#01H ;设置T0用于定时,模式1方式
MOV TH0,#3CH ;装入定时初值
MOV TL0,#0B0H
MOV IE,#82H ;T0允许中断
SETB TR0 ;启动T0计数
MOV R0,#14H ;软件计数器R0赋初值
LOOP: SJMP $ ;等待中断
BRT0: DJNZ R0,NEXT ;若未到1s,则转到NEXT
RET ;本延时子程序返回
NEXT: MOV TH0,#3CH ;重装定时器初值
MOV TL0,#0B0H
RETI
1、(9分)利用SRAM芯片6264扩展8KB数据存储器(提示:6264上有两个片选信号CE1、CE2)。试①确定地址译码范围,写出所有可能地址范围;②画出系统结构图。
答:(1)由于使CE1(低电平有效)接地,CE2(高电平有效)用作片选,接P2.7,所以其地址范围为1xx0 0000 0000 0000B~1xx1 1111 1111 1111B
可能地址译码范围: 8000H~9FFFH,A000H~BFFFH,C000H~DFFFH,E000H~FFFFH
2)
2、(16分)MCS-51与ADC0809的连接如下图所示,A/D转换结果依次存放在片外数据存储器40H~47H单元,单片机和A/D转换器的数据传送间址寄存器采用DPTR。①试确定通道地址;②试用中断方式编写A/D转换接口程序并写出注释。
(1)78H~7FH
(2)
ORG 0000H
START: AJMP MAIN
ORG 0003H
AJMP EXINT0
ORG 0030H ;表示主程序从0030H地址开始
MAIN: MOV R0,#40H ;采样数据存放的首地址
MOV R1,#78H ;IN0通道地地址
MOV R2,#08H ;模拟量通道数
MOVX @R1,A ;启动A/D转换
SETB IT0 ;外部中断0为边沿触发方式
SETB EX0 ;允许外部中断0中断
SETB EA ;开放CPU中断
HERE: SJMP HERE
EXINF0: PUSH PSW 保护现场
CLR RS0
CLSR RS1
MOVX A,@R1 ;读取转换结果
MOV @R0,A ;存放结果
INC R0
INC R1
DJNZ R2,NEXT ;8通道未完,则采取下一通道
CLR EX0 ;采集完毕,则停止中断
SJMP DONE
NEXT: MOVX @R1,A ;启动下一通道A/D转换
DONE: POP PSW
RETI
END
单片机试题