求单片机c51的C语言编程:设当开关为1时,控制2个led交替闪烁,闪烁时间为5秒
2016-06-22
展开全部
#include#defineucharunsignedcharuchartimes,led;sbitkey1=P1^0;sbitkey2=P1^1;voidt0isr()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;times++;}voidrolled(){P0=led;led=(led>>1)|0x80;if(led==0xff)l
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
uchar a=0;
void main()
{
TMOD=0X01;
TL0=(65536-50000)%256;//定时50ms
TH0=(65536-50000)/256;
ET0=1;
EA=1;
TR0=1;
while(key==1)
{
if(a<100)//50*100=5000ms 即5S
{
led1=0;
led2=1;
}
else//5-10秒,灯变换状态
{
led1=1;
led2=0;
}
}
}
void timer0() interrupt 1
{
TL0=(65536-50000)%256;
TH0=(65536-50000)/256;
a++;
if(a==200) a=0;
}
void main()
{
TMOD=0X01;
TL0=(65536-50000)%256;//定时50ms
TH0=(65536-50000)/256;
ET0=1;
EA=1;
TR0=1;
while(key==1)
{
if(a<100)//50*100=5000ms 即5S
{
led1=0;
led2=1;
}
else//5-10秒,灯变换状态
{
led1=1;
led2=0;
}
}
}
void timer0() interrupt 1
{
TL0=(65536-50000)%256;
TH0=(65536-50000)/256;
a++;
if(a==200) a=0;
}
更多追问追答
追问
我运行了一下,只有led1会亮啊,不会交替的亮,可以加我的丘丘教我吗?我私信你了
不行哇。。。可以私聊吗
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询