按键检测_连续执行与执行一次
我们在做产品的时候,常常用到按键,在检测按键的动作后,需要执行相应的代码。基本上可以分为两种形式,例如现在有一个调节占空比的东西,共两个按键,一个按键的功能是“增加占空比”,一个按键的功能是“减小占空比,步进为1。两种形式分别为:
1.按键按下后,反复执行相应代码。拿上面的例子中的“增加占空比”按键来说,只要按键按着,数值一直增加,直到100为止。
if((KEY1_DOWN)&&(duty<100))//如果“增加”按键按下,且占空比值小于100 { duty++; }
2.按键按下后,只执行一次代码。拿上面的例子中的“增加占空比”按键来说,只要按键按着,数值只增加一次,只有按一下按键,数值才会再增加一次。
if((KEY1_DOWN)&&(duyt<100))//如果“增加”按键按下,且占空比值小于100 { duty++; } while(KEY1_DOWN);//如果按键一直按下,等待放开按键。