我要做的是用按键设置时间:
有两个按键key1和key2:当按key1时,调用delay_1s,再按key1时,调用delay_2s,再按key1,调用delay_3s······
当按key2时,比如按key1到了delay_5s,这时候我需要按key2递减。
void key()
{
if(key_number==1)
{
应该怎么调用啊。。
}
if(key_number==2)
{
应该怎么调用。
}
}
void delay_1s()
{}
void delay_2s()
{}
......
谢谢大神帮忙~~
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
LZ 可以设置一个变量,通过两个按键判断变量的奇偶性,打比方,按键1时判断偶数时,变量自加一,奇数则变量不变;按键2时判断偶数时变量不变,,奇数则变量自加一;同时在按键2的程序里记得判断,若变量大于4,则变量自减一,然后用switch语句根据变量的值去调用你那些延时函数,大概就这么个思路吧。。。。还有好多其他方法,LZ多想想就行了
大神:
uchar setstate;
if(key_numer=1)
{
setstate=2;
switch(setstate)
{
case 1:delay_100ms();
break;
case 2:delay_200ms();
break;
case 3:delay_300ms();
break;
case 4:delay_400ms();
break;
case 5:delay_500ms();
}
}
我开始直接显示200ms的 然后按key1的时候,为什么没有显示啊。。(这几个函数我都写了显示)
改成if(setstate<5)setstate++;
另外一个按键中类似的if(setstate>1)setstate--;
一周热门 更多>