ESP32 - LCD I2C
Dieses Tutorial zeigt Ihnen, wie Sie den ESP32 mit einem 16x2-LCD-I2C unter MicroPython verwenden. Sie lernen:
- Wie Sie ein LCD I2C mit einem ESP32 verbinden
- Wie Sie MicroPython-Code für den ESP32 schreiben, um Text auf dem LCD I2C anzuzeigen
- Wie Sie MicroPython-Code für den ESP32 schreiben, um Zahlen auf dem LCD I2C anzuzeigen
- Wie Sie MicroPython-Code für den ESP32 schreiben, um benutzerdefinierte Zeichen auf dem LCD I2C anzuzeigen

Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
| 1 | × | DIYables ESP32 Starter-Kit (ESP32 enthalten) | |
| 1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Kaufhinweis: Die meisten LCD I2C-Displays auf dem Markt sind 5V-Displays. Sie funktionieren möglicherweise mit diesem Board, aber das ist nicht sicher und kann das Board beschädigen. Wir empfehlen dringend, das oben empfohlene 3.3V LCD I2C-Display zu verwenden.
Überblick über LCD I2C 16x2
Das 16x2-LCD-I2C ist ein Bildschirm mit 16 Spalten und 2 Zeilen. Es verfügt über eine I2C-Schnittstelle und ein Potentiometer zum Einstellen des Bildschirmkontrasts.
Pinbelegung
Das LCD I2C verwendet eine I2C-Schnittstelle und hat 4 Pins.
- GND-Pin: mit GND (0 Volt) verbinden.
- VCC-Pin: zur Stromversorgung mit VCC (5 Volt) verbinden.
- SDA-Pin: überträgt das I2C-Datensignal.
- SCL-Pin: überträgt das I2C-Taktsignal.

LCD-Koordinaten
Das LCD I2C 16x2 umfasst 16 Spalten und 2 Zeilen. Die Nummerierung von Spalten und Zeilen beginnt bei 0.

Verdrahtungsdiagramm
- So verbinden Sie ESP32 und LCD I2C über ein Breadboard (Stromversorgung über USB-Kabel)

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
- So verbinden Sie ESP32 und LCD I2C über ein Breadboard (Stromversorgung über Vin-Pin)

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
- So verbinden Sie ESP32 und LCD I2C über ein Schraubklemmen-Breakout-Board (Stromversorgung über USB-Kabel)

- So verbinden Sie ESP32 und LCD I2C über ein Schraubklemmen-Breakout-Board (Stromversorgung über Vin-Pin)

| LCD I2C | ESP32 |
|---|---|
| VCC | Vin 5V |
| GND | GND |
| SDA | GPIO21 (SDA) |
| SCL | GPIO22 (SCL) |
ESP32 MicroPython-Code
Schnelle Schritte
So richten Sie Ihren MicroPython-Code auf dem ESP32 mit der Thonny IDE ein und führen ihn aus:
- Stellen Sie sicher, dass die Thonny IDE auf Ihrem Computer installiert ist.
- Vergewissern Sie sich, dass die MicroPython-Firmware auf Ihrem ESP32-Board installiert ist.
- Wenn Sie zum ersten Mal einen ESP32 mit MicroPython verwenden, lesen Sie die Anleitung ESP32 MicroPython Erste Schritte mit Schritt-für-Schritt-Anweisungen.
- Verbinden Sie das LCD-I2C-Display gemäß dem Schaltplan mit dem ESP32.
- 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-LCD-I2C” und finden Sie die von DIYables erstellte LCD-I2C-Bibliothek.
- Klicken Sie auf DIYables-MicroPython-LCD-I2C und dann auf die Schaltfläche Install, um die LCD-I2C-Bibliothek zu installieren.

- Kopieren Sie den bereitgestellten MicroPython-Code und fügen Sie ihn in den Editor von Thonny ein.
- Speichern Sie den Code auf Ihrem ESP32:
- Klicken Sie auf die Schaltfläche Save oder drücken Sie Ctrl+S.
- Wählen Sie im Speicherdialog MicroPython device.
- Nennen Sie die Datei main.py.
- Klicken Sie auf die grüne Schaltfläche Run (oder drücken Sie F5), um das Skript auszuführen.
- Sehen Sie sich das Ergebnis auf dem LCD-Display an.

Mehr mit dem LCD
Benutzerdefinierte Zeichen auf dem LCD anzeigen
Um Sonderzeichen oder Symbole (wie ein Herz oder einen Angry Bird) auf einem LCD anzuzeigen, benötigen Sie einen Zeichengenerator. Der Grund dafür ist, dass die Funktion lcd.print() nur Standard-ASCII-Zeichen anzeigen kann.
Das LCD 16x2 kann 32 Zeichen anzeigen, angeordnet in 16 Positionen pro Zeile über 2 Zeilen. Jedes Zeichen besteht aus 40 Pixeln, die in 8 Zeilen und 5 Spalten organisiert sind.
Der Zeichengenerator erstellt ein Zeichen (40 Pixel). Sie müssen nur diese Schritte befolgen:
Auf dem Bildschirm angezeigtes Ergebnis:

Mehrere benutzerdefinierte Zeichen auf dem LCD anzeigen
Wir können bis zu 8 Sonderzeichen erstellen (von 0 bis 7). So erstellen und zeigen Sie drei dieser Zeichen an.
Auf dem LCD-Bildschirm angezeigtes Ergebnis:

Zusammenfassung: So verwenden Sie benutzerdefinierte Zeichen auf einem LCD
- Binärcode erstellen: Verwenden Sie das bereitgestellte Tool, um den Binärcode für Ihr benutzerdefiniertes Zeichen zu erzeugen.
- Code notieren: Kopieren Sie den Binärcode aus dem Tool.
- Erstellen Sie ein benutzerdefiniertes Zeichen und legen Sie es an einer Position von 0 bis 7 ab
- Zeigen Sie ein benutzerdefiniertes Symbol auf dem LCD-Display an.
Fehlerbehebung beim LCD I2C
Wenn Sie Probleme haben, Text auf Ihrem LCD-I2C-Bildschirm anzuzeigen, versuchen Sie Folgendes:
- Helligkeit einstellen: Drehen Sie das Potentiometer auf der Rückseite des LCD, um die Helligkeit zu erhöhen oder zu verringern.
- I2C-Adresse prüfen: Die I2C-Adresse des LCD kann je nach Hersteller variieren. Übliche Adressen sind 0x27 und 0x3F. Probieren Sie diese Adressen aus, um zu sehen, ob eine davon funktioniert. Falls nicht, können Sie den folgenden I2C-Scanner-Code auf dem ESP32-Board ausführen, um die richtige I2C-Adresse zu ermitteln.
Das in der Shell unten in Thonny angezeigte Ergebnis: