Drehknopf-Dimmer
Teil des Abschnitts Ausgaben der Arduino-Journey von Coddy. Lektion 5 von 24.
Ein Drehknopf liefert analogRead() eine Zahl von 0 bis 1023, und analogWrite() erwartet 0 bis 255. Die beiden Wertebereiche stimmen nicht überein, also wandle den einen mit map() in den anderen um:
int reading = analogRead(A0);
int brightness = map(reading, 0, 1023, 0, 255);
analogWrite(9, brightness);Wenn du den Drehknopf ganz herunterdrehst, ergibt sich 0 und die LED ist aus; drehst du ihn ganz auf, ergibt sich 1023, was zu 255 wird – die LED leuchtet mit voller Helligkeit. Jede Position dazwischen ergibt eine Helligkeit dazwischen.
Den Messwert direkt an die LED zu schreiben, funktioniert nicht: analogWrite() akzeptiert nur Werte von 0 bis 255, daher führt ein Messwert wie 600 zu einer falschen Helligkeit.
Aufgabe
EinfachDer Drehknopf ist an A0 und die LED an Pin 9 angeschlossen. Lass den Drehknopf die Helligkeit einstellen:
- lies den Drehknopf aus
- wandle den Messwert mit
map()in einen Wert von 0 bis 255 um - schreibe den Wert auf die LED und warte dann 10 ms
Klicke auf Run und drehe den Drehknopf, dann auf Check.
Probier es selbst
const int knobPin = A0;
const int ledPin = 9;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
// Lies den Drehknopf aus, skaliere den Wert auf 0..255 und gib ihn an die LED aus
}
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Ausgaben
1Helligkeit
Eine LED mit PWM dimmenPWM-Pins mit ~ gekennzeichnetEine LED langsam aufleuchten lassenEin- und ausblendenDrehknopf-DimmerÜbe selbstständig: Arduino-Playground