单片机C语言定时器如何调用
单片机中通过中断的方式来调用定时历芦器。
具体的调用方式可以参考通过如下程序:
程序功能:利用定时器进行定时,实现每秒中led闪烁一次
#includereg52.h
sbit led = P0^0;
unsigned int num;
void main(void)
{
TMOD = 0x00; // 工作方式0
TH0 = (8192 – 5000) / 32; // 12M晶振下定时5ms
TL0 = (8192 – 5000) % 32;
EA = 1; // 开总中断
ET0 = 1; // 开定时器中断
TR0 = 1; // 启动定时器
while(1)
{
if(num == 200) // 定肢空带时1秒钟到
{
num = 0; // 计数器清零
led = ~led; // led灯取反,实现1秒闪烁一次
}
}
}
void timer() interrupt 1 // 定时器1工作与方式0
{
TH0 亏晌= (8192 – 5000) / 32; // 重装初值
TL0 = (8192 – 5000) % 32;
num++; // 计数器加1
}