digitalRead()Arduino,它会等待按键吗?

时间:2015-04-08 10:53:36

标签: arduino-uno

这是我的Arduino代码:

void loop()
{
 state=digitalRead(2);
  if(state==HIGH)
  {
    update();
  }
}

如果按下pin2中的按钮,我希望调用函数 update()。 将' state = digitalRead(2)'这句话等待按键?如果不是,你有什么建议?

3 个答案:

答案 0 :(得分:1)

当然不是。此函数将立即返回该引脚的当前状态

答案 1 :(得分:0)

此代码可以通过函数循环()

替换所有代码
void setup()
{
  attachInterrupt(2, update, RISING);
}

void loop()
{

}

void update()
{
...
}

答案 2 :(得分:0)

尝试创建一个 while 循环来等待按钮按下:

while (!digitalRead(2)) {
delay(100);
}

因此您的脚本陷入循环并等待按钮按下。