这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 单片机定时器实用方法总结

共1条 1/1 1 跳转至

单片机定时器实用方法总结

高工
2013-10-25 16:09:49     打赏

单片机定时器的使用

第一部分:51系列定时器

定时/计数器 0 和定时/计数器1都有4种定时模式。

16位定时器对内部机器周期进行技术,机器周期加1,定时器值加1,1MHZ模式下,一个机器周期为1us 。

定时器工作模式寄存器TMOD,不可位寻址,需整体赋值,高4位用于定时器1,第四位用于定时器0。

1.jpg

C/T:为定时器功能选择位,C/T=0对机器周期计数,C/T=1,对外部脉冲计数。

GATE:门控位,GATE=0,软件置位TRn即可启动计时器,GATE=1需外部中断引脚为高电平时才能软件置位TRn启动计时器,一般取GATE=0。

定时器控制寄存器TCON:

2.jpg

TFn:Tn溢出标志位,当定时器溢出时,硬件置位TFn,中断使能的情况下,申请中断,CPU响应中断后,硬件自动清除TFn。中断屏蔽时,该位一般作为软件查询标志,由于不进入中断程序,硬件不会自动清除标志位,可软件清除。

TRn:计时器启动控制位,软件置位TRn即可启动定时器,软件清除TRn关闭标志位。

IEn:外部中断请求标志位。

ITn:外部中断出发模式控制位,ITn=0为低电平触发,ITn=1为下降沿触发。

中断允许控制寄存器IE

3.jpg

EA(IE.7):全局中断控制位。EA=1开全局中断,EA=0关闭全局中断。

IE.6无意义。

ETn:定时器中断使能控制位。置位允许中断,清除禁止中断。

ES:串行接收/发送中断控制位,置位允许中断。

EXn:外部中断使能控制位。置1允许,清0禁止。

中断优先级控制寄存器IP,复位后为00H

4.jpg

IP.6,IP.7保留,无意义。

PT2:定时器2中断优先级控制,置1设为高优先级,清0置位低优先级。

PS:串行中断优先级控制位。

PT1/0:定时器1/0优先级控制位,置1高,清0低。

PXn:外部中断优先级控制位。

当有同级中断同时响应,按IE0->TF0->IE1->TF1-IE0->RI+TI->TF2顺序依次响应。

定时器模式0的使用 TMOD=0xf0/TMOD=0x0f

5.jpg

TL0高3位不用,低5位溢出时,直接向TH0进位。

通过设置TH0和TL0初值(0~8191),使计数器从初值开始加1,溢出后申请中断,溢出后需重新设置初值,否则将从0开始加1计数。

T=(模值-初值)*机器周期,初值为8191位技术最小值1,初值为0为计数最大值8191。

定时器模式1(TMOD=0xf1/TMOD=0x1f)

模式1和模式0功能相同,但模式1位16位。

定时器模式2(TMOD=0x2f/0xf2)

模式2构成自动重装的8位定时器,计数器的范围为0~256

6.jpg

TH作为初值寄存器,TL作为计数寄存器。TL溢出时,置位中断标志位,并且把TH中的值自动装入TL。

定时器模式3,模式3只适用于定时器0

模式3时定时器构成2个独立的8位计数器。

7.jpg

此模式下,TL0和模式0,1状态一样可以做计数和定时。TH0只能用于定时不能用于计数,并占用T1的资源TF1和TR1。

定时器2的使用

在AT89S52,AT89S53和AT89S8253中增加了定时器2的使用。

T2和TH2,TL2,T2CON,T2MOD,捕捉重装寄存器RCAP2L和RCAP2H

T2控制寄存器

8.jpg

TF2:溢出中断标志位。

1.jpg

RCLK:串行口接收时钟选择位,用它可以选择T1或T2作为串行口发送时钟。RCLK=1,T2作为串行口时钟,RCLK=1,T1作为串口发送时钟。

EXEN2:T2外部允许控制位,EXEN2=1,若T2未用于波特率发生器,T2EX引脚出现负跳变时将导致T2发生捕获或充装载。并置位EXF2标志位请求中断。该位清0,外部引脚无效。

C/T2:定时或技术方式选择位。

CP/RL2:T2捕获或重装控制位,该位为1,选择捕获功能,此时若EXEN2=1,T2EN引脚出现负跳变将发生捕获操作,即把T2H和T2L内容传送给RCAP2H和RCAP2L。该位为0,选择重装功能,此时若T2溢出,或EXEN2=1且T2EN引脚上出现负跳变,都会把RCAP2H和RCAP2L的值送入T2H和T2L。

T2模式控制位

2.jpg

T2OE:T2输出允许控制位。T2OE=1允许时钟输出到T2/P1.0引脚,T2OE=0禁止输出。

DECN:加/减计数控制位,该位为1,允许T2作为加减计数器使用,方向由T2EN控制,T2EN为1,进行加计数,T2EN位0进行减计数。该位置0,T2自动向上计数。

T2工作模式的选择由RCLK,TCLK,CP/RL2,T2OE,CT2,和TR2来决定。

3.jpg




关键词: 基础知识    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]