I2C LCD mit eSptop 10 unter Verwendung von Micropython und Thonny IDE

I2C LCD mit eSptop 10 unter Verwendung von Micropython und Thonny IDE

ESP32 ist eine Mikrocontroller -Karte, mit der mehrere Hardware und Sensoren interpretieren können. LCD und OLED sind großartige Möglichkeiten, der erforderlichen Ausgabe eine grafische Darstellung zu zeigen und zu vermitteln. Dieses Tutorial umfasst die LCD -Display -Schnittstelle mit ESP32 -Boards verwendet Mikropython In Thonny Ide.

Was ist Mikropython

Micropython ist in C geschrieben und es ist eine Software -Implementierung für Python 3, die hauptsächlich auf eingebettete Systemanwendungen abzielt. Die Python 3 -Standardbibliotheken kann jedoch nicht vollständig ausführen. Micropython ist eine Variante von Python und speziell für eingebettete Systeme ausgelegt. Heute werden wir Micropython auf einem ESP32 -Board mit Thonny IDE implementieren.

Bevor wir uns vorwärts bewegen. Herunterladen Thonny Ide klicken Sie hier.

Was ist Flüssigkristallanzeige (LCD)

LCD- oder Flüssigkristallanzeige ist ein Gerät, das durch Anwenden einer variablen Spannung auf eine Flüssigkeitskristallschicht arbeitet, die Änderungen der optischen Eigenschaften von LCD induziert.

Heute werden wir ein 16 × 2 LCD mit ESP32 -Board abdecken. Andere LCD -Größen sollten jedoch auch funktionieren. LCDs mit einer Größe von 16 Cross 2 können 16 Zeichen innerhalb einer einzelnen Zeile anzeigen und in diesem speziellen Modell sind insgesamt zwei Zeilen vorhanden. LCD enthält eine alphanumerische Punktmatrixanzeige, die insgesamt 224 Zeichen anzeigen kann.

Wir können diesen LCD auch direkt mit ESP32 verwenden, wie wir es mit Arduino getan haben. Um dies zu vermeiden, werden wir ein I2C -Modul mit LCD verwenden, für das nur zwei Drähte erforderlich sind, die SDA und SCL sind.

Darüber hinaus wird I2C LCD mit einem Potentiometer ausgestattet, mit dem die LCD -Helligkeit ohne externe variable Widerstand zur Steuerung der LCD -Helligkeit eingestellt werden kann.

I2C Pin Funktion
GND Erdungsnadel
VCC Power Pin
SDA PIN für den Datenaustausch verwendet
Scl Pin, der für die Synchronuhr verwendet wird

Teile, die zur Schnittstellen von LCD mit ESP32 erforderlich sind

Bevor wir uns weiter bewegen, empfehlen wir Ihnen, die folgenden Teile für dieses Tutorial zu sammeln:

  • ESP32 DOIT DEVKIT FREIGER
  • 16x2 LCD
  • I2C Serienschnittstelle
  • Brotbrett
  • Jumperdrähte

Verkabelung des LCD mit dem ESP32

Die Verkabelung eines LCD mit ESP32 ist einfach. Schließen Sie einfach den SDA- und SCL -Pin am GPIO -Pin 21 bzw. 22 an.

Im Folgenden finden Sie die PIN -Konfiguration als Referenz:

Vorbereitung der Thonny IDE für ESP32

Als Hardware ist bereit, den Code jetzt zu nehmen, um Thonny IDE zu öffnen und den Code hochzuladen. Bevor wir ein I2C -Gerät anbinden, müssen wir die I2C -Adresse dieses jeweiligen Geräts kennenlernen. I2C -Geräte enthalten eine eindeutige Adresse für sie. Für viele Geräte lautet die Standardadresse für I2C 0x27 wo 0x die zeigt die verhexen Format der Zahl.

Es wird empfohlen, jedes Mal die I2C -Adresse zu erhalten, während ein neues Gerät angeht.

Die LCD -Adresse erhalten

Verbinden Sie die ESP32 -Karte mit PC und öffnen Sie Thonny IDE. Geben Sie den folgenden Code in den Thonny IDE -Editor ein. Laden Sie den Code in der ESP32 -Karte mit der Wiedergabetaste oben hoch.

Code

Dieser Code ist für Pin 21 (SDA) und Pin 22 (SCL) geschrieben. Wenn Sie eine andere Karte wie ESP8266 verwenden, ersetzen Sie die Pin -Nummer entsprechend.

