
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.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | 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.
1 2 3 4 5 6 | 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.
1 2 3 4 5 6 | for (int i = 255; i >= 0; i -= 10) { // LED in 10er-Schritten heller werden lassen analogWrite(LED, i); delay(200); } |
Verwandte Anleitungen:
Letzte Aktualisierung:






