const int ledPin = 9;
const int buttonPin = 20;
int ledState = LOW;
int buttonState;
int lastButtonState = LOW;
unsigned long lastDebounceTime = 0;
unsigned long debounceDelay = 20;
void setup() {
pinMode(9, OUTPUT);
pinMode(20, INPUT);
digitalWrite(ledPin,ledState);
Serial.begin(9600);
Serial.println(buttonState);
}
void loop() {
int reading = digitalRead(buttonPin);
if(reading != lastButtonState){
lastDebounceTime = millis();
}
if(millis()-lastDebounceTime > debounceDelay){
if(reading != buttonState){
buttonState = reading;
if(buttonState == LOW){
ledState = !ledState;
}
}
}
digitalWrite(ledPin,ledState);
lastButtonState = reading;
}