Grundlagen · 9 Min. Lesezeit

Arduino Blockprogrammierung: LED blinken lassen, Blöcke und C++

Arduino Blockprogrammierung für Einsteiger: LED mit 220-Ω-Widerstand anschließen, die C++-Zeile hinter jedem Block, Wartezeit ändern, dann eine Ampel bauen.

Bei der Arduino Blockprogrammierung ist das erste Programm fast immer dasselbe: eine LED blinken lassen. Genau das machen wir in diesem Beitrag von Anfang bis Ende. Wir schließen eine LED über einen 220-Ω-Widerstand an Pin 9 an, lesen die Blöcke des Projekts LED Blinken in BlueGrays einzeln durch und sehen nebeneinander, zu welcher Zeile im C++-Code jeder Block wird, der auf das Board geladen wird. Außerdem probierst du aus, wie du mit einer einzigen Zahl, der 100 im Block „100 ms warten“, das Blinktempo steuerst.

Dieser Beitrag ist Teil 2 der Reihe Von Blöcken zum Code. Was Blöcke sind und wie daraus echter Code wird, erklären wir in Was ist Blockprogrammierung?. Im nächsten Teil kommt ein Taster dazu und wir sehen uns den „wenn“-Block und if/else an.

Bei einer LED bleibt es nicht. Wir bauen dieselbe Logik Schritt für Schritt aus: zu einem Programm, das zwei LEDs abwechselnd blinken lässt, zu einer Ampel und zu einem Polizeilicht. Danach siehst du dieselbe Idee auf dem ESP32 und mit MicroPython auf dem Raspberry Pi Pico. Am Ende steht eine Tabelle mit den Fehlern, die fast jeder Einsteiger einmal macht. Alle Projekte in diesem Beitrag sind in BlueGrays mit Blöcken und Code kostenlos; alle Projekte mit Blöcken findest du nach Plattform sortiert auf der Seite Blockprogrammierung.

Was brauchst du?

BauteilAnzahlHinweis
Arduino Uno (oder Nano)1Per USB mit dem Computer verbunden
5-mm-LED (rot ist am einfachsten)1Langes Bein +, kurzes Bein -
220-Ω-Widerstand1Farbringe: rot, rot, braun
Steckbrett (Breadboard)1Kein Löten nötig
Jumperkabel Stecker-Stecker2Für D9 und GND
Computer mit Arduino IDE1Zum Hochladen des Codes

Die Schaltung: LED an Pin 9 anschließen

Eine LED hat zwei Beine und die Richtung ist wichtig. Das lange Bein ist die Anode (+), das kurze die Kathode (-); auf der Kathodenseite ist das Kunststoffgehäuse abgeflacht. Strom fließt nur von der Anode zur Kathode, falsch herum eingesteckt passiert also gar nichts. Verbinde Pin 9 des Arduino mit einem Ende des 220-Ω-Widerstands und das andere Ende mit dem langen Bein der LED. Das kurze Bein führst du zu GND. Der Widerstand begrenzt den Strom: Von 5 V ziehst du die rund 2 V der roten LED ab, am Widerstand bleiben 3 V, und 3 V / 220 Ω ergeben etwa 14 mA. Das ist für die LED angenehm und für den Arduino-Pin sicher. Den Wert für deine LED-Farbe prüfst du mit dem LED-Vorwiderstandsrechner. Wie eine LED funktioniert, steht in Was ist eine LED?, wie die Reihen eines Steckbretts innen verbunden sind, in Was ist ein Breadboard?.

