第5章 定时器计数器的C51编程 《单片机的C语言程序设计及应用》(电工版第4版)章节过关卷

2025-07-29
| 2份
| 11页
| 74人阅读
| 0人下载

内容正文:

《单片机的C语言程序设计及应用》(电工版第4版) 第5章 定时器/计数器的C51编程 章节过关卷 考试时间:90分钟 满分:100分 姓名 班级 学号 1、 单项选择题(本题共10小题,每题2分,共20分) 1.8051单片机的定时器/计数器的数量为( ) A.1个 B.2个 C.3个 D.4个 【答案】B 2.定时器T0工作在模式1时,其最大计数值为( ) A.256 B.65536 C.8192 D.1024 【答案】B 3.控制定时器T0启动和停止的寄存器是( ) A.TMOD B.TCON C.SCON D.PCON 【答案】B 4.若要将T0配置为定时器模式(非计数器),需设置TMOD的位是( ) A.TMOD.0 B.TMOD.1 C.TMOD.4 D.TMOD.5 【答案】C 5.定时器T1的中断标志位是( ) A.TF0 B.TF1 C.TR1 D.IE1 【答案】B 6.以下可以启动定时器T0的语句是( ) A.TMOD=0x01; B.TR0=1; C.ET0=1; D.EA=1; 【答案】B 7.定时器T0的中断服务函数声明格式是( ) A.void T0_ISR() interrupt 0 B.void T0_ISR() interrupt 1 C.void T0_ISR() interrupt 2 D.void T0_ISR() interrupt 3 【答案】B 8.若系统晶振为12MHz,定时器T0在模式1下定时1ms,初始值应为( ) A.0xFC18 B.0xFE0C C.0xEE00 D.0xFFFF 【答案】B 9.TMOD寄存器的高4位用于配置的定时器是( ) A.T0 B.T1 C.T2 D.全部 【答案】B 10.定时器模式2的特点是( ) A.16位自动重装 B.8位自动重装 C.13位计数 D.分频输出 【答案】B 二、判断题(本题共15小题,每题2分,共30分) 1.TMOD寄存器用于控制定时器的启动和停止。( ) 【答案】错误 2.定时器模式1是16位计数模式,最大计数值为65536。( ) 【答案】正确 3.TMOD的高4位配置T0,低4位配置T1。( ) 【答案】错误 4.定时器T0的中断号是0,T1的中断号是1。( ) 【答案】错误 5.TCON寄存器的TF0位用于启动定时器T0。( ) 【答案】错误 6.模式2是8位自动重装模式,THx存储重装值。( ) 【答案】正确 7.定时器模式0是13位计数模式。( ) 【答案】正确 8.定时器中断标志TFx在响应中断后会自动清零。( ) 【答案】错误 9.ET0=1; 语句用于启动定时器T0。( ) 【答案】错误 10.定时器中断服务函数必须用 interrupt 关键字声明。( ) 【答案】正确 11.EA=1; 是开启总中断的必要条件。( ) 【答案】正确 12.定时器T1的中断服务函数应声明为 interrupt 3。( ) 【答案】正确 13.在中断服务函数中可以调用其他普通函数。( ) 【答案】正确 14.定时器中断优先级由IP寄存器设置。( ) 答案:正确 15.定时器T1在模式3下会停止工作。 答案:正确 三、填空题(本题共8小题,每空2分,共20分) 1.将T0设置为定时器模式1,TMOD应赋值为____。 【答案】0x01 2.启动定时器T0的语句是____。 【答案】TR0=1 3.定时器模式2是____位自动重装模式,TH0用于存储____。 【答案】8;重装值 4.定时器作为计数器使用时,T0的输入引脚是____,T1的输入引脚是____。 【答案】P3.4;P3.5 5.定时器T1模式2常用于____发生器。 【答案】波特率 6.定时器模式0是____位计数器模式。 【答案】13 7.定时器溢出标志位TF1位于TCON寄存器的第____位。 【答案】7 8.定时器初值计算公式是:初值=____-所需计数值。 【答案】最大值 四、简答题(本题共3小题,每题4分,共12分) 1.简述TMOD各位的含义。 【答案】 (1)GATE 门控位:决定相应的外部中断是否起作用 GATE=0 由运行控制位TR启动定时器/计数器; GATE=1 由外中断请求信号和TR的组合状态启动定时器/计数器。 (2)C/T ̅:工作方式选择位 C/T ̅=0 定时器工作方式; C/T ̅=1 计数器工作方式。 (3)M1M0:工作模式选择位 M1M0=00 模式0--13位定时器/计数器工作模式 M1M0=01 模式1--16位定时器/计数器工作模式 M1M0=10 模式2--常数自动装入的8位定时器/计数器工作模式 M1M0=11 模式3 2.初值TH0、TL0怎样计算。 【答案】 (1)计算定时器的计数次数(N) 定时器模式(对机器周期计数):N=12定时时间(秒)×晶振频率(Hz)/12 (2)根据工作方式确定初值(X) 方式0(13位定时器): X=8192−N(TH0高8位,TL0低5位) X=8192−N(TH0高8位,TL0低5位) 实际使用:TH0 = (8192 - N) >> 5; TL0 = (8192 - N) & 0x1F; 方式1(16位定时器): X=65536−N(TH0高8位,TL0低8位) X=65536−N(TH0高8位,TL0低8位) 方式2(8位自动重装): X=256−N(TL0存初值,TH0存重装值) X=256−N(TL0存初值,TH0存重装值) 3.简述TR0、TF0的含义及应用。 【答案】 (1)TR0(定时器0运行控制位)含义:位于TCON寄存器的第4位(地址88H),是定时器0的开关控制位,通过软件置1/清零来控制定时器0的运行状态。 (2)TF0(定时器0溢出标志位)含义:位于TCON寄存器的第5位,是定时器0的溢出状态标志位,硬件自动置1,需要软件清零。 五、程序填空。按照题目要求,将正确的内容填入相应位置,使得程序完整(每空3分,共18分) 1.假定51单片机外接6MHz晶振,通过定时器/计数器T0定时,在P1.0和P1.1分别产生周期为400μs和800μs的方波。请填空。 #include<reg51.h> sbit Wave1=P1^0; sbit Wave2=P1^1; void T0ISR(void) interrupt 1 { Wave1=~Wavel; 【1】; } void T1ISR(void) interrupt 3 { Wave2=~Wave2; 【2】;} void main(void) { Wave2=0; 【3】; TLO=0x9C; TH0=0x38; TR0=1; ET0=1; TR1=1; ET1=1; EA=1; while(1); } 答案: 【1】TL0=0x9C 【2】TH0=0x38 【3】TMOD=0x03 解析: 【1】TL0=0x9C 重置计数初值 【2】TH0=0x38 重置计数初值 【3】TMOD=0x03 设置定时器T0为模式3 2.用定时器/计数器T0监视一生产线,每生产100个工件,发出一包装命令,包装成一箱,并记录其箱数。 #include<reg51.h> sbit BAOZHUANG=P1^0; void delayxms (unsigned int xms) { unsigned int t1,t2; for(t1=xms;t1>0;t1--) for(t2=110;t2>0;t2--);} void main( ) { 【1】; BAOZHUANG=0; 【2】; TH0=-100; TLO=-100; 【3】; ETO=1; TRO=1; while(1);} void count() interrupt 1 { i=i+1; BAOZHUANG=1; delayxms(50); BAOZHUANG=0; } 答案: 【1】i=0 【2】TMOD=0x06 【3】EA=1 解析: 【1】i=0,计件数为0。 【2】TMOD=0x06 配置定时器T0为 计数器模式(C/T0=1),工作方式2。 【3】EA=1 开启总中断。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$ 《单片机的C语言程序设计及应用》(电工版第4版) 第5章 定时器/计数器的C51编程 章节过关卷 考试时间:90分钟 满分:100分 姓名 班级 学号 1、 单项选择题(本题共10小题,每题2分,共20分) 1.8051单片机的定时器/计数器的数量为( ) A.1个 B.2个 C.3个 D.4个 2.定时器T0工作在模式1时,其最大计数值为( ) A.256 B.65536 C.8192 D.1024 3.控制定时器T0启动和停止的寄存器是( ) A.TMOD B.TCON C.SCON D.PCON 4.若要将T0配置为定时器模式(非计数器),需设置TMOD的位是( ) A.TMOD.0 B.TMOD.1 C.TMOD.4 D.TMOD.5 5.定时器T1的中断标志位是( ) A.TF0 B.TF1 C.TR1 D.IE1 6.以下可以启动定时器T0的语句是( ) A.TMOD=0x01; B.TR0=1; C.ET0=1; D.EA=1; 7.定时器T0的中断服务函数声明格式是( ) A.void T0_ISR() interrupt 0 B.void T0_ISR() interrupt 1 C.void T0_ISR() interrupt 2 D.void T0_ISR() interrupt 3 8.若系统晶振为12MHz,定时器T0在模式1下定时1ms,初始值应为( ) A.0xFC18 B.0xFE0C C.0xEE00 D.0xFFFF 9.TMOD寄存器的高4位用于配置的定时器是( ) A.T0 B.T1 C.T2 D.全部 10.定时器模式2的特点是( ) A.16位自动重装 B.8位自动重装 C.13位计数 D.分频输出 二、判断题(本题共15小题,每题2分,共30分) 1.TMOD寄存器用于控制定时器的启动和停止。( ) 2.定时器模式1是16位计数模式,最大计数值为65536。( ) 3.TMOD的高4位配置T0,低4位配置T1。( ) 4.定时器T0的中断号是0,T1的中断号是1。( ) 5.TCON寄存器的TF0位用于启动定时器T0。( ) 6.模式2是8位自动重装模式,THx存储重装值。( ) 7.定时器模式0是13位计数模式。( ) 8.定时器中断标志TFx在响应中断后会自动清零。( ) 9.ET0=1; 语句用于启动定时器T0。( ) 10.定时器中断服务函数必须用 interrupt 关键字声明。( ) 11.EA=1; 是开启总中断的必要条件。( ) 12.定时器T1的中断服务函数应声明为 interrupt 3。( ) 13.在中断服务函数中可以调用其他普通函数。( ) 14.定时器中断优先级由IP寄存器设置。( ) 15.定时器T1在模式3下会停止工作。( ) 三、填空题(本题共8小题,每空2分,共20分) 1.将T0设置为定时器模式1,TMOD应赋值为____。 2.启动定时器T0的语句是____。 3.定时器模式2是____位自动重装模式,TH0用于存储____。 4.定时器作为计数器使用时,T0的输入引脚是____,T1的输入引脚是____。 5.定时器T1模式2常用于____发生器。 6.定时器模式0是____位计数器模式。 7.定时器溢出标志位TF1位于TCON寄存器的第____位。 8.定时器初值计算公式是:初值=____-所需计数值。 四、简答题(每题4分,共12分) 1.简述TMOD各位的含义。 2.初值TH0、TL0怎样计算。 3.简述TR0、TF0的含义及应用。 五、程序填空。按照题目要求,将正确的内容填入相应位置,使得程序完整(每空3分,共18分) 1.假定51单片机外接6MHz晶振,通过定时器/计数器T0定时,在P1.0和P1.1分别产生周期为400μs和800μs的方波。请填空。 #include<reg51.h> sbit Wave1=P1^0; sbit Wave2=P1^1; void T0ISR(void) interrupt 1 { Wave1=~Wavel; 【1】; } void T1ISR(void) interrupt 3 { Wave2=~Wave2; 【2】;} void main(void) { Wave2=0; 【3】; TLO=0x9C; TH0=0x38; TR0=1; ET0=1; TR1=1; ET1=1; EA=1; while(1); } 2.用定时器/计数器T0监视一生产线,每生产100个工件,发出一包装命令,包装成一箱,并记录其箱数。 #include<reg51.h> sbit BAOZHUANG=P1^0; void delayxms (unsigned int xms) { unsigned int t1,t2; for(t1=xms;t1>0;t1--) for(t2=110;t2>0;t2--);} void main( ) { 【1】; BAOZHUANG=0; 【2】; TH0=-100; TLO=-100; 【3】; ETO=1; TRO=1; while(1);} void count() interrupt 1 { i=i+1; BAOZHUANG=1; delayxms(50); BAOZHUANG=0; } 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $$

资源预览图

第5章 定时器计数器的C51编程 《单片机的C语言程序设计及应用》(电工版第4版)章节过关卷
1
第5章 定时器计数器的C51编程 《单片机的C语言程序设计及应用》(电工版第4版)章节过关卷
2
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。