int buttonPin = 7;
int buttonState = HIGH;
int lastButtonState = HIGH ;
int ledState = LOW ;
int ledPin = 3;
void setup() {
Serial.begin(115200);
pinMode(buttonPin, INPUT_PULLUP);
pinMode(ledPin, OUTPUT);
// controle of LED goed is aangesloten
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
}
void loop() {
buttonState = digitalRead(buttonPin);
//Serial.println(buttonState);
if (buttonState != lastButtonState)
{
// ontdender vertraging
delay(20);
// knop is veranderd
Serial.println(F("knop veranderd"));
// onthoud laatste state
lastButtonState = buttonState;
// als de knop is ingedrukt
if(buttonState == LOW)
{
Serial.println(F("knop nu ingedrukt"));
if(ledState == HIGH)
{
ledState = LOW;
}
else
{
ledState = HIGH;
}
digitalWrite(ledPin, ledState); // schakel LED om
}
else
{
Serial.println(F("knop losgelaten"));
}
}
}