VerbindungArduino Uno (LED Blinken)ESP32 (LED Blinken mit ESP32)Raspberry Pi Pico (externe LED)
Langes LED-Bein (Anode, +)D9 über 220 ΩGPIO 5 über 220 ΩGP14 über 220 Ω
Kurzes LED-Bein (Kathode, -)GNDGNDGND
Pin in Blöcken und Code95LED_PIN = 14
Wartezeit im Projekt100 ms500 ms0,5 Sekunden
Pinspannung5 V3,3 V3,3 V
Schließe eine LED nie ohne Widerstand direkt an einen Pin an. Ohne ihn begrenzt nichts den Strom: Die LED leuchtet viel zu hell, wird warm und kann schnell kaputtgehen, auch der Arduino-Pin kann Schaden nehmen. Hast du die LED falsch herum eingesteckt, keine Sorge: Sie leuchtet dann einfach nicht, du musst sie nur umdrehen. Die Pins deines Boards findest du im Tool Pinout.

Dein erstes Programm in Blöcken: LED Blinken

Steht die Schaltung, schauen wir uns das Programm an. Öffne in BlueGrays das Projekt LED Blinken und schalte im Code-Bereich Als Blöcke zeigen ein, dann siehst du die Blöcke unten. Es sind insgesamt sieben Blöcke in zwei großen Gruppen: oben Setup (läuft einmal), darunter immer wiederholen. Die Blöcke erscheinen in der Sprache der App; auf Deutsch steht dort „HOCH an Pin schreiben“, auf Englisch „write HIGH to pin“.

Blöcke des Projekts LED Blinken: im Setup Pin 9 als AUSGANG, in immer wiederholen HOCH schreiben, 100 ms warten, NIEDRIG schreiben, 100 ms warten
Blöcke von LED Blinken (Projekt 1): Pin 9 wird im Setup einmal zum Ausgang, die vier Blöcke in immer wiederholen laufen endlos.

Die Blöcke in Setup (läuft einmal) laufen nur einmal, wenn das Board startet oder du Reset drückst. Hier gibt es einen einzigen Block: „Pin 9 als AUSGANG setzen“. Die digitalen Pins des Arduino können Ein- oder Ausgang sein. Da wir eine LED ansteuern, sagen wir dem Board: „Über diesen Pin gebe ich Strom aus.“ Die Gruppe immer wiederholen startet nach dem Setup und läuft, solange das Board eingeschaltet ist, immer wieder von oben nach unten durch. Ihre vier Blöcke schalten die LED ein, warten 100 Millisekunden, schalten sie aus und warten wieder 100 Millisekunden. Nach dem letzten Block springt das Programm nach oben und die LED leuchtet erneut. Blinken heißt also nichts anderes, als dass sich diese vier Schritte fünfmal pro Sekunde wiederholen.

Block → C++-Zeile: Was wird aus jedem Block?

BlockC++-ZeileWas passiert?
Setup (läuft einmal)void setup() { ... }Führt den Inhalt beim Start einmal aus
Pin 9 als AUSGANG setzenpinMode(9,OUTPUT);Macht Pin 9 zum Ausgang
immer wiederholenvoid loop() { ... }Wiederholt den Inhalt endlos
HOCH an Pin 9 schreibendigitalWrite(9,HIGH);Legt 5 V an den Pin, die LED leuchtet
100 ms wartendelay(100);Hält das Programm 0,1 s an
NIEDRIG an Pin 9 schreibendigitalWrite(9,LOW);Setzt den Pin auf 0 V, die LED geht aus
100 ms wartendelay(100);Bleibt 0,1 s aus
C++ (Arduino IDE)
1// Led Yakma (proje 1): D9'daki LED 100 ms yanar, 100 ms söner
2// LED Blink (project 1): the LED on D9 is on for 100 ms, off for 100 ms
3void setup() {
4  pinMode(9,OUTPUT);     // LED pini çıkış / LED pin as output
5}
6
7void loop() {
8  digitalWrite(9,HIGH);  // LED'i yak / turn the LED on
9  delay(100);            // 100 ms bekle (1000 ms = 1 s) / wait 100 ms (1000 ms = 1 s)
10  digitalWrite(9,LOW);   // LED'i söndür / turn the LED off
11  delay(100);            // 100 ms bekle / wait 100 ms
12}
13

