Eine LED soll schrittweise in ihrer Leuchtstärke verändert werden.
So sieht es aus:
Benötigte Bauteile:
- gelbe LED
- Widerstand 220 Ω
- Leitungsdrähte
Beachte die ➨Vorwiderstände verschiedener LEDs
Baue die Schaltung auf.
(Fahre mit der Maus über das Bild, um die Bezeichnungen der Bauteile zu sehen)
Sie soll in 10-er Schritten immer heller und anschließend wieder dunkel werden.
int LED = 6;
void setup()
{
// bei analogWrite ist kein setup notwendig
}
void loop()
{
analogWrite(LED, 0);
delay(200);
analogWrite(LED, 10);
delay(200);
analogWrite(LED, 20);
delay(200);
analogWrite(LED, 30);
delay(200);
analogWrite(LED, 40);
delay(200);
analogWrite(LED, 50);
delay(200);
analogWrite(LED, 60);
delay(200);
analogWrite(LED, 70);
delay(200);
analogWrite(LED, 80);
delay(200);
. . .
. . .
analogWrite(LED, 250);
delay(200);
}
Du siehst, dass sehr viele Programmzeilen notwendig wären, um die Aufgabe zu realisieren.
Abhilfe schafft hier eine for-Schleife.
Sie hat die Form:
Von (Startwert = Wert; Startwert kleiner oder gleich Endwert; Schrittweite)
Die LED wird in 10er-Schritten heller:
Beginne mit dem Startwert 0, führe die Befehle solange aus, bis der Wert 250 erreicht ist. Die Schrittweite beträgt 10.
In diese Schleife werden nun die Anweisungen gepackt, die solange ausgeführt werden, bis i den Wert 250 erreicht hat.
for (int i = 0; i < 250; i += 10)
{
// LED in 10er-Schritten heller werden lassen
analogWrite(LED, i);
delay(200);
}
Ergänze das Programm mit einer weiteren for-Schleife.
Sie soll die Leuchtstärke von 250 wieder auf 0 regeln. Der Startwert ist jetzt 250, der Endwert 0 und die Schrittweite wird um 10 verringert.
for (int i = 255; i >= 0; i -= 10)
{
// LED in 10er-Schritten heller werden lassen
analogWrite(LED, i);
delay(200);
}
Verwandte Anleitungen:
- Blinkende LED
- Blinkende LED mit einem Potentiometer
- Blinkende LEDs mit Multithreading
- Farbe und Helligkeit eines LED-Streifens mit Potentiometern manipulieren
- Farbenspiele mit einem LED-Streifen
- Interrupt - Lauflicht mit Drehgeber
- Interrupt: Farbenspiel mit einem NeoPixel-Ring
- Lauflicht
- Lauflicht mit blinkenden LEDs
- Wechselblinker mit einem Relais
- LEDs mit einem Joystick-Shield schalten
- LEDs mit dem UDP-Protokoll im LAN schalten
- LEDs ohne Pulsweitenmodulation dimmen
- LEDs schalten mit PORT/DDR
- LEDs mit dem Schieberegister 74HC595 steuern
- LEDs mit einem Taster steuern
- Wechselblinker
- Würfeln mit LEDs
Letzte Aktualisierung: