box-o-sand/oldstuff/arduino/msaqsg/ch03/MoreReliableSwitch/MoreReliableSwitch.ino

28 lines
576 B
Arduino
Raw Normal View History

const unsigned int BUTTON_PIN = 7;
const unsigned int LED_PIN = 13;
int oldButtonState = LOW;
int ledState = LOW;
void setup() {
pinMode(LED_PIN, OUTPUT);
pinMode(BUTTON_PIN, INPUT);
}
void loop() {
const int CURRENT_BUTTON_STATE = digitalRead(BUTTON_PIN);
if (CURRENT_BUTTON_STATE != oldButtonState &&
CURRENT_BUTTON_STATE == HIGH) {
if (ledState == LOW) {
ledState = HIGH;
} else {
ledState = LOW;
}
digitalWrite(LED_PIN, ledState);
}
oldButtonState = CURRENT_BUTTON_STATE;
}