ESP32 - LED-Matrix
Dieses Tutorial zeigt Ihnen, wie Sie den ESP32 mit LED-Matrix-Anzeigemodulen verwenden. Im Einzelnen lernen Sie:
- Wie Sie den ESP32 mit einer 8x8-LED-Matrix verbinden
- Wie Sie den ESP32 mit einer 32x8-LED-Matrix verbinden
- Wie Sie den ESP32 programmieren, um Text auf der LED-Matrix anzuzeigen
- Wie Sie den ESP32 programmieren, um Text auf der LED-Matrix scrollen zu lassen
- Wie Sie den ESP32 programmieren, um benutzerdefinierte Zeichen auf der LED-Matrix anzuzeigen
Anschließend können Sie den Code ganz einfach für andere LED-Matrizen wie die 16x8- oder 64x8-LED-Matrix anpassen.

Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables ESP32 Starter-Kit (ESP32 enthalten) | |
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Überblick über LED Matrix

Es gibt verschiedene Arten von LED-Matrizen, aber die MAX7219-basierte LED-Matrix wird häufig mit dem ESP32 verwendet. Die MAX7219-basierte LED-Matrix bietet folgende Eigenschaften:
- Die Grundeinheit einer LED-Matrix ist ein Block.
- Jeder Block enthält eine 8x8-LED-Matrix (64 LEDs) und einen MAX7219-Treiber.
- Sie können LED-Matrizen aus einem einzelnen Block oder durch Verketten mehrerer Blöcke aufbauen.
- Es gibt vormontierte LED-Matrizen mit mehreren Blöcken, z. B. in 4-in-1- oder 8-in-1-Konfigurationen.
- Alternativ können Sie einzelne Blöcke kaufen und sie zu einer Matrix Ihrer gewünschten Größe verbinden, wobei Sie 1-in-1-, 4-in-1- oder 8-in-1-LED-Matrizen miteinander verketten können.
- Die Größe der LED-Matrix muss in Ihrem ESP32-Code angegeben werden.
Pinbelegung

Eine LED-Matrix besteht aus einem oder mehreren Abschnitten. Jeder Abschnitt hat zwei Arten von Anschlüssen:
- Gruppe der Eingangspins:
- VCC: Mit 5V verbinden.
- GMD: Mit GND verbinden.
- DIN: Dies ist der Daten-Pin. Mit dem SPI-MOSI-Pin des ESP32 verbinden.
- CS: Chip Select. Mit einem beliebigen digitalen Pin des ESP32 verbinden.
- CLK: Takt-Pin. Mit dem SPI-CLK-Pin des ESP32 verbinden.
- Gruppe der Ausgangspins:
- VCC: Mit VCC des nächsten Moduls verbinden.
- GND: Mit GMD des nächsten Moduls verbinden.
- DOUT: Datenausgang. Mit dem DIN-Pin des nächsten Moduls verbinden.
- CS: Mit CS des nächsten Moduls verbinden.
- CLK: Mit CLK des nächsten Moduls verbinden.
Verdrahtungsdiagramm
Da die Anzeige viel Strom verbraucht (bis zu 1A bei maximaler Helligkeit), sollte sie nicht über den 5V-Pin des Arduino versorgt werden. Verwenden Sie stattdessen ein externes 5V-Netzteil, sodass sowohl der Arduino als auch die LED-Matrix vom selben 5V-Adapter versorgt werden.
Wenn die LED-Matrix nur einen Block hat:
- Verbinden Sie die Gruppe der Eingangspins mit dem ESP32.
- Schließen Sie die Gruppe der Ausgangspins nicht an.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Wenn die LED-Matrix bereits aus mehreren Abschnitten zusammengesetzt ist:
- Verbinden Sie die Gruppe der Eingangspins mit dem ESP32.
- Schließen Sie die Gruppe der Ausgangspins nicht an.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Wenn Sie die LED-Matrix aus einzelnen Komponenten zusammensetzen:
- Verbinden Sie die Eingangspins des ersten Blocks mit dem ESP32.
- Verbinden Sie die Ausgangspins jedes Blocks mit den Eingangspins des nächsten Blocks.
- Schließen Sie die Ausgangspins des letzten Blocks nicht an.

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
ESP32 - LED-Matrix-Code
Der folgende ESP32-MicroPython-Code ist für eine 32x8-FC-16-LED-Matrix-Anzeige mit vier Blöcken gedacht. Er kann jedoch für andere Größen wie 8x8, 16x8, 64x8 und weitere angepasst werden.
Schnelle Schritte
Bitte befolgen Sie diese Anweisungen Schritt für Schritt:
- Stellen Sie sicher, dass die Thonny IDE auf Ihrem Computer installiert ist.
- Stellen Sie sicher, dass die MicroPython-Firmware auf Ihrem ESP32-Board installiert ist.
- Wenn Sie zum ersten Mal einen ESP32 mit MicroPython verwenden, lesen Sie das Tutorial ESP32 MicroPython Erste Schritte mit ausführlichen Anweisungen.
- Verbinden Sie das ESP32-Board gemäß dem Schaltplan mit der LED-Matrix.
- Verbinden Sie das ESP32-Board über ein USB-Kabel mit Ihrem Computer.
- Öffnen Sie die Thonny IDE auf Ihrem Computer.
- Gehen Sie in der Thonny IDE zu Tools Options.
- Wählen Sie im Tab Interpreter aus dem Dropdown-Menü MicroPython (ESP32) aus.
- Stellen Sie sicher, dass der richtige Port ausgewählt ist. Die Thonny IDE erkennt ihn normalerweise automatisch, eventuell müssen Sie ihn aber manuell auswählen (z. B. COM12 unter Windows oder /dev/ttyACM0 unter Linux).
- Navigieren Sie in der Thonny IDE zu Tools Manage packages.
- Suchen Sie nach “DIYables-MicroPython-LED-Matrix” und finden Sie die von DIYables erstellte LED-Matrix-Bibliothek.
- Klicken Sie auf DIYables-MicroPython-LED-Matrix und dann auf die Schaltfläche Install, um die LED-Matrix-Bibliothek zu installieren.

