{{ :wiki:arduino:lcd1602.jpg?200|LiquidCristal LCD Modul}} ====== LiquidCristal LCD Modul ====== Die Aduino LiquidCrystal-Bibliothek wurde im Wesentlichen für LCD-Displays mit dem Hitachi HD44780-Chipsatz (oder einem kompatiblen Chipsatz) entwickelt. Die Bibliothek steuert die Anzeigen im 4-Bit- oder 8-Bit-Modus. Die LiquidCrystal-Module sind in der Regel * 2 Zeilen / 16 Zeichen (1602) * 4 Zeilen / 20 Zeichen (2004) geeignet für die Anzeige. Mit LCDs kann die Kommunikation entweder parallel oder in Serial erfolgen. Die parallele Lösung erfordert kein I²C-Erweiterunsmodul und ist schneller als der serielle Modus, belegt aber jedoch mehr E/As auf der Arduino-Karte. {{:wiki:arduino:lcd_serial_vs_parallel.png?400|parallele oder serielle Kommunikation mit dem LCD}} Für die serielle Kommunikation ist ebenfalls ein I²C-Statusmodul erforderlich, auf der Arduino-Seite sind jedoch weniger E / A erforderlich. Über diesen Kommunikationskanal sind mehrere LCD-Displays und [[de:arduino:comm_example#arduino_i_c_kommunikation|andere I²C-montierbare Einheiten]] gleichzeitig verfügbar. ===== Zuweisung des LiquidCrystal LCD-Modulanschlusses ===== ^Pin^Signal^externe Verbindung^Funktion| |1|Vss|Stromversorgung|Grund| |2|Vdd|Stromversorgung|Stromversorgung| |3|V0|Stromversorgung|Kontrasteinstellung| |4|RS|MPU|Auswahlzeichen Registeren| |5|R/W|MPU|Auswahlzeichen schreiben / lesen| |6|E|MPU|Betriebsfreigabezeichen| |7-10|DB0-DB3|MPU|Vier bidirektionale Buskanäle mit drei Zuständen. Inaktiv für 4-Bit-Übertragung. \\ Aduino verwendet diese Ausgänge normalerweise nicht für LCDs.| |11-14|DB4-DB7|MPU|Vier bidirektionale Buskanäle mit drei Zuständen.| |15|LED+|táp|Hintergrundbeleuchtung LED +| |16|LED-|táp|Hintergrundbeleuchtung LED -| MPU: Steuereinheit, z.B. Arduino ===== Parallele Kommunikation mit dem LCD ===== {{:wiki:arduino:lcd_alap.png?300|Parallele Kommunikation mit dem LCD}} Ich verwende keine parallele Kommunikation, da sie zu viele Ports in der UNO belegt. Ich bevorzuge stattdessen die serielle. In jedem Fall enthält die folgende Bibliothek eine Lösung für beide Versionen: https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads/ ===== Serielle (I²C) Kommunikation mit dem LCD ===== {{anchor:arduino_i2c_lcd}} {{:wiki:arduino:lcd_i2c.png?300|LiquidCristal LCD és I²C Modul}} ==== Verdrahtung ==== Arduino GND ↔ GND \\ Arduino 5V ↔ 5V \\ Arduino A4 ↔ SDA \\ Arduino A5 ↔ SCL \\ ==== I²C-Adressierung ==== Wenn der I²C-LCD-Wandler über einen Adress-Jumper verfügt, kann dieser wie folgt eingestellt werden: ^A0^A1^A2^HEX Adress| | 1 | 1 | 1 | 0x27 | | 0 | 1 | 1 | 0x26 | | 1 | 0 | 1 | 0x25 | | 0 | 0 | 1 | 0x24 | | 1 | 1 | 0 | 0x23 | | 0 | 1 | 0 | 0x22 | | 1 | 0 | 0 | 0x21 | | 0 | 0 | 0 | 0x20 | Bei LCDs lautet die Standard-I²C-Adresse normalerweise 0x27 oder 0x3F. Um die I²C-Adresse zu ermitteln, möchten Sie möglicherweise den I²C-Scanner nach dem Konfigurieren der Konfiguration ausführen. ==== IBS ==== Mein Tier ist die empfohlene Reihenfolge, natürlich können Sie davon abweichen, aber es kann helfen: - Montage des I²C-Moduls auf dem LCD. Achten Sie auf die Reihenfolge der Beine, oft sind die Module in verschiedene Richtungen nummeriert. - Anschluss von Arduino und I²C-Modul - Laden Sie den I²C-Scanner auf Ihr Arduino herunter und testen Sie ihn, um das Modul zu finden. - Es gibt mehrere Bibliotheken für LCDs, für mich ist dies passiert: https://www.arduinolibraries.info/libraries/liquid-crystal-i2-c - Laden Sie das aktuelle (neueste) Verzeichnis herunter und installieren Sie es - Beim Hochladen eines LCD-Controllers auf das Arduino müssen die Portparameter, der Typ (z. B. 1602) und die I²C-Adresse eingestellt werden. ==== Quellen ==== https://arduino-info.wikispaces.com/LCD-Blue-I2C