#define ledPin 2 // LED+ über Widerstand auf an Pin 13, LED- auf GND #define downPin 4 // Taste "down" verbindet Pin 4 mit GND #define upPin 5 // Taste "up" verbindet Pin 4 mit GND #define debounce 200 // Wartezeit (in ms) zur "Entprellung" der Tasten bool ledOn = false; // Umschalt-Flag: schalte ein, wenn false – schalte aus, wenn true int waitTime = 1020; // setze Wartezeit auf Initialwert int waitTime_max = 2020; int waitTime_min = 20; int waitTime_step = 200; long time1; void setup() { Serial.begin(9600); pinMode(ledPin, OUTPUT); pinMode(downPin, INPUT_PULLUP); pinMode(upPin, INPUT_PULLUP); time1 = millis(); } void loop() { if (!digitalRead(downPin)){ delay(debounce); if(waitTime > waitTime_min){ waitTime -= waitTime_step; } Serial.println(waitTime); } if (!digitalRead(upPin)){ delay(debounce); if(waitTime < waitTime_max){ waitTime += waitTime_step; } Serial.println(waitTime); } if(millis()-time1 >= waitTime){ if(ledOn){ digitalWrite(ledPin, LOW); ledOn = false; } else{ digitalWrite(ledPin, HIGH); ledOn = true; } time1 = millis(); } }