admin 管理员组

文章数量: 1086866

STC8H8K64U——定时器T0(LED灯闪烁)

LED灯闪烁

使用定时器实现延时实现LED灯闪烁,定时 5ms,count 计数50定时 250ms

#include <STC8H.H>sbit LED = P2^0;
unsigned char count = 50;  //定时250msvoid Timer0Init(void)      //5毫秒@24.000MHz
{AUXR &= 0x7F;	  //定时器时钟12T模式TMOD &= 0xF0;     //设置定时器16位重装载模式,系统时钟计数TL0 = 0xF0;		  //设置定时初始值TH0 = 0xD8;		  //设置定时初始值TF0 = 0;		  //清除TF0标志TR0 = 1;		  //定时器0开始计时
}void main(void)
{/*P2.0准双向口模式*/P2M0 = 0x00; P2M1 &= ~(0x01); 
/*定时器T0初始化*/	Timer0Init();EA = 1;         //总中断允许ET0 = 1;        //定时器T0中断允许LED = 0;while(1);
}void Timer0() interrupt 1  
{count--;if(count == 0){count = 50;LED = !LED; }
}

本文标签: STC8H8K64U定时器T0(LED灯闪烁)