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.
Das Schaltbild unten zeigt dieselben Verbindungen ohne Steckbrett:

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.
Kein Steckbrett? Dieselbe Schaltung lässt sich auch ohne verdrahten, wie unten gezeigt:

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.
Wenn Sie kein Steckbrett verwenden, verdrahten Sie es so:

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:
