5.11.1 Flüssigkristallanzeige

Ein I2C LCD1602 setzt sich aus einem LCD1602 und einem I2C-Modul zusammen. Das LCD1602 kann zur Anzeige von Zeichen, Zahlen usw. verwendet werden, benötigt jedoch viele Pins des Hauptcontrollers. Nach der Konfiguration eines I2C-Moduls sind nur noch 2 I/O-Pins erforderlich, um dieses LCD1602 anzusteuern.

Sehen wir uns nun an, wie dieses I2C LCD1602 funktioniert.

Benötigte Komponenten

Für dieses Projekt benötigen wir folgende Komponenten:

Es ist definitiv praktisch, ein ganzes Set zu kaufen, hier ist der Link:

Name

ARTIKEL IN DIESEM KIT

LINK

3 in 1 Starter Kit

380+

3 in 1 Starter Kit

Sie können sie auch separat über die untenstehenden Links kaufen.

KOMPONENTENBESCHREIBUNG

KAUF-LINK

SunFounder R3 Platine

BUY

Jumper-Kabel

BUY

I2C LCD1602

BUY

Schaltplan

../_images/circuit_7.1_lcd1602.png

Verdrahtung

../_images/lcd_bb.jpg

Bemerkung

Die SDA- und SCL-Pins des R3-Boards entsprechen den Pins A4 und A5.

Code

Bemerkung

  • Öffnen Sie die Datei 5.11.liquid_crystal_display.ino unter dem Pfad 3in1-kit\basic_project\5.11.liquid_crystal_display.

  • Oder kopieren Sie diesen Code in die Arduino IDE.

  • Hier wird die LiquidCrystal I2C-Bibliothek verwendet, die Sie aus dem Library Manager installieren können.

    ../_images/lib_liquidcrystal_i2c.png

Nach erfolgreichem Hochladen des Codes werden Sie „SunFounder“, „Hallo Welt“ auf dem I2C LCD1602 sehen.

Bemerkung

Wenn der Code und die Verdrahtung korrekt sind, das LCD aber dennoch nichts anzeigt, können Sie das Potentiometer auf der Rückseite drehen.

Wie funktioniert das?

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

#include "LiquidCrystal_I2C.h"

Bibliotheksfunktionen:

LiquidCrystal_I2C(uint8_t lcd_Addr,uint8_t lcd_cols,uint8_t lcd_rows)

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

  • lcd_AddR: Die Adresse des LCD ist standardmäßig auf 0x27 eingestellt.

  • lcd_cols: Das LCD1602 verfügt über 16 Spalten.

  • lcd_rows: Das LCD1602 verfügt über 2 Zeilen.

void init()

Initialisiert das LCD.

void backlight()

Schaltet die (optionale) Hintergrundbeleuchtung ein.

void nobacklight()

Schaltet die (optionale) Hintergrundbeleuchtung aus.

void display()

Schaltet das LCD-Display ein.

void nodisplay()

Schaltet das LCD-Display schnell aus.

void clear()

Löscht die Anzeige und setzt die Cursorposition auf Null.

void setCursor(uint8_t col,uint8_t row)

Setzt die Cursorposition auf col,row.

void print(data,BASE)

Gibt Text auf dem LCD aus.

  • data: Die auszugebenden Daten (char, byte, int, long oder string).

  • BASE (optional): Die Basis, in der Zahlen gedruckt 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).