Legst du Tabelle und Code nebeneinander, siehst du, was dir die Blöcke abnehmen. Die Form der Gruppen Setup und immer wiederholen entspricht den geschweiften Klammern der Funktionen void setup() und void loop(): In welcher Gruppe ein Block steckt, bestimmt, in welchen Klammern seine Zeile steht. An das Semikolon am Ende jeder Anweisung, an Groß- und Kleinschreibung (pinMode, digitalWrite) und an Klammern musst du bei Blöcken nicht denken. Sobald du den Code in der Arduino IDE selbst änderst, werden sie aber wichtig; schon ein vergessenes Semikolon führt zu einem Kompilierfehler. Genau darin liegt der Nutzen der Blöcke: Erst sitzt die Logik des Programms, dann lernst du, wie dieselbe Logik als Code geschrieben wird.

Was passiert, wenn du „100 ms warten“ änderst?

Die Wartezeit wird in Millisekunden (ms) angegeben, 1000 ms sind eine Sekunde. Beide Warteblöcke im Projekt stehen auf 100 ms, also ist die LED 0,1 Sekunden an und 0,1 Sekunden aus. Ein voller Durchlauf dauert 200 ms, die LED blinkt also fünfmal pro Sekunde. Erhöhst du die Zahl in beiden Blöcken, wird die LED langsamer, verringerst du sie, wird sie schneller. Ab einem gewissen Punkt kann das Auge das Blinken nicht mehr auflösen und die LED scheint dauerhaft zu leuchten. Die Tabelle zeigt, was du bei verschiedenen Werten siehst:

WarteblöckeEin DurchlaufBlinken pro SekundeWas du siehst
10 ms + 10 ms20 ms50Scheint ruhig zu leuchten, etwas dunkler
100 ms + 100 ms (im Projekt)200 ms5Schnelles, deutliches Blinken
250 ms + 250 ms500 ms2Gut verfolgbares Blinken
500 ms + 500 ms1 s1Einmal pro Sekunde, ruhiger Takt
1000 ms + 1000 ms2 s0,51 Sekunde an, 1 Sekunde aus
100 ms + 900 ms1 s1Kurzer Blitz, lange Pause
Die beiden Warteblöcke müssen nicht gleich sein. Stellst du den ersten auf 100 und den zweiten auf 900, gibt die LED jede Sekunde einen kurzen Blitz ab, wie die Betriebsanzeige vieler Geräte. Im Code sind das delay(100); und delay(900);. Eine Zahl ändern und neu hochladen ist die schnellste Übung, um den Zusammenhang zwischen Blöcken und Code zu verstehen.

Das Programm erweitern: zwei LEDs, Ampel, Polizeilicht

Wenn du eine LED blinken lassen kannst, brauchst du für mehrere LEDs nichts Neues; du wiederholst einfach dieselben drei Blöcke mit anderen Pins. Im Projekt Zwei LEDs abwechselnd blinken werden im Setup zwei Pins zu Ausgängen: 8 und 9. In immer wiederholen folgen „HOCH an Pin 8 schreiben“ und „NIEDRIG an Pin 9 schreiben“, dann „200 ms warten“. Danach wird es umgekehrt geschrieben und wieder 200 ms gewartet. Der Trick: Die beiden Schreibblöcke laufen direkt hintereinander ohne Wartezeit, deshalb scheinen die LEDs im selben Moment zu wechseln. Der Warteblock bestimmt, wie lange ein Zustand dauert.

Das Projekt Ampel überträgt die Idee auf drei LEDs: Rot an D2, Gelb an D3, Grün an D4. Die Gruppe immer wiederholen besteht aus vier Phasen, und jede folgt demselben Muster: für jede der drei LEDs ein Block HOCH oder NIEDRIG schreiben, danach ein Warteblock. Die Schreibblöcke legen fest, welche LED leuchtet, der Warteblock, wie lange. Mehr Blöcke machen es nicht schwerer, nur länger. Eine Version mit Fußgängertaster, die einer echten Kreuzung näherkommt, findest du im Beitrag Arduino Ampel.

