习题4答案单片机的中断系统定时器与串行通信doc.docx
- 文档编号:25894478
- 上传时间:2023-06-16
- 格式:DOCX
- 页数:20
- 大小:30.56KB
习题4答案单片机的中断系统定时器与串行通信doc.docx
《习题4答案单片机的中断系统定时器与串行通信doc.docx》由会员分享,可在线阅读,更多相关《习题4答案单片机的中断系统定时器与串行通信doc.docx(20页珍藏版)》请在冰豆网上搜索。
习题4答案单片机的中断系统定时器与串行通信doc
习题4答案单片机的中断系统、定时器与串行通信
一、选择题
1、若要求最大定时时间为216×机器周期,则应使定时器工作于B。
A.工作方式0
B.工作方式l
C.工作方式2
D.工作方式3
2、若要求最大定时时间为213×机器周期,则应使定时器工作于A。
A.工作方式0
B.工作方式l
C.工作方式2
D.工作方式3
3、若要求最大定时时间为28×机器周期,则应使定时器工作于C,D。
A.工作方式0
B.工作方式1
C.工作方式2
D.工作方式3
4、定时器方式控制寄存器TMOD中MlM0为ll时,则设置定时器工作于D。
A.工作方式0
B.工作方式l
C.工作方式2
D.工作方式3
5、6MHz晶振的单片机在定时工作方式下,定时器可能实现的最小定时时间是B.
A.1us
B.2us
C.4us
D.8us’
6、12MHz晶振的单片机在定时工作方式下,定时器可能实现的最小定时时间是A.
A.1us
B.2us
C.4us
D.8us
7、12MHz晶振的单片机在定时工作方式下,定时器可能实现的最大定时时间是B.
A.4096us
B.8192uS
C.1638us
D.32768us
8、定时器/计时器0的初始化程序如下:
MOVTMOD,#06H
MOVTH0.#0FFH
MOVTLO,#0FFH
SETBEA
SETBET0
执行该程序段后,把定时器/计时器0的工作状态设置为D。
A.工作方式0,定时应用,定时时间2us,中断禁止
B.工作方式l,计数应用,计数值255,中断允许
C.工作方式2,定时应用,定时时间510us,中断禁止
D.工作方式2,计数应用,计数值1,中断允许
9、设串行口工作于方式l,晶振频率为6MHz,波特率为1200位/秒,SMOD=0,则定时器l的计数初值为C。
A.FlH
B.F4H
C.F3H
D.FOH
10、以下所列特点,不属于串行工作方式0的是D。
A.波特率是固定的,为时钟频率的十二分之一
B.8位移位寄存器
C.TI和RI都须用软件清零
D.在通信时,须对定时器l的溢出率进行设置
11、通过串行口发送或接收数据时,在程序中应使用A。
A.MOV指令
B.MOVX指令
C.MOVC指令
D.SWAP指令
12、若设串行控制寄存器SCON=40H,则串行口的工作方式是B。
A.方式0
B.方式l
C.方式2
D.方式3
13、下列对SCON的相关位描述不正确的是A。
A.当REN=l时,禁止串行口接收数据
B.在方式0时,SM2必须为0
C.RI位由软件清零
D.ITl=1,表示帧发送结束
二、填空题
1、8051单片机中的定时器/计数器有T0和T1两个。
2、8051单片机中用于定时器/计数器的控制寄存器有TMOD和TCON两个。
3、8051单片机有五个中断源,分别是T0中断、T1中断、外部中断0、外部中断l和串行中断。
4、8051单片机有2个加法定时器/计数器,它们是由TH0、TL0、THl、和TLl四个专用寄存器构成的。
5、8051单片机有5个中断源,分成2个优先级。
控制中断允许的寄存器是IE;控制中断优先级的寄存器是IP。
6、8051单片机5个中断源的入口地址分别为0003H、000BH、0013H、001BH和0023H
7、外部中断0和外部中断1有两种引起中断的方式,一种是下降沿引起中断,另一种是低电平引起中断。
8、要将外部中断0的触发方式设置成为低电平引起中断,则应将IT0位设置成0。
9、要将外部中断1的触发方式设置成为下降沿引起中断,则应将ITl位设置成1。
10、串行中断可以由串行端口完成一帧字符发送或串行端口完成一帧字符接收引起中断。
11、当计数器/定时器l申请中断时,T1中断标志TFl将为1;而当该中断得到了响应后,TFl为0。
12、当串行端口完成一帧字符接收申请中断时,串行中断标志RI将被系统设置为1。
当该中断得到了响应后,串行中断标志的状态为0。
13、定时器方式控制寄存器TMOD中M1M0为01时,设置定时器工作于工作方式1。
14.定时器方式控制寄存器TMOD中C/T为1时,定时器工作于计数状态。
15、当定时器控制寄存器TCON中的TF0为1时,说明T0有中断请求。
16、中断服务程序必须使用RETI指令返回到主程序。
17、8051单片机工作于定时状态时,计数脉冲来自单片机内部(振荡脉冲12分频后的脉冲。
18、8051单片机工作于计数状态时,计数脉冲来自外部引脚(T0或T1)。
19、计算机的数据传送共有两种方式:
并行数据传送和串行数据传送。
20、从起始位开始到停止位结束的全部内容称为一帧(frame)。
21、串行数据通信有三种数据通路形式(方向):
单工形式、全双工形式和半双工形式。
22、MCS-5l的串行口有一个缓冲寄存器,在串行发送时,从片内总线向发送缓冲寄存器写入数据;在串行接收时,从接收缓冲寄存器向片内总线读出数据。
23、由于串行口的发送和接收缓冲寄存器为同一地址,所以发送与接收不能同时进行。
24、在基波传输时,波特率是用来表示每秒钟传送格式位的数目的。
因此,1波特=l位/秒。
25、通信是指计算机与其外界的数据传送.
26、单片机中使用的串行通信都是异步方式。
27、P3.0的第二功能线为串行端口的TXD端。
P3.1的第二功能线为串行端口的RXD端。
28、串行端口的RXD是第10引脚;串行端口的TXD是第11引脚。
三、判断题
1、MCS-51单片机共有五个中断源,因此相应地在芯片上就有五个中断请求输入引脚。
(×)
2、当全局中断允许位EA=0时,系统将不响应任何中断。
(√)
3、在MCS-51单片机中,高级中断可以打断低级中断形成中断嵌套。
(√)
4、在一般情况下,MCS-51单片机允许同级中断嵌套。
(×)
5、只要有中断出现,CPU就立即响应中断。
(×)
6、MCS-51单片机定时工作方式0与定时工作方式l除了计数结构位数不同,别无差别。
(√)
7、.除了低优先级中断不能打断高优先级中断的情况外,其他情况都能形成中断嵌套。
(×)
8、T0和T1都是减法定时器/计时器。
(×)
9、在定时工作方式2状态下,因为把TH作为预置寄存器,所以在应用程序中应当在有计数溢出时从TH向TL加载计数初值的操作。
(×)
10、中断初始化时,对中断控制寄存器的状态设置,只能使用位操作指令,而不能使用字节操作指令。
(×)
11、MCS-51单片机的定时和计数都使用同一计数机构,所不同的只是计数脉冲的来源。
来自于单片机内部的是定时,而来自于外部的则是计数。
(√)
四、问答题
1、设单片机的fosc=6MHz,定时器处于不同的工作方式时,最大计数范围和定时范围分别是多少?
解答:
方式0的计数范围为:
1~213
方式1的计数范围为:
1~2116
方式2的计数范围为:
1~28
方式3的计数范围为:
1~28
方式0的定时范围为:
(1~213)×2us=16384us≈16.38ms
方式l的定时范围为:
(1~216)×2us=131072us≈131.072ms
方式2的定时范围为:
(1~28)×2us=512us
方式3的定时范围为:
(1~28)×2us=512us
2、简述如果要求产生的定时时间超过了单片机定时的最大范围时,如何处理才能达到要求定时的时间?
设单片机的fosc=6MHz,要求产生1秒钟的定时,如何处理?
解答:
(1)当要求产生的定时时间超过了单片机定时的最大范围时,则要采用硬件计数与软件计数相结合的方法来产生所要求的定时时间。
用软件的方法对硬件定时时间进行计数,如果软件计数为n,则定时时间=n×硬件定时时间。
(2)使定时器工作于工作方式l(16位方式),使之产生100ms的定时时间,每100ms产生一次中断。
然后使用软件对其进行计数,中断10次,软件就计数10次,从而产生1s的定时时间。
3、8051单片机内设有几个定时器/计数器?
它们是由哪些专用寄存器构成的?
其地址分别是多少?
解答:
(1)805l单片机内设有两个定时器/计数器,一个是T0,另一个是Tl。
(2)它们是由TL0、TH0、TLl和THl专用寄存器构成的。
(3)其地址分别是8AH、8CH、8BH和8DH。
4、805l单片机有几个中断源?
分成几个优先级?
解答:
(1)8051单片机有5个中断源。
(2)分成2个优先级,高优先级和低优先级。
5、简述8031单片机中断嵌套的规定。
解答:
在MCS一51单片机中,高级中断可以打断低级中断形成中断嵌套。
同级中断之间或低级对高级中断不能形成中断嵌套。
若几个同级中断同时向CP[J提出中断申请,则CPU按照如下顺序响应中断:
→T0→
→Tl→RI/TI
6.写出8051单片机中5个中断源的名称和对应的中断服务程序入口地址。
解答:
5个中断源的名称:
(1)外部中断0
(2)TO中断(3)外部中断l(4)T1中断(5)串行中断
对应的中断服务程序入口地址:
(1)0003H
(2)000BH(3)0013H(4)00lBH(5)0023H
7.简述中断的全过程。
解答:
(1)首先由重点源引起中断请求,使相应的中断标志位为1.
(2)若全局中断允许和相应的中断允许处于打开状态,并满足中断响应的条件,而且:
①当前正在执行的那条指令已经执行完毕。
②当前未响应同级或高级中断。
③不是在操作IE、IP中断控制寄存器或执行RETI指令。
则单片机响应该中断,进入到相应的中断服务程序中执行中断服务程序。
(3)对于
、T0、
、Tl中断,当中断响应后,自动将中断请求标志清零。
对于串行中断,不自动清除中断请求标志,必须人为用软件将中断标志清零。
(4)当执行到中断服务程序中的RETI指令时,返回到断点处,继续执行主程序。
五、应用题
1、设单片机的fosc=12MHz,要求用T0定时150gs,分别计算采用定时方式0、定时方式1和定时方式2的定时初值。
解答:
方式0的定时初值为:
TH0:
FBH,TL0:
0AH
方式l的定时初值为:
TH0:
FFH,TL0:
6AH
方式2的定时初值为:
TH0:
6AH,TL0:
6AH
2、设单片机晶振频率fosc=6MHz,使用Tl以工作方式0工作,要求定时250us,计算定时初值,并写出设置时间常数的指令。
解答:
C=1111110000011
高8位为0FCH
低5位为03H
设置时间常数的指令:
MOVTHI,#0FCH
MOVTLl,#03H
3、使用定时器T1以工作方式2计数,每计数100次申请一次中断。
求计数初值,并写出设置计数初值的指令。
解答:
C=CEH
设置时间常数的指令:
MOVTH0,#0CEH;保存定时初值
MOVTL0,#0CEH;设置定时初值
4、T0运行于定时器状态,时钟振荡频率为12MHz,要求定时100us,分别求出工作方式0、方式1和方式2的定时初值,并分别写出设置定时初值的指令。
4.解答:
(1)方式0。
C=(t/MC)求补
=(0000001100100)求补,
=
+1
=1111110011011+l
=1111110011100
高8位:
11111100=FCH,低8位:
00011100=1CH
指令:
MOVTH0,#0FCH
MOVTL0,#1CH
(2)方式l
C=(t/MC)求补
=(0000000001100100)求补
=1111111l10011011+1
=111111*********0
高8位:
11111111=FFH,低8位:
10011100=9CH
指令:
MOVTH0,#0FFH
MOVTL0,#9CH
(3)方式2
C=(t/MC)求补
=(01100100)求补
=10011011+1
=10011100
指令:
MOVTH0.#9CH
MOVTL0,#9CH
5、设单片机的晶振频率为fosc=6MHz,使用T1工作于工作方式0,设计程序,使P1.0端输出周期为500us的连续等宽方波,要求以查询的方式编写程序。
解答:
使T1以定时器工作,定时250us,每次定时时间到,将P1.0反相一次,从而产生500us为周期的连续等宽方波。
由于是查询方式,因此要禁止中断,使IE:
00H。
已知:
t-=250uS=250×10-6s
fosc=6MHz=6×106Hz
MC=12/(6×106)=2×10-6s
t/MC=250×10-6/(2×10-6)=125=1111101
C=(t/MC)求补=(0000001111101)求补
=1111110000011
THl:
11111100=FCHTL1:
00011=03H
程序:
MOVTMOD,#00H
MOVTHl,#0FCH
MOVTL1,#03H
MOVIE,#00H
SETBTR1
LOOP:
JBCTF1,LOOP1
AJMPLOOP1
LOOP1:
MOVTHl,#0FCH
MOVTL1,#03H
CPLP1.0
AJMPLOOP
6、设单片机的晶振频率为fosc=6MHz,使用Tl工作于工作方式0,设计程序,使P1.0端输出周期为500us的连续等宽方波,要求以中断的方式编写程序。
解答
IE=88H
主程序:
MOVTMOD,#00H
MOVTH1,#0FCH
MOVTL1,#03H
MOVIE,#88H
SETBTR1
SJMP$
中断服务程序:
MOVTH1,#00H
MOVTL1,#0FCH
CPLP1.0
RETI
完整的程序:
ORG001BH
MOVTH1,#00H
MOVTL1,#0FCH
CPLP1.0
RETI
ORG0030H
MOVTMOD,#00H
MOVTH1,#0FCH
MOVTL1,#03H
MOVIE,#88H
SETBTR1
SJMP$
7、设置中断有什么优点和功能?
答:
设置中断的优点和功能:
1)可以提高CPU工作效率,CPU不必花费大量时间等待和查询外设工作。
2)具有实时处理功能,对实时控制系统中的各种参数和状态做出快速响应、及时处理。
3)具有故障处理功能,在掉电中断服务程序中将需要保存的数据和信息及时转移到具
有备用电源的存储器中保护起来,待电源正常时再恢复。
4)实现分时操作,控制多个外设同时工作。
此外,中断系统还能用于程序调试、多机连接等方面。
因此,中断系统是计算机中重要
的组成部分。
可以说,只有有了中断系统后,计算机才能比原来无中断系统的早期计算机演
绎出多姿多彩的功能。
8、涉及8051单片机中断控制的有哪几个特殊功能寄存器?
答:
涉及805l单片机中断控制的有中断请求、中断允许和中断优先级控制3个方面、
4个特殊功能寄存器:
①中断请求:
定时和外中断控制寄存器TCON、串行控制寄存器SCON;
②中断允许控制寄存器IE;
③中断优先级控制寄存器IP。
9、写出8051五个中断源的中断请求标志名称、位地址和在哪一个特殊功能寄存器中?
答:
①T1溢出中断请求标志TF1,位地址8FH,在TCON中。
②T0溢出中断请求标志TF0,位地址8DH,在TCON中。
③外中断
中断请求标志IEl,位地址8BH,在TCON中。
④外中断
中断请求标志IE0,位地址89H,在TCON中。
⑤串行口发送中断请求标志TI,位地址99H,在SCON中。
串行口接收中断请求标志RI,位地址89H,在SCON中。
10、按下列要求分别设置相关控制位。
①
为边沿触发方式;②
为电平触发方式:
③T0启动运行;④T1停止运行;
解:
①SETBIT0
②CLRIT1
③SETBTR0
④CLRTRl
11、用一条指令实现下列要求:
①
、T0开中,其余禁中;②T1、串行口开中,其余禁中;
③全部开中;④全部禁中;
⑤
、T0开中,其余保持不变;⑥
、T1禁中,其余保持不变;
解:
①
、T0开中,其余禁中:
MOVIE,#10000110B;
②T1、串行口开中,其余禁中:
MOVIE,#10011000B;,
③全部开中:
MOV砸,#0FFH;
④全部禁中:
MOVIE,#00H;或CLREA;
⑤
、T0开中,其余保持不变:
ORLIE,#1000001lB;
⑥
、T1禁中,其余保持不变:
ANIIE,#1001001lB;
12、用定时器1作为波特率发生器,并把系统设置成工作方式2,系统时钟频率为12MHz,求可能产生的最高和最低波特率。
解答:
当系统的串口工作于方式2时,根据波特率的计算公式:
波特率=2SMOD×fosc/64得:
(1)当SMOD=0时,波特率最低为:
fosc/64=12×106/64=1.875×105bit/s
(2)当SMOD=I时,波特率最高为:
2×fosc/64=2×12×106/64=3.75×105bits
13、设定时器Tl处于工作方式2,PCON=OOH,单片机处于串行工作方式1,要产生1200b/s的波特率,设单片机晶振频率fosc分别为6MHz和12MHz,分别求在这两种频率下,Tl的定时初值。
解答:
计算公式:
x=256—2SMOD×fosc(384×波特率)
已知:
波特率=1200bps,PCON=00H,则SMOD=0
(1)fosc=6MHz=6×106Hz
x=256—20×6×106/(384×1200)=243D=F3H
定时初值为F3H。
(2)fosc=12MHz=12×106Hz
x=256—20×12X106/(384×1200)=30D=E6H
定时初值为E6H。
14、设置中断有什么优点和功能?
解答:
设置中断的优点和功能:
1)可以提高CPU工作效率,CPU不必花费大量时间等待和查询外设工作。
2)具有实时处理功能,对实时控制系统中的各种参数和状态做出快速响应、及时处理。
3)具有故障处理功能,在掉电中断服务程序中将需要保存的数据和信息及时转移到具
有备用电源的存储器中保护起来,待电源正常时再恢复。
4)实现分时操作,控制多个外设同时工作。
此外,中断系统还能用于程序调试、多机连接等方面。
因此,中断系统是计算机中重要
的组成部分。
可以说,只有有了中断系统后,计算机才能比原来无中断系统的早期计算机演
绎出多姿多彩的功能。
15、涉及8051单片机中断控制的有哪几个特殊功能寄存器?
解答:
涉及805l单片机中断控制的有中断请求、中断允许和中断优先级控制3个方面、
4个特殊功能寄存器:
①中断请求:
定时和外中断控制寄存器TCON、串行控制寄存器SCON;
②中断允许控制寄存器IE;
③中断优先级控制寄存器IP。
16、写出8051五个中断源的中断请求标志名称、位地址和在哪一个特殊功能寄存器中?
解答:
①T1溢出中断请求标志TF1,位地址8FH,在TCON中。
②T0溢出中断请求标志TF0,位地址8DH,在TCON中。
③外中断
中断请求标志IEl,位地址8BH,在TCON中。
④外中断
中断请求标志IE0,位地址89H,在TCON中。
⑤串行口发送中断请求标志TI,位地址99H,在SCON中。
串行口接收中断请求标志RI,位地址89H,在SCON中。
17、按下列要求分别设置相关控制位。
①
为边沿触发方式;②
为电平触发方式:
③T0启动运行;④T1停止运行;
解答:
①SETBIT0
②CLRIT1
③SETBTR0
④CLRTRl
18、写出8051中断允许控制寄存器IE结构、位名称和位地址,设置开中关中如何操作?
解答:
805l对中断源的开放或关闭(屏蔽)是由中断允许控制寄存器IE控制的,可用软件对各位分别置“l”或清0,从而实现对各中断源开中或关中。
IE的结构和各位名称、位地址如下表所示。
中断源
CPU
串行口
TI
T0
位名称
EA
---
---
ES
ET1
EX1
ET0
EX0
位地址
AFH
---
---
ACH
ABH
AAH
A9H
A8H
①EA—CPU中断允许控制位。
EA=l,CP[I开中;EA=0,CPU关中,且屏蔽所有5个
中断源。
②EX0一外中断
中断允许控制位。
EX0=l,
开中;EX0=0,
关中。
③EXl一外中断
中断允许控制位。
EXl=l,
开中;EXl=0,
关中。
④ET0------定时/计数器T0中断允许控制位。
ET0=l,T0开中;ET0=0,T0关中。
⑤ETl-----定时/计数器Tl中断允许控制位。
ETl=1,Tl开中;ETl=0,T1关中。
⑥Es----串行口中断(包括串行发、串行收)允许控制位。
ES=1,串行口开中;Es=0,串行口关中。
805l对中断实行两级控制,总控制位是EA,每一中断源还有各自的控制位对该中断
源开中或关中。
首先要EA=1,其次还要自身的控制位置“l”。
例如,要使
开中(其余关中),可执行下列指令:
MOVIE=#10000100B
或者:
SETBEA
SETBEX1
19、用一条指令实现下列要求:
①
、T0开中,其余禁中;②T1、串行口开中,其余禁中;
③全部开中;④全部禁中;
⑤
、T0开中,其余保持不变;⑥
、T1禁中,其余保持不变;
解答:
①
、T0开中,其余禁中:
MOVIE,#10000110B;
②T1、串行口开中,其余禁中:
MOVIE,#10011000B;,
③全部开中:
MOV砸,#0FFH;
④全部禁中:
MOVIE,#00H;或CLREA;
⑤
、T0开中,其余保持不变:
ORLIE,#1000001lB;
⑥
、T1禁中,其余保持不变:
ANIIE,#1001001lB;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 习题 答案 单片机 中断 系统 定时器 串行 通信 doc