赞
踩
定时器的作用:
定时器的工作原理:
定时器的控制寄存器:
延时函数:
定时中断:
PWM波形生成:
计时功能:
- //定时器TO初始化
- void Init_Timer0()
- {
- //定时器计数器初值设置:50ms
- TH0 = (0 - 50000) / 256;
- TL0 = (0 - 50000) % 256;
- TMOD = 0x01; //T0的定时模式1:16位不可重装模式
- ET0 = 1; //使能定时器0
- EA = 1; //打开总中断
- TR0 = 1; //启动定时器0
- }
-
- //定时器T0的中断服务函数
- void Service_Timer0() interrupt 1
- {
-
- }
初始化定时器T0,并设置了定时器T0的中断服务函数框架,可以根据实际需求在中断服务函数中添加具体的处理逻辑。
void Init_Timer0()
:定义了一个函数Init_Timer0()
,用于初始化定时器T0。
TH0 = (0 - 50000) / 256;
:设置定时器计数器的高8位,计算公式为(0 - 计数值) / 256。这里设置了定时器初值为50000,对应50ms的定时。
TH0 = (0 - 50000) % 256;
:设置定时器计数器的低8位,计算公式为(0 - 计数值) % 256。
TMOD = 0x01;
:设置定时器T0的工作模式为定时模式1,即16位定时器模式,不可重装模式。
ET0 = 1;
:使能定时器T0的中断功能,允许定时器T0产生中断。
EA = 1;
:打开总中断,允许中断嵌套。
TR0 = 1;
:启动定时器T0,定时器开始工作。
void Service_Timer0() interrupt 1
:定义了一个中断服务函数Service_Timer0()
,用于处理定时器T0的中断。interrupt 1
表示该中断函数对应定时器T0的中断。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。