Arduino方法制作

时间:2016-11-18 09:59:27

标签: c++ arduino

以下代码是我“安全”程序的一部分。我必须进行4次“猜测”(密码由4个数字组成)。对于每个猜测我使用一些if语句,但我想知道是否有办法为每个“猜测”制作一个方法。这种方式而不是if语句的这4个部分,我只有一个方法。

if (turn == 1) {

    if ((buttonState != lastButtonState) && buttonState == 1) {
      guess1 = newValue;
      turn = 2;
      Printer();
    }
    lastButtonState = buttonState;
  }
  if (turn == 2) {
    if ((buttonState != lastButtonState) && buttonState == 1) {
      guess2 = newValue;
      turn = 3;
      Printer();
    }
    lastButtonState = buttonState;
  }

  if (turn == 3) {
    if ((buttonState != lastButtonState) && buttonState == 1) {
      guess3 = newValue;
      turn = 4;
      Printer();
    }
    lastButtonState = buttonState;
  }

  if (turn == 4) {
    if ((buttonState != lastButtonState) && buttonState == 1) {
      gok4 = nieuwewaarde;
      beurt = 5;
      Printer();
    }
    lastButtonState = buttonState;
  }

1 个答案:

答案 0 :(得分:0)

理论上应该可以将它缩小到这样的东西。请注意,您应该使用数组而不是一系列guess1,guess2,...变量。

int guess[4];

if ((buttonState != lastButtonState) && buttonState == 1) {
  guess[turn-1] = newValue;
  if (turn == 4)
  {
      gok4 = nieuwewaarde;
      beurt = 5;
  }
  else
      turn = turn+1;
  Printer();
}
lastButtonState = buttonState;

如果从0开始计数,你可以调整+ 1 / -1。但是如果想要更广泛地了解你想要实现什么,可能还有其他方法可以写东西。

此外,Arduino代码不是C ++,而是AVR。 “用户”代码是Processing。