- Kopieren Sie den obigen Code und fügen Sie ihn in den Editor der Thonny IDE ein.
- Speichern Sie das Skript auf Ihrem ESP32-Board:
- Klicken Sie auf die Schaltfläche Save oder verwenden Sie die Tasten Ctrl+S.
- Im Speicherdialog sehen Sie zwei Bereiche: This computer und MicroPython device. Wählen Sie MicroPython device.
- Speichern Sie die Datei als main.py.
- Klicken Sie auf die grüne Schaltfläche Run (oder drücken Sie F5), um das Skript auszuführen. Das Skript wird ausgeführt.
- Sehen Sie sich die LED-Matrix an. Sie sieht wie folgt aus:

Die tatsächliche Leuchtanzeige sieht viel besser aus als auf dem Bild. Die Kamera kann die echten Farben der Beleuchtung nicht genau wiedergeben.
ESP32 MicroPython LED-Matrix-Code – Lauftext
Wenn Ihre Nachricht zu lang für die LED-Matrix-Anzeige ist, können Sie sie über den Bildschirm scrollen lassen. Der folgende MicroPython-Code für den ESP32 zeigt, wie Sie eine Nachricht auf der LED-Matrix-Anzeige scrollen lassen.
Schnelle Schritte
- Kopieren Sie den bereitgestellten ESP32-MicroPython-Code und fügen Sie ihn in den Editor von Thonny ein.
- Speichern Sie den MicroPython-Code auf Ihrem ESP32-Board.
- Klicken Sie auf die grüne Schaltfläche Run (oder drücken Sie F5), um den Code auszuführen.
- Sehen Sie sich die LED-Matrix an. Der Scroll-Effekt sieht wie folgt aus:
ESP32 MicroPython LED-Matrix - Benutzerdefinierte Zeichen
Um Sonderzeichen oder Symbole wie ein Herz oder einen Angry Bird auf einer LED-Matrix-Anzeige darzustellen, müssen Sie den Zeichengenerator verwenden.
Der Zeichengenerator erstellt ein Zeichen (64 Pixel). Sie müssen nur diese Schritte befolgen:
Der folgende ESP32-MicroPython-Code zeigt drei benutzerdefinierte Zeichen auf der 32x8-LED-Matrix an:
Schnelle Schritte
- Kopieren Sie den bereitgestellten ESP32-MicroPython-Code und fügen Sie ihn in den Editor von Thonny ein.
- Speichern Sie den MicroPython-Code auf Ihrem ESP32-Board.
- Klicken Sie auf die grüne Schaltfläche Run (oder drücken Sie F5), um den Code auszuführen.
- Sehen Sie sich die LED-Matrix an. Sie sieht wie folgt aus:
