单片机期末复习题
更新时间:2024-04-13 04:51:01 阅读量: 综合文库 文档下载
单片机原理及应用
一、判断题
1.在MCS—51单片机内部结构中,TMOD为模式控制寄存器,主要用来控制定时器的启动与停止。F 2.在MCS—51单片机内部结构中,TCON为控制寄存器,主要用来控制定时器的启动与停止。T 3.MCS—51单片机的两个定时器的均有两种工作方式,即定时和计数工作方式。T 4.8051单片机5个中断源相应地在芯片上都有中断请求输入引脚。F 5.可使用SETB TRi启动定时器工作。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
第 1 页 共 10 页
单片机原理及应用
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.MOV A,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.MOV TOMD,#01H B.MOV TOMD,#50H C.MOV TOMD,#10H D.MOV TCON,#02H 4.启动定时器1开始定时的指令是__D__ 。
第 2 页 共 10 页
单片机原理及应用
A.CLR TR0 B.CLR TR1 C.SETB TR0 D.SETB TR1 5.使8031的定时器T0停止计数的指令是__A__ 。 A.CLR TR0 B.CLR TR1 C.SETB TR0 D.SETB TR1 6.下列指令判断若定时器T0计满数就转LP的是__D__ 。
A.JB T0,LP B.JNB TF0,LP C.JNB TR0,LP D.JB TF0,LP 7.下列指令判断若定时器T0未计满数就原地等待的是__B__ 。 A.JB T0,$ B.JNB TF0,$ C.JNB TR0,$ D.JB TF0,$ 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.12 B.1 C.2 D.6
10.MCS—51单片机定时器溢出标志是__D__ 。
A.TR1和TR0 B.IE1和IE0 C.IT1和IT0 D.TF1和TF0
11.用定时器T1方式2计数,要求每计满100次,向CPU发出中断请求,TH1、TL1的初始值是__A__ 。 A.9CH B.20H C.64H D.A0H
12.MCS—51单片机外部中断1和外部中断0的触发方式选择位是__C__ 。 A.TR1和TR0 B.IE1和IE0 C.IT1和IT0 D.TF1和TF0
13.MCS—51单片机定时器T1的溢出标志TF1,计满数产生溢出时不用中断方式而用查询方式,则应__B__ 。 A.由硬件清零 B.由软件清零 C.由软件置于 D.可不处理
14.MCS—51单片机定时器T0的溢出标志TF0,若计满数产生溢出时,其值为是__C__ 。 A.00H B.FFH C.1 D.计数值
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置1 B.RI或TI置0 C.RI置1或TI置0 D.RI置0或TI置1 18.MCS—51单片机响应中断的过程是__D__ 。 A.对应中断矢量地址装入PC B.关中断,程序转到中断服务程序
第 3 页 共 10 页
单片机原理及应用
C.断点压栈,PC指向中断服务程序地址
D.断点PC自动压栈,对应中断矢量地址装入PC,程序转到该矢量地址,再转至中断服务程序首地址 19.执行中断处理程序最后一句指令RETI后,____D_____ 。 A.程序返回到ACALL的下一句 B.程序返回到LCALL的下一句 C.程序返回到主程序开始处 D.程序返回到响应中断时一句的下一句 20.MCS—51的串行口工作方式中适合多机通信的是__ B __ 。 A.方式0 B.方式3 C.方式1 21.MCS—51单片机响应中断矢量地址是__ C __ 。 A.中断服务程序的首句地址 B.中断服务程序的出口地址 C.中断服务程序的入口地址 D.主程序等待中断指令的地址
22.MCS—51单片机外部有40个引脚,其中,地址锁存允许控制信号引脚是___A___。 A. ALE
B. PSEN C. EA
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:SJMP LP,功能指令为等待中断,当发生中断且中断返回后,____D____ 。 A.返回到主程序开始处 B.返回到该句的下一条指令处 C.返回到该句的上一条指令处 D.返回到该句
26.8031单片机的____D___口的引脚,还具有外中断、串行通信等第二功能。 A. P0 B. P1 C. P2 D. P3 27.单片机应用程序一般存放在____B___。
A. RAM B. ROM C. 寄存器 D. CPU 28.INTEL8051CPU是___C___位的单片机。 A. 16 B. 4 C. 8 D. 准16
29.当需要从MCS-51单片机程序存储器取数据时,采用的指令为____B___。
A. MOV A, @R1 B. MOVC A,@A + DPTR C. MOVX A, @R0 D. MOVX A, @DPTR
第 4 页 共 10 页
单片机原理及应用
30.8031单片机中既可位寻址又可字节寻址的单元是____A__ 。 A. 20H B. 30H C. 00H D. 70H 31.MCS-51单片机复位操作的主要功能是把PC初始化为____C___。 A.0100H B.2080H C.0000H D.8000H
32.若单片机的振荡频率为6MHz,设定时器工作在方式1需要定时1ms,则定时器初值应为___C_ 。 A.500 B.1000 C.2-500 D.2-1000
33.当外部中断请求的信号方式为脉冲方式时,要求中断请求信号的高电平状态和低电平状态都应至少维持___A___。
A.1个机器周期 B.2个机器周期 C.4个机器周期 D.10个晶振周期 34.8031单片机中,将累加器A中的数送入外RAM的40H单元,可执行的指令____D___。 A.MOV R1 ,40H B. MOV R1 ,#40H C. MOVX 40H , A D. MOV R1, #40H MOVX @R1 , A MOVX R1 , A MOVX @R1 , A 35.在中断服务程序中至少应有一条____D___。
A. 传送指令 B. 转移指令 C. 加法指令 D. 中断返回指令 36.要用传送指令访问MCS-51片外RAM,它的指令操作码助记符是____B ___。 A. MOV B. MOVX C. MOVC D. 以上都行
16
16
37.执行LACLL 4000H指令时, MCS-51所完成的操作是____D___ 。
A. 保护PC B. 4000H?PC C. 保护现场 D. PC+3入栈, 4000H?PC 38.若某存储器芯片地址线为12根,那么它的存储容量为____C___ 。 A. 1KB B. 2KB C.4KB D.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. 方式0 B. 方式1 C. 方式2 D. 方式3
43.MCS-51外扩ROM,RAM和I/O口时,它的数据总线是____A___。 A. P0 B. P1 C. P2 D. 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位地址线,并在整个访问外部存储器期间不变,所以不必
第 5 页 共 10 页
单片机原理及应用
外接地址锁存器。
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单元中,试编程序。
ANL A,#OFH
MOV DPTR,#2000H MOVX @DPTR,A
2.利用乘法指令编写15H×33H的程序,将乘积的高8 位存入31H单元,低8位存入30H单元
MOV A,#15H MOV B,#33H MUL A,B
MOV 31H,B MOV 30H,A
3.编写子程序,将片内35H~55H单元中的内容送入到以3000H为首的存储区中。
MOV R0,#35H MOV R1,#21H
MOV DPTR,#3000H
第 6 页 共 10 页
单片机原理及应用
LOOP:MOV A,@R0 MOVX @DPTR, A INC R0 INC DPTR DJNZ R1,LOOP RET
4.请将片外RAM 20H—25H单元清零 MOV R0,#20H MOV R7,#06H CLR A
LOOP:MOVX @R0,A INC R0 DJNZ R7,LOOP 5.请将ROM 3000H单元内容送R7 MOV DPTR,#3000H CLR A
MOVC A,@A+DPTR
MOV R7,A
6.已知在累加器A中存放一个BCD数(0~9),请编程实现一个查平方表的子程序。 SQR:INC A MOVC A,@A+PC RET
TAB:DB 0,1,4,9,16,25,36,49,64,81
7.一个十六进制数存放在内部RAM的HEX单元的低4位中, 将其转换成ASCII码并送回 HEX单元。 HEXASC: MOV A, HEX ANL A, #0FH
ADD A, #3 ; 修改指针 MOVC A, @A+PC
MOV HEX, A ; 2字节指令 RET
ASCTAB: DB 30H,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单元中。
MOV R0,#50H MOV R1,#53H MOV A,@R0 MOV B,#0AH
第 7 页 共 10 页
单片机原理及应用
MUL AB INC R0 ADD A,@R0 MOV @R1,A DEC R1 XCH A,B ADDC A,#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 ORG 0000H
AJMP MAIN ;主程序 ORG 000BH
AJMP T0INT ;T0中断入口 ORG 0100H MAIN: MOV SP, #60H MOV TMOD, #01H MOV TH0,#3CH MOV TL0,#0B0H CLR P1.7
SETB EA
SETB ET0 SETB TR0 SJMP $ T0INT: MOV TH0,#3CH
第 8 页 共 10 页
单片机原理及应用
MOV TL0,#0B0H CLP P1.7 RETI END
2.试设计一个8051单片机的双机通信系统,编程将A机片内RAM中60H~6FH的数据块通过串行口传送至B机片内RAM的60H~6FH单元中。
甲机发送(采用查询方式):
MOV SCON, #80H ; 设置工作方式2
MOV PCON, #00H ; 置SMOD=0,波特率不加倍 MOV R0, #60H ; 数据区地址指针 MOV R2, #10H ; 数据长度 LOOP: MOV A, @R0 ; 取发送数据 MOV C, P ; 奇偶位送TB8 MOV TB8, C
MOV SBUF, A ; 送串口并开始发送数据 WAIT: JBC TI, NEXT ; 检测是否发送结束并清TI SJMP WAIT
NEXT: INC R0 ; 修改发送数据地址指针 DJNZ R2, LOOP END
乙机接收(查询方式):
MOV SCON, #90H ; 模作模式2, 并允许接收 MOV PCON, #00H ; 置SMOD=0
MOV RO, #60H ; 置数据区地址指针 MOV R2, #10H ; 等待接收数据长度 LOOP: JBC RI, READ ; 等待接收数据并清RI SJMP LOOP
READ: MOV A, SBUF ; 读一帧数据 MOV C, P
JNC LP0 ; C不为1转LP0
JNB RB8, ERR ; RB8=0, 即RB8不为P转ERR AJMP LP1
LP0: JB RB8, ERR ; RB8=1,即RB8不为P转ERR LP1: MOV @R0, A ; RB8=P,接收一帧数据
INC R0
DJNZ R2, LOOP
ERR: … ; 出错处理程序 END
3.8255A的PA口接一组开关,PB口接一组指示灯。编写子程序将R2的内容送指示灯显示,开关状态读入A中。
MOV DPTR,#7FFFH
MOV A,#98H
第 9 页 共 10 页
单片机原理及应用
MOVX @DPTR,A MOV DPTR, #7FFDH MOV A, R2 MOVX @DPTR, A MOV DPTR, #7FFCH MOVX A, @DPTR RET
4.从8155的A口输入数据, 并进行判断: 若不为0,则将该数据存入8155的RAM中(从起始单元开始, 数据总数不超过256个), 同时从B口输出,并将PC0置“1”;若为0,则停止输入数据,同时将PC0清“0”。
命令字为00001110B=0EH,命令口地址0200H,A口地址0201H,B口地址0202H,C口地址0203H
MOV DPTR, #0200H ; 指向命令口 MOV A, #0EH ; 设置命令字 MOVX @DPTR, A ; 写入命令字
MOV R0, #00H ; 指向 8155 的RAM区首址 MOV R1, #00H ; 数据总数为 256 个 LP1: MOV DPTR, #0201H ; 指向A口
MOVX A, @DPTR ; 从A口读入数据 JZ LP3 ; 为 0 则转 MOVX @R0, A ; 存入RAM单元 INC R0 ; 指向下一单元 INC DPTR ; 指向B口 MOVX @DPTR, A ; B口输出 INC DPTR ; 指向C口 MOVX A, @DPTR ; C口读入 SETB ACC.0 ; 使PC0 =1 MOVX @DPTR, A ; 回送
DJNZ R1, LP1 ; 未完则反复 LP2: SJMP $ ; 暂停
LP3: MOV DPTR, #0203H ; 指向C口
MOVX @DPTR, A ; 回送 SJMP LP2
第 10 页 共 10 页
正在阅读:
单片机期末复习题04-13
化学与生活知识点06-06
公共管理导论第2次作业01-23
两个务必的内容,两个务必是什么?02-13
闪锌矿调研报告 - 图文09-30
出入道路污染整改方案11-10
崇信总体规划文本09-22
德国报业发展史对中国新闻事业发展的启示03-18
学生健全人格的养成教育研究总报告(黄希庭 西南大学)12-30
成本核算实务练习题参考答案10-09
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 复习题
- 单片机
- 期末