.. note::
Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten.
**Warum beitreten?**
- **Expertenunterstützung**: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams.
- **Lernen & Teilen**: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern.
- **Exklusive Vorschauen**: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken.
- **Spezialrabatte**: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.
- **Festliche Aktionen und Gewinnspiele**: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil.
👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [|link_sf_facebook|] und treten Sie heute bei!
.. _1.1.7_py:
1.1.7 I2C LCD1602
======================
Einführung
------------------
Das LCD1602 ist ein Zeichen-Flüssigkristall-Display, das 32
(16*2) Zeichen gleichzeitig anzeigen kann.
Benötigte Komponenten
------------------------------
Für dieses Projekt benötigen wir die folgenden Komponenten.
.. image:: ../img/list_i2c_lcd.png
Es ist definitiv praktisch, ein ganzes Set zu kaufen, hier ist der Link:
.. list-table::
:widths: 20 20 20
:header-rows: 1
* - Name
- ARTIKEL IN DIESEM KIT
- LINK
* - Raphael Kit
- 337
- |link_Raphael_kit|
Sie können diese auch separat über die untenstehenden Links erwerben.
.. list-table::
:widths: 30 20
:header-rows: 1
* - KOMPONENTENBESCHREIBUNG
- KAUF-LINK
* - :ref:`cpn_gpio_board`
- |link_gpio_board_buy|
* - :ref:`cpn_breadboard`
- |link_breadboard_buy|
* - :ref:`cpn_wires`
- |link_wires_buy|
* - :ref:`cpn_i2c_lcd`
- |link_i2clcd1602_buy|
Schaltplan
---------------------
============ ========
T-Board Name physical
SDA1 Pin 3
SCL1 Pin 5
============ ========
.. image:: ../img/schematic_i2c_lcd.png
Experimentelle Verfahren
-----------------------------
**Schritt 1:** Bauen Sie den Schaltkreis.
.. image:: ../img/image96.png
**Schritt 2**: Richten Sie I2C ein (siehe :ref:`i2c_config`. Wenn Sie I2C bereits eingerichtet haben, überspringen Sie diesen Schritt.)
**Schritt 3:** Verzeichnis wechseln.
.. raw:: html
.. code-block::
cd ~/raphael-kit/python/
**Schritt 4:** Ausführen.
.. raw:: html
.. code-block::
sudo python3 1.1.7_Lcd1602.py
Nachdem der Code ausgeführt wurde, können Sie ``Greetings!, From SunFounder`` auf dem LCD sehen.
.. note::
* Wenn Sie den Fehler ``FileNotFoundError: [Errno 2] No such file or directory: '/dev/i2c-1'`` erhalten, müssen Sie :ref:`i2c_config` konsultieren, um das I2C zu aktivieren.
* Wenn der Fehler ``ModuleNotFoundError: No module named 'smbus2'`` auftritt, führen Sie bitte ``sudo apt install python3-smbus2`` aus.
* Wenn der Fehler ``OSError: [Errno 121] Remote I/O error`` erscheint, bedeutet dies, dass das Modul falsch verdrahtet ist oder das Modul defekt ist.
* Wenn der Code und die Verdrahtung in Ordnung sind, aber das LCD immer noch keinen Inhalt anzeigt, können Sie das Potentiometer auf der Rückseite drehen, um den Kontrast zu erhöhen.
**Code**
.. note::
Sie können den untenstehenden Code **Modifizieren/Zurücksetzen/Kopieren/Ausführen/Stoppen**. Aber zuerst müssen Sie zum Quellcode-Pfad wie ``raphael-kit/python`` gehen. Nachdem Sie den Code geändert haben, können Sie ihn direkt ausführen, um den Effekt zu sehen.
.. raw:: html
.. code-block:: python
import LCD1602
import time
def setup():
LCD1602.init(0x27, 1) # init(slave address, background light)
LCD1602.write(0, 0, 'Greetings!')
LCD1602.write(1, 1, 'From SunFounder')
time.sleep(2)
def destroy():
LCD1602.clear()
if __name__ == "__main__":
try:
setup()
except KeyboardInterrupt:
destroy()
**Code-Erklärung**
.. code-block:: python
import LCD1602
Diese Datei ist eine Open-Source-Datei zur Steuerung von I2C LCD1602. Sie ermöglicht uns die einfache Verwendung von I2C LCD1602.
.. code-block:: python
LCD1602.init(0x27, 1)
Die Funktion initialisiert das I2C-System mit dem vorgegebenen Gerätesymbol. Der erste Parameter ist die Adresse des I2C-Geräts, die über den Befehl i2cdetect ermittelt werden kann (siehe Anhang für Details). Die Adresse von I2C LCD1602 ist in der Regel 0x27.
.. code-block:: python
LCD1602.write(0, 0, 'Greetings!')
In dieser Funktion steht 'Greetings!!' für den Text, der in Zeile 0+1, Spalte 0+1 auf dem LCD angezeigt wird.
Jetzt können Sie „Greetings!! Von SunFounder“ auf dem LCD sehen.
Phänomen-Bild
--------------------------
.. image:: ../img/image97.jpeg