定时器编程

来源:百度知道 编辑:UC知道 时间:2024/06/18 15:02:01
有哪位大虾,知道怎么用C语言编程(给51单片机编程),制作一个定时器从99开始倒计时到0时,所控制的灯亮谢谢,最好解释一下每条指令的作用

#include<reg52.h>
sbit light=P2^0;
unsigned char flag;
void main()
{
EA=1;
ET0=1;
TMOD=0x01;//定时器工作在1方式
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
TR0=1;
while(1)
{
if(flag==1)
{
light=0;
}
}
}
void timer() interrupt 0
{
unsigned char i,j;
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;
i++;
if(i==20)
{
i=0;
j++;
if(j==99) flag=1;
}

}