Das LCDisplayI2C-Modul zusammen mit dem Esp32UnoBoard (bzw. Esp32Module) bietet
dem Benutzer eine einfache Möglichkeit zur Darstellung von Texten.
Die Verbindung und Programmierung des ESP32 mit dem LCDisplay erfolgt dabei über den I2C-Bus.
Eigenschaften des LCDisplayI2Cs:
• Darstellung von 20 Zeichen in 4 Zeilen
• andere Display-Typen bieten weitere Darstellungsmöglichkeiten (1x16 / 2x16 / ...)
• I2C-2Draht-Interface
• Hardware-einstellbare Helligkeit / Kontrast
• Umfangreiche (Rickman-)Library, welche hier angepasst verwendet wird
Nachteile des LCDisplayI2Cs:
• LCDisplay-(Rickman-)Library(vgl. weiter unten) "bremst" schnelle Rechungen aus!
• keine Grafik-Programmierung
• kein Touch-Screen
Vorsicht bei der Benutzung der LCD-Library für den Arduino-Uno:
I2C Liquid Crystal Displays
Diese Library ist nicht kompatibel zum Esp32!!!
Rickman-Library: LiquidCrystal_I2C
Alternativ verwenden wir die Library github - johnrickman : LiquidCrystal_I2C
bzw. benutzen/strukturieren/ergänzen/umbennen den Inhalt der beiden Kern-Dateien "LiquidCrystal_I2C.cpp" und "LiquidCrystal_I2C.h"
aus der Original-Library und erhalten so die neuen Bibliotheks-Dateien: "LCDisplayI2C.cpp" und "LCDisplayI2C.h" .
Demo-Projekt: Esp32LCDisplayI2C
Das Demo-Programm main.cpp des VSCode-Projekts "Esp32LCDisplayI2C"
zeigt die exemplarische Funktionsweise der Ansteuerung des LCDisplays:
• Einbinden der Header-Datei "#include "LCDisplayI2C.h"
• Initialisierung in "void setup(void)" und einmalige vierzeilige Welcome-Ausgabe
• Periodische Main-Loop: Löschen des Displays
• und spalten-versetzte Ausgabe von "Hello World!"
• download: 2207152010_Esp32LCDisplayI2C_02V02.zip
• entpacken / umbenennen des Hauptverzeichnisses: "Esp32LCDisplayI2C"
• Start / Öffnen von VisualStudioCode und
• Integration des Projekt-Hauptverzeichnisses "Esp32LCDisplayI2C"
• nach dem erfolgreichen Compile & Upload startet die Programm-Ausführung
• im Display erscheinen "Welcome"- und "Hello World"-Ausgaben.