Blöcke des Projekts Ampel: Pins 2, 3 und 4 als Ausgang, Blöcke HOCH und NIEDRIG schreiben in vier Phasen, 2000 ms und 300 ms warten
Blöcke der Ampel (Projekt 3): Jede Phase besteht aus drei Schreibblöcken und einem Warteblock.
PhaseRot (D2)Gelb (D3)Grün (D4)Wartezeit
1HOCHNIEDRIGNIEDRIG2000 ms (2 s)
2NIEDRIGHOCHNIEDRIG300 ms
3NIEDRIGNIEDRIGHOCH2000 ms (2 s)
4NIEDRIGHOCHNIEDRIG300 ms
C++ (Arduino IDE)
1// Trafik Lambası (proje 3) / Traffic Light (project 3)
2void setup() {
3  pinMode(2,OUTPUT);    // Kırmızı / Red
4  pinMode(3,OUTPUT);    // Sarı / Yellow
5  pinMode(4,OUTPUT);    // Yeşil / Green
6}
7
8void loop() {
9  // Kırmızı yanar, 2 s bekle / Red on, wait 2 s
10  digitalWrite(2,HIGH);
11  digitalWrite(3,LOW);
12  digitalWrite(4,LOW);
13  delay(2000);
14  // Sarı yanar, 0,3 s bekle / Yellow on, wait 0.3 s
15  digitalWrite(2,LOW);
16  digitalWrite(3,HIGH);
17  digitalWrite(4,LOW);
18  delay(300);
19  // Yeşil yanar, 2 s bekle / Green on, wait 2 s
20  digitalWrite(2,LOW);
21  digitalWrite(3,LOW);
22  digitalWrite(4,HIGH);
23  delay(2000);
24  // Sarı yanar, sonra başa (kırmızıya) dön / Yellow on, then back to red
25  digitalWrite(2,LOW);
26  digitalWrite(3,HIGH);
27  digitalWrite(4,LOW);
28  delay(300);
29}
30

Im Projekt LED-Polizeilicht begegnen dir zwei neue Blockarten. Die erste ist die Gruppe globale Variablen (ganz oben) mit dem Block „deklariere Ganzzahl (int) delayTime = 60“. Das ist die Zeile int delayTime = 60; im Code, sie gibt der Blinkzeit einen Namen. Weil in den Warteblöcken delayTime statt einer Zahl steht, änderst du das Tempo, indem du nur die 60 änderst statt vier einzelner Blöcke. Die zweite ist der grüne Block „wiederhole 3 -mal“; er führt die vier Blöcke darin dreimal aus und wird in C++ zur Schleife for(int i=0;i<3;i++).

Blöcke des Projekts LED-Polizeilicht: Variable delayTime, Pins 2 und 3 als Ausgang, zwei Blöcke wiederhole 3 -mal
Blöcke des LED-Polizeilichts (Projekt 4): Die rote LED (D2) blitzt dreimal, danach die blaue LED (D3) dreimal.

Rechnen wir: Bei jedem Blitz ist die rote LED 60 ms an und 60 ms aus, ein Blitz dauert also 120 ms. Drei Blitze ergeben 360 ms, bei der blauen LED genauso. Ein ganzer Durchlauf dauert etwa 0,7 Sekunden. Setzt du delayTime auf 30, blitzt es doppelt so schnell, bei 120 langsamer. Variablen und Schleifen sind Thema von Teil 4 der Reihe; im Beitrag „immer wiederholen“, Zähl- und Array-Blöcke gehen wir ausführlich darauf ein. Das Projekt LED-Lauflicht, bei dem das Licht eine LED-Reihe entlangläuft, ist der nächste Schritt auf diesem Weg.

Dieselbe Idee auf ESP32 und Raspberry Pi Pico

Auf dem ESP32 sehen die Blöcke fast genauso aus wie beim Arduino, denn auch der ESP32 wird mit der Arduino IDE in C++ programmiert. Im Projekt LED Blinken mit ESP32 hängt die LED an GPIO 5 und die Warteblöcke stehen auf 500 ms. Auch die Codezeilen sind gleich: pinMode(5, OUTPUT); digitalWrite(5, HIGH); delay(500);. Unterschiede gibt es nur bei der Pinnummer, bei den 3,3 V an den ESP32-Pins und bei der Boardauswahl in der Arduino IDE. Alles, was du am Uno lernst, kannst du direkt auf den ESP32 übertragen.

In Projekten für den Raspberry Pi Pico werden die Blöcke zu MicroPython-Code, und die Blocknamen ändern sich etwas. Im Projekt Pico mit externer LED hängt die LED an GP14. Der Block „Pin led : GP LED_PIN, AUSGANG“ entspricht led = Pin(LED_PIN, Pin.OUT), „Pin led einschalten (on)“ entspricht led.on(), „0.5 Sekunden warten“ entspricht time.sleep(0.5) und immer wiederholen der Schleife while True:. Achtung: In MicroPython wird die Wartezeit in Sekunden angegeben, nicht in Millisekunden; aus delay(500) beim Arduino wird time.sleep(0.5). Willst du ganz ohne Verkabelung starten, bringt das Projekt Pico Onboard-LED die LED an GP25 direkt auf dem Board zum Blinken; beim Pico W sprichst du die Onboard-LED statt mit GP25 mit dem Namen „LED“ an.

MicroPython
1# Pico harici LED (proje 8163), seri port satırları çıkarıldı
2# Pico external LED (project 8163), serial print lines removed
3from machine import Pin
4import time
5
6LED_PIN = 14                    # GP14, herhangi bir boş GPIO / any free GPIO
7led = Pin(LED_PIN, Pin.OUT)     # pini çıkış yap / set the pin as output
8
9while True:                     # sürekli tekrarla / loop forever
10    led.on()                    # LED'i yak / turn the LED on
11    time.sleep(0.5)             # 0,5 saniye bekle / wait 0.5 s
12    led.off()                   # LED'i söndür / turn the LED off
13    time.sleep(0.5)
14

Häufige Fehler und ihre Lösung

FehlerSymptomLösung
LED falsch herum eingestecktDie LED leuchtet gar nichtLanges Bein über den Widerstand an den Pin, kurzes an GND; LED umdrehen
Kein WiderstandLED zu hell, wird warm, kann schnell ausfallenEinen 220-Ω-Widerstand in Reihe zur LED schalten
Pin im Block passt nicht zur SchaltungUpload klappt, aber die LED bleibt dunkelDie 9 im Block und das verkabelte D9 müssen übereinstimmen; Kabel oder Zahl ändern
Zweiter Warteblock vergessenDie LED scheint dauerhaft anAuch nach dem Block NIEDRIG schreiben muss ein Warteblock (delay) stehen
Wartezeit zu kurz (z. B. 5 ms)LED leuchtet ruhig und etwas dunklerMindestens 50–100 ms ausprobieren
Beide LED-Beine in derselben SteckbrettreiheDie LED leuchtet gar nichtBeine in verschiedene Reihen stecken; Löcher einer Reihe sind innen verbunden
Falsches Board oder falscher PortDie Arduino IDE meldet einen Upload-FehlerIm Menü Werkzeuge das richtige Board und den Port wählen