Importmaschine
sdapin = machine.Pin (21) #For ESP32
sclpin = machine.Pin (22)
I2C = Maschine.I2C (SDA = SDAPIN, SCL = SCLPIN, Freq = 10000)
Geräte = i2c.Scan()
Wenn Len (Geräte) == 0:
drucken ("kein I2C -Gerät !"))
anders:
print ('I2C -Geräte gefunden:', Len (Geräte))
Für Geräte in Geräten:
print ("an Adresse:", Hex (Gerät))

Ausgang

Die folgende Ausgabe erscheint hier im Shell -Anschluss. Wir können sehen, dass die I2C -Adresse für LCD 0x27 ist.

I2C LCD Micropython Libraries

Zum Schnittstellen von ESP32 mit I2C LCD sind zwei verschiedene Mikropython -Bibliotheken erforderlich. Wir werden diese beiden Bibliotheken verwenden: LCD_API.PY und I2C_LCD.py. Kopieren Sie diese beiden Bibliotheken aus dem angegebenen Link und erstellen Sie zwei neue Dateien in Thonny IDE. Speichern Sie diese beiden Bibliotheken in ESP32 oder jeweils den jeweiligen Boards, wie in Bild unten gezeigt.

Schritt 1: Erstellen Sie zwei neue Dateien und fügen Sie beide Bibliothekscode separat ein. Um es in ESP32 -Board zu speichern, gehen Sie zu: Datei> speichern als

Schritt 2: Ein Popup wird angezeigt, das Micropython -Gerät ausgewählt hat. Stellen Sie sicher, dass die ESP32 -Karte mit dem PC angeschlossen ist.

Schritt 3: Schreiben Sie den Dateinamen der Bibliotheken und klicken Sie auf OK.

Notiz: Denken Sie daran, behalten Sie den gleichen genauen Namen wie LCD_API.py Und I2C_LCD.py.

Speichern Sie die beiden Bibliotheksdateien und erstellen Sie eine neue Datei mit Namen hauptsächlich.py Wo wir den Hauptmikropythoncode für I2C LCD schreiben werden.

Schritt 4: Sobald alle drei Dateien erstellt wurden, können wir sie im Thonny IDE -Editor sehen. Wir können die Bibliotheksdatei schließen und uns einfach öffnen hauptsächlich.py zum Schreiben und Hochladen von I2C LCD -Code.

Text auf LCD anzeigen

Schreiben Sie den unten angegebenen Code in Thonny IDE und klicken Sie auf die genannte Wiedergabetaste, um Code auf ESP32 -Board hochzuladen.

Code

Das Schreiben des angegebenen Code im Fenster Thonny IDE -Editor hilft bei der Schnittstelle I2C LCD mit ESP32 -Board.

Importmaschine
vom Maschinenimportstift, Softi2c
von LCD_API importieren Sie LCDAPI
von i2c_lcd import i2clcd
Zum Zeitpunkt des Imports
I2c_addr = 0x27
TotalRows = 2
TotalColumns = 16
I2C = Softi2c (SCL = Pin (22), SDA = Pin (21), Freq = 10000) #I2C für ESP32
#i2c = i2c (scl = pin (5), sda = pin (4), freq = 10000) #I2C für ESP8266
LCD = I2CLCD (I2C, I2C_ADDR, Totalrows, TotalColumns)
während wahr:
LCD.putstr ("LinuxHint.com ")
Schlaf (10)
LCD.klar()

Der obige Code wurde mit dem Machungsmodul mit Softi2c und Pin -Klasse gestartet. Wir haben auch ein Schlafmodul hinzugefügt, um eine Verzögerung zu verleihen. Als nächstes haben wir die beiden wichtigen Bibliotheken angerufen LCD_API.py Und I2C_LCD.py Wir haben gerade im ESP32 -Ordner gespeichert.

Nächster I2C -Adresse 0x27 wird danach definiert, dass wir die Gesamtzeilen und Spalten im LCD hier in unserem Fall 16 × 2 definieren. Wenn Sie eine andere Bildschirmgröße verwenden, ändern Sie die Zeilen und Spalten.

So zeigen Sie den Text eine Zeichenfolge an LinuxHint.com ist definiert.

Ausgang

In der Ausgabe sehen wir die Zeichenfolge auf dem LCD -Bildschirm definiert.

Abschluss

Micropython ist eine Sprache, die speziell für eingebettetes System entwickelt wurde. Mit zwei Bibliotheken LCD_API.py Und I2C_LCD.py Wir können das i2c LCD leicht mit ESP32 interfegen. Für das Programmieren von ESP32 mit Micropython wird Thonny IDE verwendet. Dieser Artikel ist eine Anleitung zum Schnittstellen von LCD mit ESP32.