定时器方式2

#include<reg52.h>
 
#define uchar unsigned char
#define uint  unsigned int
 
sbit led1=P1^0;
uint num;
 
void TIM0init(void)
{
    
    
     TMOD=0x02;    //设置定时器0为工作方式2
     TH0=6;   //装入初值
     TL0=6;    
     EA=1;    //开总中断
     ET0=1;   //开定时器中断
     TR0=1;   //启动定时器0
}
 
void T0_time()  interrupt 1      
{
    
    
     //相比上面的方式0,这里不需要认为加入重装初值的代码
     num++;
}
						  
void main()
{
    
    
    TIM0init(); 
    while(1)
    {
    
    
	  if(num==4000)     //如果到了4000,说明1秒时间到
          {
    
    
             num=0;
	     led1=~led1;   //让发光管状态取反
	  }
    }
}

猜你喜欢

转载自blog.csdn.net/m0_48808835/article/details/110954756
今日推荐