Почему кнопка не обнаруживается все время, пока она нажата? - PullRequest
0 голосов
/ 06 октября 2018

В настоящее время я пытаюсь разработать простое приложение для мигания некоторого светодиода и изменения состояния в соответствии с вводом, который дает кнопка.Это означает, что у меня мигает светодиод, и всякий раз, когда я нажимаю кнопку, я хочу изменить состояние индикатора либо на постоянное включение, либо на возобновление мигания.

Это схема, которую я построил:

Arduino Circuit

Вот код, который у меня сейчас есть:

int currentState = HIGH;
int reading;
int previousState = LOW;

long time = 0; // the last time the output pin was toggled
long debounce = 200; 

void setup() {
  Serial.begin(9600);

  for(int i = 4; i < 8; i++){
    pinMode(i, OUTPUT);
  }
  pinMode(2, INPUT);
}

void loop() {
  reading = digitalRead(2);

  if (reading == HIGH && previousState == LOW && millis() - time > debounce) {
    Serial.println("The button was pressed");
    time = millis();
  }

  previousState = reading;

  digitalWrite(4, HIGH);
  delay(1000);
  digitalWrite(4, LOW);
  delay(1000);

}

Итак, теперь мне трудно, когда я нажимаю на кнопку,не всегда обнаруживаетсяИногда он печатает в терминал, а иногда ничего не делает.Почему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...