按键检测_连续执行与执行一次

  • 学习4164次

我们在做产品的时候,常常用到按键,在检测按键的动作后,需要执行相应的代码。基本上可以分为两种形式,例如现在有一个调节占空比的东西,共两个按键,一个按键的功能是“增加占空比”,一个按键的功能是“减小占空比,步进为1。两种形式分别为:

1.按键按下后,反复执行相应代码。拿上面的例子中的“增加占空比”按键来说,只要按键按着,数值一直增加,直到100为止。

if((KEY1_DOWN)&&(duty<100))//如果“增加”按键按下,且占空比值小于100
{
   duty++;
}

2.按键按下后,只执行一次代码。拿上面的例子中的“增加占空比”按键来说,只要按键按着,数值只增加一次,只有按一下按键,数值才会再增加一次。

if((KEY1_DOWN)&&(duyt<100))//如果“增加”按键按下,且占空比值小于100
{
  duty++;
}
while(KEY1_DOWN);//如果按键一直按下,等待放开按键。

发表评论