51单片机独立按键中,按一下和一直按的区别
例如:按键k1控制一个LED灯,按一下松开这个LED一直亮和按一下松开就亮一下,一直按就一直亮,这个要怎么弄?(加标志位好像能行,但要怎么加,最好写一下程序详细解释一下)...
例如:按键k1控制一个LED灯,按一下松开这个LED一直亮和按一下松开就亮一下,一直按就一直亮,这个要怎么弄?(加标志位好像能行,但要怎么加,最好写一下程序详细解释一下)
展开
1个回答
展开全部
按一下松开这个LED一直亮:
if(key==0)
{
while(key==0);
led=0;
}
按一下松开就亮一下:
if(key==0)
{
led=0;
while(key==0);
led=1;
}
追问
这个不需要消抖吗?在哪消?
追答
仿真就没有必要了,如果是实际电路,消抖是需要做的,加一个延时就好。
if(key==0)
{
delay(10);
if(key==0)
{
led=0;
while(key==0);
led=1;
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询