Schritt für Schritt in der App: von den Blöcken aufs Board

  1. Öffne in BlueGrays das Projekt LED Blinken, das in der Projektliste das Block-Abzeichen trägt. Über den Filter kannst du auch nur Projekte mit Blöcken anzeigen.
  2. Stecke nach dem Schaltplan die LED, den 220-Ω-Widerstand und zwei Kabel auf das Steckbrett.
  3. Schalte im Code-Bereich Als Blöcke zeigen ein. Statt des Codes erscheinen die Blöcke; tippst du auf das Bild, öffnet es sich im Vollbild.
  4. Wechsle zum Tab Blöcke verstehen. Das Programm wird Schritt für Schritt erklärt; in jedem Schritt siehst du nur dessen Blöcke und was sie tun.
  5. Schalte den Schalter wieder aus, um zum echten Code zurückzukehren, kopiere ihn und füge ihn in die Arduino IDE ein. Blöcke werden nicht direkt aufs Board geladen; dorthin kommt immer dieser Code.
  6. Wähle in der Arduino IDE Arduino Uno als Board und den richtigen Port und klicke auf Hochladen. Falls die IDE noch fehlt, hilft dir der Beitrag Arduino IDE installieren Schritt für Schritt.
  7. Sobald die LED blinkt, ändere beide Zeilen delay(100) in delay(1000), lade erneut hoch und sieh dir den Unterschied selbst an.

In diesem Beitrag blinkte die LED immer im gleichen Takt; das Programm hat nichts von außen mitbekommen. Der nächste Schritt ist, das Board Entscheidungen treffen zu lassen: Teil 3 der Reihe, Taster und der „wenn“-Block, zeigt ein Programm, das die LED auf Tastendruck einschaltet, und wie aus dem Wenn-sonst-Block if/else wird.

In der BlueGrays-App findest du LED Blinken, Zwei LEDs abwechselnd blinken, Ampel, LED-Polizeilicht und die LED-Projekte für ESP32 und Pico mit Schaltplan und Code, kannst mit Als Blöcke zeigen zur Blockansicht desselben Programms wechseln und mit Blöcke verstehen nachlesen, was jeder Schritt macht.

Häufige Fragen

Was ist Arduino Blockprogrammierung?

Dabei wird ein Arduino-Programm nicht als Text, sondern als Blöcke dargestellt, die wie Puzzleteile ineinandergreifen. Jeder Block, etwa „HOCH an Pin 9 schreiben“ oder „100 ms warten“, entspricht einer Zeile des C++-Codes, der aufs Board geladen wird. Ohne Semikolons und Klammern können sich Einsteiger zuerst auf die Logik konzentrieren.

Wie lässt man mit Blöcken eine LED blinken?

In die Setup-Gruppe kommt „Pin 9 als AUSGANG setzen“, in immer wiederholen nacheinander „HOCH an Pin 9 schreiben“, „100 ms warten“, „NIEDRIG an Pin 9 schreiben“ und „100 ms warten“. In der Schaltung hängt die LED über 220 Ω an D9. Aus diesen Blöcken werden die Zeilen pinMode, digitalWrite und delay.

Warum leuchtet meine LED dauerhaft, statt zu blinken?

Meist fehlt der Warteblock nach dem Block NIEDRIG schreiben. Dann ist die LED nur Mikrosekunden aus und das Auge bemerkt es nicht. Auch sehr kurze Wartezeiten (z. B. 5 ms) lassen die LED dauerhaft leuchten; probiere 100 ms oder mehr.

Welchen Widerstand braucht eine LED am Arduino?

An den 5-V-Pins eines Arduino Uno ist 220 Ω die gängigste Wahl und lässt bei einer roten LED etwa 14 mA fließen. 330 Ω gehen auch, die LED leuchtet dann etwas schwächer. Der Widerstand begrenzt den Strom, egal an welchem LED-Bein er sitzt; wichtig ist nur, dass er in Reihe liegt.

Kann ich die Blöcke direkt auf den Arduino laden?

Nein. Die Blöcke in BlueGrays machen das Programm leichter lesbar und verständlich; aufs Board kommt immer der echte Code des Projekts. Du kopierst ihn in die Arduino IDE (beim Pico in Thonny) und lädst ihn von dort hoch.

Wie viele Sekunden sind 1000 ms und wie ändere ich das Blinktempo?

