Bemerkung

Hallo, willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Vertiefen Sie sich mit anderen Enthusiasten in die Welt von Raspberry Pi, Arduino und ESP32.

Warum beitreten?

  • Expertenunterstützung: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams.

  • Lernen & Teilen: Tauschen Sie Tipps und Tutorials aus, um Ihre Fähigkeiten zu verbessern.

  • Exklusive Vorschauen: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken.

  • Sonderangebote: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.

  • Festliche Aktionen und Gewinnspiele: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil.

👉 Bereit, mit uns zu erkunden und zu kreieren? Klicken Sie auf [here] und treten Sie heute bei!

2.5 I2C-Schnittstelle

In dieser Lektion werden wir die Fähigkeiten der I2C-Schnittstelle erkunden, eine zentrale Technologie für die Kommunikation zwischen Mikrocontrollern und verschiedenen Peripheriegeräten. Unser Fokus liegt darauf, die I2C-Schnittstelle des ESP32 zu nutzen, um ein LCD1602-Modul zur Zeichenanzeige anzusteuern. Sie lernen, wie Sie das LCD-Modul initialisieren, Anzeigeparameter konfigurieren und Textdaten zur Anzeige auf dem Bildschirm senden. Ob Sie benutzerdefinierte Nachrichten, Sensordaten oder interaktive Menüs anzeigen möchten, die Beherrschung des LCD1602 wird Ihre Fähigkeit erweitern, informative und interaktive Anzeigen zu erstellen.

Verfügbare Pins

Hier ist eine Liste der für dieses Projekt verfügbaren Pins auf dem ESP32-Board.

Verfügbare Pins

Verwendungsbeschreibung

IO21

SDA

IO22

SCL

Benötigte Komponenten

In diesem Projekt benötigen wir die folgenden Komponenten.

KOMPONENTEN-BESCHREIBUNG

KAUFLINK

ESP32 WROOM 32E

BUY

ESP32 Kamera-Erweiterung

-

Mehrere Verbindungskabel

BUY

I2C LCD1602

BUY

Schaltplan

../_images/circuit_2.6_lcd.png

Verdrahtung

../_images/2.6_i2clcd1602_bb.png

Code

  1. Laden Sie diesen Code herunter oder kopieren Sie ihn direkt in die Arduino IDE.

Bemerkung

Wenn dieses Programm hochgeladen ist, zeigt das I2C LCD1602 für 3 Sekunden die Willkommensnachricht „Hello, Sunfounder!“ an. Danach zeigt der Bildschirm das Label „COUNT:“ und den Zählwert, der jede Sekunde um eins erhöht wird.

Bemerkung

Wenn der Code und die Verdrahtung korrekt sind, das LCD jedoch keine Inhalte anzeigt, können Sie das Potentiometer auf der Rückseite einstellen, um den Kontrast zu erhöhen.

Wie funktioniert es?

Durch den Aufruf der Bibliothek LiquidCrystal_I2C.h können Sie das LCD problemlos ansteuern.

#include <LiquidCrystal_I2C.h>

Bibliotheksfunktionen:

  • Erstellt eine neue Instanz der Klasse LiquidCrystal_I2C, die ein bestimmtes LCD darstellt, das an Ihr Arduino-Board angeschlossen ist.

    LiquidCrystal_I2C(uint8_t lcd_Addr,uint8_t lcd_cols,uint8_t lcd_rows)
    
    • lcd_Addr: Die Adresse des LCDs, standardmäßig 0x27.

    • lcd_cols: Das LCD1602 hat 16 Spalten.

    • lcd_rows: Das LCD1602 hat 2 Zeilen.

  • Initialisieren Sie das LCD.

    void init()
    
  • Schalten Sie die (optionale) Hintergrundbeleuchtung ein.

    void backlight()
    
  • Schalten Sie die (optionale) Hintergrundbeleuchtung aus.

    void nobacklight()
    
  • Schalten Sie die LCD-Anzeige ein.

    void display()
    
  • Schalten Sie die LCD-Anzeige schnell aus.

    void nodisplay()
    
  • Anzeige löschen, Cursorposition auf null setzen.

    void clear()
    
  • Setzen Sie die Cursorposition auf Spalte und Zeile.

    void setCursor(uint8_t col,uint8_t row)
    
  • Text auf dem LCD anzeigen.

    void print(data,BASE)
    
    • data: Die anzuzeigenden Daten (char, byte, int, long oder string).

    • BASE (optional): Die Basis, in der Zahlen angezeigt werden sollen.

      • BIN für binär (Basis 2)

      • DEC für dezimal (Basis 10)

      • OCT für oktal (Basis 8)

      • HEX für hexadezimal (Basis 16).