Diese Lektion enthält folgende Themen:
1: Einführung in das ESP32 OLED -Display
Bevor wir uns zuerst weiter bewegen, müssen wir wissen, was für eine OLED (Organisches Licht emittierender Diode) Anzeige ist. OLED -Anzeigen werden als Alternative für LCD verwendet. OLED -LEDs werden verwendet, um leichte Displays auf OLED -Bildschirmen zu erzeugen. Der LCD -Bildschirm verwendet Hintergrundbeleuchtung, um seine Pixel zu beleuchten, während OLED -Displays ihre eigenen selbstemissionen LEDs haben. Es gibt Hunderte von selbstilluminierenden LEDs. Um Bilder und die Texthelligkeit dieser LEDs anzuzeigen, können Pixel von Pixel gesteuert werden.
Nun, wie wir einige Grundlagen im Zusammenhang mit OLED -Displays kennen. Der nächste Schritt besteht darin, ESP32 mit einem OLED -Anzeigemodul zu verdrahten.
2: Verkabelung OLED -Anzeigemodul zu ESP32
Das OLED -Display wird hauptsächlich mit zwei verschiedenen Kommunikationsprotokollen ausgestattet. Die beiden Protokolle sind I2C und SPI. Die serielle periphere Grenzfläche (SPI) ist im Allgemeinen schneller als I2C, aber wir haben I2C gegenüber dem SPI -Protokoll vorgezogen, da eine geringere Anzahl von Stiften erforderlich war.
Das folgende Bild zeigt das ESP32 -Verbindungsdiagramm mit 128 × 64 Pixel (0.96 ") OLED -Anzeige.
Unten finden Sie die PIN -Verbindungstabelle:
Sobald ESP32 mit einer OLED -Anzeige miteinander verbunden ist, wird der nächste Schritt in der Liste alle erforderlichen Bibliotheken für die ESP32 -Programmierung mit Arduino IDE installiert.
3: Installation der erforderlichen Bibliotheken
In Arduino IDE sind mehrere Bibliotheken erhältlich, um ESP32 mit einer OLED -Anzeige zu programmieren. Hier verwenden wir zwei Bibliotheken von Adafruit: SSD1306 und GFX Library.
Jetzt Arduino -Editor und gehen Sie zum Bibliotheksmanager und suchen Sie nach dem SSD1306 Bibliothek. Installieren Sie die SSD1306 -Bibliothek mit Adafruit aus der Suchleiste.
Alternativ kann man auch gehen: Skizze> Bibliothek einschließen> Bibliotheken verwalten
Die nächste Bibliothek, die wir installieren müssen, ist die GFX Bibliothek von Adafruit.
Nachdem beide Bibliotheken erfolgreich installiert wurden, besteht der nächste Schritt darin, die I2C -Adresse zu überprüfen, an der ESP32 verbunden ist.
4: Überprüfen Sie die I2C -Adresse der OLED -Anzeige
I2C steht für die integrierte Schaltungskommunikation. Mit I2C können wir mehrere Geräte über 2 Drähte interfesten. Während das Verbinden jedes i2C -Geräts eine separate I2C -Adresse verwenden muss. Diese Adresse reicht von 0 bis 127. Wenn wir beispielsweise zwei verschiedene I2C -Geräte haben, die dieselbe i2C -Adresse verwenden, können sie nicht mit derselben i2c -Linie miteinander verbunden werden.
Es ist wichtig, zuerst die I2C -Adresse zu überprüfen. So laden Sie den Code in der Artikelprüfung i2C mit Arduino IDE die in der Artikelprüfung i2C -Adresse angegebene Code hoch, um die I2C -Adresse des angeschlossenen OLED -Displays zu überprüfen.
Nach dem Hochladen von Code wird die folgende Ausgabe angezeigt. Hier in unserem Fall ist das OLED -Display unter der I2C -Adresse (0x3c) angeschlossen.
Wir werden die genannte I2C -Adresse für die OLED -Anzeige in Arduino Code verwenden.
5: OLED -Display Arduino IDE Beispiel
Nach der Installation von Bibliotheken können wir mehrere vorgeschriebene Beispiele in der Arduino-IDE sehen. Um die ESP32 -Schnittstelle zu testen, laden wir einen Beispielcode für die Anzeige SSD1306 hoch.
Gehe zu: Datei> Beispiele> Adafruit SSD1306> SSD1306_128X64_I2C
5.1: Code
Ein neues Fenster wird geöffnet, das uns den angegebenen Code zeigt. Dieser Code beleuchtet die OLED -Anzeige mit verschiedenen Mustern wie Sternen, Kreisen, Scrollentext und animierter Text.
5.2: Ausgabe
Der Ausgangsabschnitt zeigt eine Reihe verschiedener Muster auf der OLED -Anzeige an.
Jetzt haben wir das OLED -Display miteinander verbunden und es mit einem vorgeschriebenen Bibliotheksbeispiel getestet. Als nächstes werden wir mit ESP32 einen statischen Text auf OLED anzeigen.
6: Statischer Textdruck auf OLED -Anzeige mit ESP32
Die Adafruit -Bibliothek ermöglicht es uns, verschiedene Text mit mehreren Funktionen anzuzeigen. Hier zeigen wir statischen Text mit einem einfachen Code an.
6.1: Code
Offen.
#enthaltenDer Code importierte mit dem Importieren der erforderlichen Bibliotheken, die wir zuvor installiert haben. Zwei Bibliotheken sind die Draht- und Adafruit -Bibliothek. Mit Drahtbibliotheken können wir i2c verwenden, während Adafruit den geschriebenen Text auf dem Bildschirm anzeigt.
Der nächste folgende Befehl wird geschrieben:
Adafruit_ssd1306 display (screen_width, screen_height & draht, -1);Es enthält die BILDSCHIRMBREITE Und Screen_height Variablen. Mit diesen Variablen haben wir die Größe der OLED -Anzeige definiert. Hier verwenden wir ein 128 × 64 OLED -Display. Danach &Kabel Objekt wird für die Anzeige definiert.
Der letzte Parameter enthält (-1), Diese Anzeige, dass der von uns verwendete OLED -Bildschirm keine externe Reset -Taste enthält. Falls wir eine Reset -Taste auf der OLED -Anzeige haben. Wir werden diesen Parameter an einen GPIO -Pin übergeben. Sobald die Reset -Taste gedrückt wurde, zeigt der OLED -Bildschirm den Text an.
Als nächstes nach der Initialisierung der I2C -Kommunikation i2c -Adresse (0x3c) wird definiert, die wir früher mit i2c Scannercode gefunden haben.
In den letzten Codezeilen wird der zu druckene Zeichenfolge oder der zu druckende Text zusammen mit der Schriftgröße und der Anzeigefarbe definiert.
Nach dem Hochladen von Code werden wir die Ausgabe beobachten.
6.2: Ausgabe
Ausgabe repräsentiert die Zeichenfolge „LinuxHint.com ” und es wird mit einer Schriftgröße von 2 gedruckt.
Wir haben i2c OLED -Display -Schnittstellen mit ESP32 -Board abgeschlossen.
Abschluss
Ein OLED -Display ist eine großartige Möglichkeit, Ausgänge anzuzeigen, ohne dass ein serieller Monitor oder PC erforderlich ist. OLED -Displays sind mit zwei verschiedenen Protokollen I2C und SPI ausgestattet. I2C -OLED -Displays werden aufgrund einer geringeren Anzahl von Drähten bevorzugt. Diese Lektion enthält alle Schritte, die bei der Schnittstelle ESP32 mit I2C 0 erforderlich sind.96-Zoll-OLED-Display.