1000 Millisekunden sind 1 Sekunde. Eine größere Zahl in den Warteblöcken macht die LED langsamer, eine kleinere schneller: Bei 100 ms in beiden Blöcken blinkt sie fünfmal pro Sekunde, bei 500 ms einmal. In den MicroPython-Blöcken des Pico wird die Zeit in Sekunden angegeben, 0.5 ist eine halbe Sekunde.

Alle Projekte ansehen
LED Blinken
#1Anfänger

LED Blinken

Das allererste Hallo der Elektronik: eine einzelne LED an- und ausschalten. Der Arduino schaltet die LED in kurzen Abständen ein und aus, das Licht blinkt also schnell. So siehst du ganz einfach, wie

4.6(188)
1127
Zwei LEDs abwechselnd blinken
#2Anfänger

Zwei LEDs abwechselnd blinken

Zwei LEDs blinken schnell im Wechsel: Leuchtet die eine, geht die andere aus, als würden sie sich einen Ball zuwerfen. Der Arduino lässt jedes Licht eine Fünftelsekunde leuchten und gibt dann an das a

4.6(105)
343
Ampel
#3Anfänger

Ampel

Eine winzige Nachbildung der Ampel, die du jeden Tag auf der Straße siehst. Rot leuchtet zwei Sekunden, Gelb blitzt kurz auf, Grün leuchtet zwei Sekunden, dann geht es über Gelb wieder zurück zu Rot,

4.8(131)
397
LED-Polizeilicht
#4Anfänger

LED-Polizeilicht

Wie das Blaulicht am Polizeiauto: Die rote LED blitzt dreimal schnell hintereinander, dann blitzt die blaue dreimal, und das Ganze wiederholt sich ohne Pause. Du brauchst nur zwei LEDs und zwei Widers

4.7(103)
258
LED-Lauflicht
#5Mittel

LED-Lauflicht

Lichter, die nacheinander aufleuchten, als würden sie laufen. Der Arduino schaltet sechs LEDs einzeln ein; jede leuchtet kurz auf und geht wieder aus, sodass das Licht von vorn nach hinten wandert und

4.6(85)
207
LED Blinken mit ESP32
#103Anfänger

LED Blinken mit ESP32

Lehrt die grundlegende Verwendung von GPIO-Ausgängen mit ESP32. Wir erreichen einen Blinkeffekt, indem wir eine LED über einen digitalen Pin ein- und ausschalten. ESP32-Version des klassischen Blink-Projekts auf Arduino UNO; die grundlegenden Blink-Befehle in der Arduino-Umgebung bleiben gleich, aber die Pinbelegung und die GPIO-Pegel von 3,3 V des ESP32 unterscheiden sich von denen des Arduino UNO.

4.7(37)
99
ESP32 Ampel
#107Anfänger

ESP32 Ampel

Simulation einer echten Ampel mit 3 rot-gelb-grünen LEDs. Die Zeiten sind nahe an der realen Verkehrslogik: rot lang, gelb kurz, grün lang. Klassisches Beispiel für sequenzielle GPIO-Steuerung.

4.4(21)
44
Raspberry Pi Pico: Externe LED zum Leuchten bringen (Steckbrett)
#148Anfänger

Raspberry Pi Pico: Externe LED zum Leuchten bringen (Steckbrett)

Der nächste Schritt nach der integrierten LED des Pico: Eine externe LED an das Breadboard anschließen und über den GP14-Pin steuern. In diesem Projekt lernst du, wie du einen beliebigen universellen GPIO-Pin des Pico als Ausgang nutzen kannst, welche Polarität die LED hat (langes Bein = Anode/+, kurzes Bein = Kathode/–) und warum ein Strombegrenzungswiderstand (220 Ω) erforderlich ist. Wenn du den Widerstand weglässt, fließt zu viel Strom durch die LED und sie kann durchbrennen. Die Schaltung i

4.5(2)
7