/* Beispiel 1 Grundversion
Led mit Taster auf/ ab faden
Taster schaltet nach GND interner Pullup aktiv
verwendet delay()
*/
const byte LedRot = 5; // pwm Ausgang
const byte btnRot = 7; // taster schalten gegen OV
byte hellRot; // Helligkeit für rote Led
const byte fadstep = 10; // Schrittweite
const byte delaytime; // Wartezeit
void setup() {
Serial.begin(9600);
pinMode(btnRot, INPUT_PULLUP); // Pin als Input festlegen
}
void loop() {
if (digitalRead(btnRot) == 0) { // wenn der Taster gerückt ist
if (hellRot + fadstep <= 255 ) { // max Wert noch nicht erreicht
hellRot = hellRot + fadstep; // um Wert erhöhen
analogWrite(LedRot, hellRot); // neuen Wert ausgeben
delay (delaytime); // warten
}
}
else { // taster ist nicht gedrückt
if (hellRot - fadstep >= 0 ) { // min Wert nicht erreicht
hellRot = hellRot - fadstep; // um wert verringern
analogWrite(LedRot, hellRot); // Wert ausgeben
delay(delaytime); // warten
}
}
}