如果声明在while循环arduino

时间:2017-03-12 19:15:25

标签: arduino-uno

代码不完美的工作

int pushButton = 2;

int gearstatus = 0 ;

int buttonState;

void setup() {
  Serial.begin(9600);
  pinMode(pushButton, INPUT);


}
void gearfunction(){
  buttonState = digitalRead(pushButton);

  while(gearstatus <= 5){

    Serial.println( gearstatus);

    if(buttonState == HIGH){
      gearstatus++;}
    }
  }


void loop() {


  gearfunction();

}

在这段代码中我试图在while循环中使用if语句, 但代码不起作用。有人能给我怎么做吗?我想将齿轮箱数增加到5但值不会增加。

2 个答案:

答案 0 :(得分:0)

它不起作用,因为将pushButton标记为INPUT不会使其等于HIGH

您需要在输入指令后放入内部设置功能:

digitalWrite(pushButton,HIGH)

答案 1 :(得分:0)

请你解释一下你想要做的事情,如果你附上一个小电路图像会更好。如果您提供所需信息,我可以建议您使用circuits.io代码和答案。