51单片机定时计数器控制LED1s闪烁一次
#include<reg51.h>//头文件
sbit LED=P2^0;//位定义LED灯
void Timer0()//使用定时计数器所做的处理函数,用做定时器
{
TMOD=0x01;//定时器0,方式1
TH0=0xFC;//定时1ms的初值
TL0=0x18;//定时1ms的初值
ET0=1;//打开定时计数器0使能控制位
EA=1;//打开总中断
TR0=1;//打开定时计数器0的启动控制位
}
void main()//主函数
{
Timer0();//调用函数
while(1);
}
void ledxs()interrupt 1//中断执行内容函数,用定时器0编号为1
{
static unsigned int i;
TH0=0xFC;//方式1不是自动重装,需要重新装载初值
TL0=0x18;
i++;
if(i==1000)//让LED灯过1s闪烁
{
i=0;
LED=~LED;
}
}
注:
使用定时器0,方式1,实现定时1ms
LED灯接于单片机P2口
如果文章或资源对您有帮助,欢迎打赏作者。一路走来,感谢有您!
txttool.com 说一段 esp56物联 查询128 IP查询