单片机期末复习题知识分享.docx
- 文档编号:23426745
- 上传时间:2023-05-17
- 格式:DOCX
- 页数:18
- 大小:53.33KB
单片机期末复习题知识分享.docx
《单片机期末复习题知识分享.docx》由会员分享,可在线阅读,更多相关《单片机期末复习题知识分享.docx(18页珍藏版)》请在冰豆网上搜索。
单片机期末复习题知识分享
一、判断题
1.在MCS—51单片机内部结构中,TMOD为模式控制寄存器,主要用来控制定时器的启动与停止。
F
2.在MCS—51单片机内部结构中,TCON为控制寄存器,主要用来控制定时器的启动与停止。
T
3.MCS—51单片机的两个定时器的均有两种工作方式,即定时和计数工作方式。
T
4.8051单片机5个中断源相应地在芯片上都有中断请求输入引脚。
F
5.可使用SETBTRi启动定时器工作。
T
6.中断初始化时,对中断控制器的状态设置,只可使用位操作指令,而不能使用字节操作指令。
F
7.MCS—51单片机的中断允许寄存器的IE的作用是用来对各中断源进行开放或屏蔽的控制。
T
8.编写中断服务程序时,应在中断入口矢量地址处放一条无条件转移指令,以防止中断服务程序容纳不下。
T
9.对串行口中断,CPU响应中断后,必须在中断服务程序中用软件清除相应的中断标志位,以撤消中断请求。
T
10.串行口数据缓冲器SBUF是可以直接寻址的专用寄存器。
T
11.如设外部中断0中断,应置中断允许寄存器IE的EA位和EX0位为1。
T
12.当8031的定时器T0计满数变为0后,溢出标志位(TCON的TF0)也变为0。
F
13.工作寄存器区不允许做普通的RAM单元来使用。
F
14.工作寄存器组是通过置位PSW中的RS0和RS1来切换的。
T
15.特殊功能寄存器可以当作普通的RAM单元来使用。
F
16.8051单片机复位后,PC指针初始化为0000H,使单片机从该地址单元开始执行程序。
T
17.51单片机响应中断后,所有中断请求标志位都由硬件自动清零。
F
18.在51系列单片机中,中断服务程序从矢量地址开始执行,一直到返回指令RETI为止。
T
19.在执行子程序调用或执行中断服务程序时都将产生压栈的动作。
T
20.定时/计数器在工作时需要消耗CPU的时间。
F
21.在51系列单片机的指令中,既有带借位的减法指令,又有不带借位的减法指令。
F
22.串行通信的优点是只需一对传送线,成本低,适于远距离通信,缺点是传送速度较低。
T
23.在异步通信的帧格式中,数据位是低位在前高位在后的排列方式。
T
24.异步通信中,波特率是指每秒传送二进制代码的位数,单位是b/s。
T
25.在8051的串行通信中,串行口的发送和接收都是对特殊功能寄存器SBUF进行读/写而实现的。
T
26.在单片机8051中,发送SBUF和接收SBUF在物理上是独立的,但地址是相同的。
T
27.要进行多机通信,MCS-51串行接口的工作方式应为方式1。
F
28.中断服务程序的最后一条指令是RET。
F
29.P2口既可以作为I/O使用,又可以作地址/数据复用口使用。
F
30.在中断响应阶段CPU一定要做如下两件工作:
保护断点和给出中断服务程序入口地址。
T
31.MOV A,30H的源操作数为立即寻址方式。
F
32.AJMP跳转空间最大可达到64KB。
F
33.定时器与计数器的工作原理均是对输入脉冲进行计数。
T
34.由于MCS-51的串行口的数据发送和接收缓冲器都是SBUF,所以其串行口不能同时发送和接收数据,即不是全双工的串行口。
F
35.TMOD中GATE=1时,表示由两个信号控制定时器的启停。
T
36.当MCS-51上电复位时,堆栈指针SP=00H。
F
37.MCS-51的特殊功能寄存器分布在60H~80H地址范围内。
F
38.执行返回指令时,返回的断点是调用指令的首地址。
F
39.MOVA,R0这是寄存器寻址方式。
T
40.8051单片机的P0口既可以做数据口线又可以做地址口线。
T
41.8051单片机的P2口只能用作通用I/O口。
F
42.程序存储器和数据存储器的作用不同,程序存储器一般用来存放数据表格和程序,而数据存储器一般用来存放数据。
F
43.要进行多机通信,MCS-51串行接口的工作方式应为方式2或方式3。
T
44.MCS-51外扩I/O口与外扩RAM是统一编址的。
T
------------------------------------------------------------------------------------------------
二、选择题
1.8031单片机的定时器T0用作计数方式时是__C__。
A.由内部时钟频率定时,一个时钟周期加1
B.由内部时钟频率定时,一个机器周期加1
C.由外部计数脉冲计数,下降沿加1
D.由外部计数脉冲计数,一个机器周期加1
2.8031单片机的定时器T0用作定时方式时是__D__。
A.由内部时钟频率定时,一个时钟周期加1
B.由外部计数脉冲计数,一个机器周期加1
C.外部定时脉冲由T0(P3.4)输入定时
D.由内部时钟频率计数,一个机器周期加1
3.用8031的定时器T1作定时方式,用模式1,则初始化编程为__C__。
A.MOVTOMD,#01HB.MOVTOMD,#50HC.MOVTOMD,#10HD.MOVTCON,#02H
4.启动定时器1开始定时的指令是__D__。
A.CLRTR0B.CLRTR1C.SETBTR0D.SETBTR1
5.使8031的定时器T0停止计数的指令是__A__。
A.CLRTR0B.CLRTR1C.SETBTR0D.SETBTR1
6.下列指令判断若定时器T0计满数就转LP的是__D__。
A.JBT0,LPB.JNBTF0,LPC.JNBTR0,LPD.JBTF0,LP
7.下列指令判断若定时器T0未计满数就原地等待的是__B__。
A.JBT0,$B.JNBTF0,$C.JNBTR0,$D.JBTF0,$
8.用8031的定时器T0定时,用模式2,则应__D__。
A.启动T0前向TH0置入计数初值,TL0置0,以后每次重新计数前要重新置入计数初值。
B.启动T0前向TH0、TL0置入计数初值,以后每次重新计数前要重新置入计数初值。
C.启动T0前向TH0、TL0置入计数初值,以后不再置入。
D.启动T0前向TH0、TL0置入相同的计数初值,以后不再置入。
9.8031单片机晶振频率fosc=12MHz,则一个机器周期为____B___μS。
A.12B.1C.2D.6
10.MCS—51单片机定时器溢出标志是__D__。
A.TR1和TR0B.IE1和IE0C.IT1和IT0D.TF1和TF0
11.用定时器T1方式2计数,要求每计满100次,向CPU发出中断请求,TH1、TL1的初始值是__A__。
A.9CHB.20HC.64HD.A0H
12.MCS—51单片机外部中断1和外部中断0的触发方式选择位是__C__。
A.TR1和TR0B.IE1和IE0C.IT1和IT0D.TF1和TF0
13.MCS—51单片机定时器T1的溢出标志TF1,计满数产生溢出时不用中断方式而用查询方式,则应__B__。
A.由硬件清零B.由软件清零C.由软件置于D.可不处理
14.MCS—51单片机定时器T0的溢出标志TF0,若计满数产生溢出时,其值为是__C__。
A.00HB.FFHC.1D.计数值
15.MCS—51单片机定时器T0的溢出标志TF0,若计满数在CPU响应中断后___A___。
A.由硬件清零B.由软件清零C.A和B都可以D.随机状态
16.8031响应中断后,中断的一般处理过程是__A__。
A.关中断,保护现场,开中断,中断服务,关中断,恢复现场,开中断,中断返回
B.关中断,保护现场,保护断点,开中断,中断服务,恢复现场,中断返回
C.关中断,保护现场,保护中断,中断服务,恢复断点,开中断,中断返回
D.关中断,保护断点,保护现场,中断服务,关中断,恢复现场,开中断,中断返回
17.MCS—51单片机串行口发送/接收中断源的工作过程是:
当串行口接收或发送完一帧数据时,将SCON中的___A____,向CPU申请中断。
A.RI或TI置1B.RI或TI置0C.RI置1或TI置0D.RI置0或TI置1
18.MCS—51单片机响应中断的过程是__D__。
A.对应中断矢量地址装入PC
B.关中断,程序转到中断服务程序
C.断点压栈,PC指向中断服务程序地址
D.断点PC自动压栈,对应中断矢量地址装入PC,程序转到该矢量地址,再转至中断服务程序首地址
19.执行中断处理程序最后一句指令RETI后,____D_____。
A.程序返回到ACALL的下一句B.程序返回到LCALL的下一句
C.程序返回到主程序开始处D.程序返回到响应中断时一句的下一句
20.MCS—51的串行口工作方式中适合多机通信的是__B__。
A.方式0B.方式3C.方式1
21.MCS—51单片机响应中断矢量地址是__C__。
A.中断服务程序的首句地址B.中断服务程序的出口地址
C.中断服务程序的入口地址D.主程序等待中断指令的地址
22.MCS—51单片机外部有40个引脚,其中,地址锁存允许控制信号引脚是___A___。
A.ALEB.
C.
D.RST
23.MCS—51单片机串行口接收数据的次序是下述____B_____的顺序。
(1)接收完一帧数据后,硬件自动将SCON的R1置1
(2)用软件将RI清零
(3)接收到的数据由SBUF读出
(4)置SCON的REN为1,外部数据由RXD输入
A.
(1)
(2)(3)(4)B.(4)
(1)
(2)(3)C.(4)(3)
(1)
(2)D.(3)(4)
(1)
(2)
24.MCS—51单片机串行口发送数据的次序是下述____A_____的顺序。
(1)待发送数据送SBUF
(2)硬件自动将SCON的TI置1
(3)经TXD串行发送一帧数据完毕
(4)用软件将TI清0
A.
(1)(3)
(2)(4)B.
(1)
(2)(3)(4)C.(4)(3)
(1)
(2)D.(3)(4)
(1)
(2)
25.一主程序中有一句LP:
SJMPLP,功能指令为等待中断,当发生中断且中断返回后,____D____。
A.返回到主程序开始处B.返回到该句的下一条指令处
C.返回到该句的上一条指令处D.返回到该句
26.8031单片机的____D___口的引脚,还具有外中断、串行通信等第二功能。
A.P0B.P1C.P2D.P3
27.单片机应用程序一般存放在____B___。
A.RAMB.ROMC.寄存器D.CPU
28.INTEL8051CPU是___C___位的单片机。
A.16B.4C.8D.准16
29.当需要从MCS-51单片机程序存储器取数据时,采用的指令为____B___。
A.MOVA,@R1B.MOVCA,@A+DPTR
C.MOVXA,@R0D.MOVXA,@DPTR
30.8031单片机中既可位寻址又可字节寻址的单元是____A__。
A.20HB.30HC.00HD.70H
31.MCS-51单片机复位操作的主要功能是把PC初始化为____C___。
A.0100HB.2080HC.0000HD.8000H
32.若单片机的振荡频率为6MHz,设定时器工作在方式1需要定时1ms,则定时器初值应为___C_。
A.500B.1000C.216-500D.216-1000
33.当外部中断请求的信号方式为脉冲方式时,要求中断请求信号的高电平状态和低电平状态都应至少维持___A___。
A.1个机器周期B.2个机器周期C.4个机器周期D.10个晶振周期
34.8031单片机中,将累加器A中的数送入外RAM的40H单元,可执行的指令____D___。
A.MOVR1,40HB.MOVR1,#40HC.MOVX40H,AD.MOVR1,#40H
MOVX@R1,AMOVXR1,AMOVX@R1,A
35.在中断服务程序中至少应有一条____D___。
A.传送指令B.转移指令C.加法指令D.中断返回指令
36.要用传送指令访问MCS-51片外RAM,它的指令操作码助记符是____B___。
A.MOVB.MOVXC.MOVCD.以上都行
37.执行LACLL4000H指令时,MCS-51所完成的操作是____D___。
A.保护PCB.4000H
PCC.保护现场D.PC+3入栈,4000H
PC
38.若某存储器芯片地址线为12根,那么它的存储容量为____C___。
A.1KBB.2KBC.4KBD.8KB
39.PC中存放的是___A___。
A.下一条指令的地址B.当前正在执行的指令C.当前正在执行指令的地址D.下一条要执行的指令
40.关于MCS-51的堆栈操作,正确的说法是____C___。
A.先入栈,再修改栈指针B.先修改栈指针,再出栈C.先修改栈指针,在入栈D.以上都不对
41.某种存储器芯片是8KB*4/片,那么它的地址线根数是___C___。
A.11根B.12根C.13根D.14根
42.用MCS-51用串行扩展并行I/O口时,串行接口工作方式选择____A___。
A.方式0B.方式1C.方式2D.方式3
43.MCS-51外扩ROM,RAM和I/O口时,它的数据总线是____A___。
A.P0B.P1C.P2D.P3
44.对程序存储器的读操作,只能使用____D___。
A.MOV指令B.PUSH指令C.MOVX指令D.MOVC指令
------------------------------------------------------------------------------------------------
三、简答题
1.8031的扩展储存器系统中,为什么P0口要接一个8位锁存器,而P2口却不接。
因为P0口是扩展存储器系统的低8位地址线和数据总线,在访问外部存储器时,P0口分时用作输出外部存储器低8位地址和传送数据。
为了使整个访问外部存储器期间低8位地址信号始终有效,P0口需要外接一个地址锁存器。
ALE信号就是用来把P0口输出的地址字节锁存在这个外接的锁存器中,再从锁存器输出外部存储器的低8位地址。
而P2口只用作扩展存储器系统的高8位地址线,并在整个访问外部存储器期间不变,所以不必外接地址锁存器。
2.简述51单片机中断的概念。
当CPU正在处理某件事情的时候,外部发生的某一事件请求CPU迅速去处理,于是,CPU暂时中止当前的工作,转去处理所发生的事件。
中断服务处理完该事件以后,再回到原来被中止的地方,继续原来的工作,这样的过程成为中断。
3.什么是保护现场,什么是恢复现场。
保护现场:
当CPU响应中断程序时,硬件会自动把断点地址(16位程序计数器的值)压入堆栈,但用户还须注意保护有关工作寄存器、累加器、标志位等信息。
恢复现场:
在完成中断服务程序后,恢复原工作寄存器、累加器、标志位等的内容。
4.51系列单片机具有几个中断源,分别是如何定义的。
51系列单片机具有5个中断源,分别是外部中断INT0和外部中断INT1、定时器溢出中断0和定时器溢出中断1以及串行中断。
5.各中断源对应的中断服务程序的入口地址是否能任意设定。
各中断源的入口地址已经在中断地址区中被定义了,不能任意设定。
6.在51系列单片机执行中断服务程序时,为什么一般都要在矢量地址开始的地方放一条跳转指令。
因为51系列单片机的两个相邻中断源中断服务程序入口地址相距只有8个单元,一般的中断服务程序是容纳不下的,因此一般都要在相应的中断服务程序入口地址处放一条跳转指令,转到实际存放中断服务程序的位置。
7.为什么一般都把主程序的起始地址放在0030H之后。
因为0000H~0030H中有中断的矢量地址,为了避免冲突,一般都把主程序的起始地址放在0030H之后。
8.如果想将中断服务程序放置在程序存储区的任意区域,在程序中应该作何种设置。
要将中断服务程序放置在程序存储区的任意区域,只要在对应的中断矢量入口处填写相应的跳转指令即可。
9.51系列单片机扩展外部程序存储器时,实际上还有多少条I/O线可以使用。
外接程序存储器时P0和P2口要用作数据和地址总线,所以只有P1和P3口可用作I/O口,共16条I/O线。
在使用外部存储器时,除了占用P0和P2口外,还需要用P3口RD(P3.7)和WR(P3.6)两条控制线,所以这种情况下就只剩下14条I/O线可用了。
10.数据指针DPTR和程序计数器PC都是16位寄存器,它们有什么不同之处?
数据指针DPTR是一个16位的寄存器,由2个8位特殊功能寄存器DPH和DPL拼装而成。
DPH作DPTR的高8位,DPL作DPTR的低8位。
因此,DPTR既可作为一个16位寄存器来使用,也可以作为二个独立的8位寄存器DPH和DPL使用。
DPTR用作地址指针用来存放片内、片外ROM和片外RAM的地址,可寻址范围为64K地址空间寻址。
程序计数器PC是一个16位加1计数器,用来存放将要执行的指令地址,编码范围为0000H~FFFFH共64K。
------------------------------------------------------------------------------------------------
四、简单编程题
1.把累加器A中的低4位送到外部RAM的2000H单元中,试编程序。
ANLA,#OFH
MOVDPTR,#2000H
MOVX@DPTR,A
2.利用乘法指令编写15H×33H的程序,将乘积的高8位存入31H单元,低8位存入30H单元
MOVA,#15H
MOVB,#33H
MULA,B
MOV31H,B
MOV30H,A
3.编写子程序,将片内35H~55H单元中的内容送入到以3000H为首的存储区中。
MOVR0,#35H
MOVR1,#21H
MOVDPTR,#3000H
LOOP:
MOVA,@R0
MOVX@DPTR,A
INCR0
INCDPTR
DJNZR1,LOOP
RET
4.请将片外RAM20H—25H单元清零
MOVR0,#20H
MOVR7,#06H
CLRA
LOOP:
MOVX@R0,A
INCR0
DJNZR7,LOOP
5.请将ROM3000H单元内容送R7
MOVDPTR,#3000H
CLRA
MOVCA,@A+DPTR
MOVR7,A
6.已知在累加器A中存放一个BCD数(0~9),请编程实现一个查平方表的子程序。
SQR:
INCA
MOVCA,@A+PC
RET
TAB:
DB0,1,4,9,16,25,36,49,64,81
7.一个十六进制数存放在内部RAM的HEX单元的低4位中,将其转换成ASCII码并送回HEX单元。
HEXASC:
MOVA,HEX
ANLA,#0FH
ADDA,#3;修改指针
MOVCA,@A+PC
MOVHEX,A;2字节指令
RET
ASCTAB:
DB30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,41H,42H,43H,44H,45H,46H
8.有两个无符号数x、y分别存放在内部存储器50H、51H单元中,试编写一个程序实现x*10+y,结果存入52H、53H单元中。
MOVR0,#50H
MOVR1,#53H
MOVA,@R0
MOVB,#0AH
MULAB
INCR0
ADDA,@R0
MOV@R1,A
DECR1
XCHA,B
ADDCA,#00H
MOV@R1,A
END
-------------------------------------------------------------------------------------------------
五、应用题
1.某一8051单片机系统,晶振频率为6MHz,现要从单片机的P1.7引脚输出一个连续的5Hz方波信号,请编写程序。
解:
5Hz的方波周期为200毫秒,高低电平各持续100毫秒,若晶振频率为6MHz,则机器周期为2微秒,故其计数值应为:
N=100ms/2μs=50000
采用方式1,计数初值=65536-50000=15536D=3CB0H
ORG0000H
AJMPMAIN;主程序
ORG000BH
AJMPT0INT;T0中断入口
ORG0100H
MAIN:
MOVSP,#60H
MOVTMOD,#01H
MOVTH0,#3CH
MOVTL0,#0B0H
CLRP1.7
SETBEA
SETBET0
SETBTR0
SJMP$
T0INT:
MOVTH0,#3CH
MOVTL0,#0B0H
CLPP1.7
RETI
END
2.试设计一个8051单片机的双机通信系统,编程将A机片内RAM中60H~6FH的数据块通过串行口传送至B机片内RAM的60H~6FH单元中。
甲机发送(采用查询方式):
MOVSCON,#80H;设置工作方式2
MOVPCON,#00H;置SMOD=0,波特率不加倍
MOVR0,#60H;数据区地址指针
MOVR2,#10H;数据长度
LOOP:
MOVA,@R0;取发送数据
MOVC,P;奇偶位送TB8
MOVTB8,C
MOVSBUF,A;送串口并开始发送数据
WAIT:
JBCTI,NEXT;检测是否发送结束并清TI
SJMPWAIT
NEXT:
INCR0;修改发送数据地址指针
DJNZR2,LOOP
END
乙机接收(查询方式):
MOVSCON,#90H;模作模式2,并允许接收
MOVPCON,#00H;置SMOD=0
MOVRO,#60H;置数据区地址指针
MOVR2,#10H;等待接收数据长度
LOOP:
JBCRI,READ;等待接收数据并清RI
SJMPLOOP
READ:
MOVA,SBUF;读一帧数据
MOVC,P
JNCLP0;C不为1转LP0
JNBRB8,ERR;RB8=0,即RB8不为P转ERR
AJMPLP1
LP0:
JBRB8,ERR;RB8=1,即RB8不为P转ERR
LP1:
MOV@R0,A;RB8=P,接收一帧数据
INCR0
DJNZR2,LOOP
ERR:
…;出错处理程序
END
3.8255A的PA口接一组开关,PB口接一组指示灯。
编写子程序将R2的内容送指示灯显示,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 期末 复习题 知识 分享