LCD Modul 16x02 I2C: Unterschied zwischen den Versionen
(32 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 19: | Zeile 19: | ||
| Spannungsversorgung || 5 V DC | | Spannungsversorgung || 5 V DC | ||
|- | |- | ||
| Rücklicht || | | Rücklicht/Text || Blau/Weiß | ||
|- | |- | ||
| Kontrast || einstellbar über das Potentiometer des I<sup>2</sup>C-Interfaces | | Kontrast || einstellbar über das Potentiometer des I<sup>2</sup>C-Interfaces | ||
Zeile 44: | Zeile 44: | ||
{| class="wikitable" | {| class="wikitable" | ||
|+ Tabelle 3: Einstellungen des I2C Modul HW-601 | |+ Tabelle 3: Pinbelegung und Einstellungen des I2C Modul HW-601 | ||
! style=" | ! Pin # | ||
! style=" | ! colspan="2" | Bezeichnung | ||
! Typ | |||
! Funktion | |||
|- | |||
| 1 ||!! style="background-color: black;" | || GND ||Versorgung || Spannungsversorgung, GND | |||
|- | |||
| 2 ||!! style="background-color: red;" | || VCC ||Versorgung || Spannungsversorgung, +5 V | |||
|- | |||
| 3 ||!! style="background-color: yellow;" | || SDA || I/O|| A4, Serielle Datenleitung | |||
|- | |||
| 4 ||!! style="background-color: green;" | || SCL || CLK|| A5, Serielle Taktleitung | |||
|- | |||
| A0 || || A0 ||Lötverbindung || Optionale Adressänderung A0 (vgl. Tabelle 4) | |||
|- | |||
| A1 || || A1 ||Lötverbindung || Optionale Adressänderung A1 (vgl. Tabelle 4) | |||
|- | |- | ||
| | | A2 || || A2 ||Lötverbindung || Optionale Adressänderung A2 (vgl. Tabelle 4) | ||
|- | |- | ||
| | | Beleuchtung || || ||Steckbrücke|| gesetzt: Hintergrundbeleuchtung an, offen: Hintergrundbeleuchtung aus | ||
|- | |- | ||
| | | Kontrast || || ||Potentiometer || Kontrastanpassung | ||
|} | |} | ||
edes I²C Modul hat eine sogenannte „HEX Adresse“. Über diese Adresse reagiert das I²C-Modul auf die Daten, die vom Arduino auf dem Datenbus an genau diese Adresse gesendet werden. Viele I²C-LCDs haben auch die gleiche HEX-Adresse. Das bedeutet, dass beim Verwenden von zwei Displays beide Displays auf die gesendeten Daten vom Arduino-Board reagieren würden. Man könnte also auf zwei Displays keine unterschiedlichen Daten darstellen. | |||
Die HEX-Adresse kann bei dem Display mit Hilfe der A0, A1 und A2 Lötstellen jedoch verändert werden. Im unveränderten Zustand sind alle drei Lötstellen nicht verbunden. Je nach Kombination, welche der Stellen man mit einer Lötstelle überbrückt, sind also 8 verschiedene Adressen möglich. Abhängig vom Display Typ kann diese Adresse anfangs 0x27 oder 0x3F sein (kann mit dem Adressen „Scanner“ herausgefunden werden, dazu später mehr). | |||
Tabellen 4 zeigt die HEX Adressen je nach verlöteten Stellen ( | = verbunden, : = nicht verbunden). Standardeinstellung ist 0x27. | |||
{| class="wikitable" | {| class="wikitable" | ||
|+ Tabelle 4: Einstellungen des I2C Modul HW-601 | |+ Tabelle 4: Einstellungen des I2C Modul HW-601 <big><big>③</big></big> | ||
! style="font-weight: bold;" | | ! style="font-weight: bold;" | A0 | ||
! style="font-weight: bold;" | | ! style="font-weight: bold;" | A1 | ||
! style="font-weight: bold;" | A2 | |||
! style="font-weight: bold;" | HEX Adresse | |||
! style="font-weight: bold;" | HEX Adresse | |||
|- | |||
|: || : || : || '''0x27''' || 0x3F | |||
|- | |||
|| || : || : || 0x26 || 0x3E | |||
|- | |||
|: || | || : || 0x25 || 0x3D | |||
|- | |||
|| || | || : || 0x24 || 0x3C | |||
|- | |||
|: || : || | || 0x23 || 0x3B | |||
|- | |- | ||
| | || || : || | || 0x22 || 0x3A | ||
|- | |- | ||
| | |: || | || | || 0x21 || 0x39 | ||
|- | |- | ||
| | || || | || | || 0x20 || 0x38 | ||
|} | |} | ||
Zeile 79: | Zeile 110: | ||
== Tutorial == | == Tutorial == | ||
* [https://funduino.de/nr-19-i%c2%b2c-display Funduino Anleitung - | * [https://funduino.de/nr-19-i%c2%b2c-display Funduino Anleitung - I<sup>2</sup>C Display] | ||
* [https://funduino.de/nr-06-zwei-i%c2%b2c-displays-gleichzeitig Funduino Anleitung - zwei | * [https://funduino.de/nr-06-zwei-i%c2%b2c-displays-gleichzeitig Funduino Anleitung - zwei I<sup>2</sup>C Displays an einem Controller] | ||
== Library == | |||
*[https://www.arduino.cc/reference/en/libraries/liquidcrystal-i2c/ LiquidCrystal I2C von Frank de Brabander, Marco Schwartz (v1.1.2)] | |||
*[https://github.com/johnrickman/LiquidCrystal_I2C LiquidCrystal Arduino library for the DFRobot I2C LCD displays] | |||
== Video == | == Video == | ||
{{#ev:youtube|https://youtu.be/PWmn5U86RtA| 600 | |Arduino Tutorial - 12. I2C Display (LCD)|frame}} | {{#ev:youtube|https://youtu.be/PWmn5U86RtA| 600 | |Arduino Tutorial - 12. I2C Display (LCD)|frame}} | ||
{{#ev:youtube|https://youtu.be/BajgkmIGN80| 600 | |Quicktip: I²C-Adressen schnell und einfach herausfinden!|frame}} | |||
---- | ---- | ||
→ zurück zum Hauptartikel: [[Arduino]] | → zurück zum Hauptartikel: [[Arduino]] |
Aktuelle Version vom 4. Juli 2023, 12:48 Uhr
Autoren: Prof. Schneider
Einleitung
Das I2C 1602 LCD Modul besteht aus einem zweizeiligen Display mit je 16 Zeichen pro Zeile und einem I2C Modul HW-061 auf der Rückseite. I2C benötigt einen Takt- (SCL) und eine Datenverbindung (SDA) sowie +5VDC und GND. Über den I2C-Bus kann das Display mit nur 4 Anschlusskabeln betrieben werden.
Technische Übersicht
Eigenschaft | Daten |
---|---|
I2C Adressbereich | 0x20 bis 0x27 (Standardadresse: 0x27) |
Spannungsversorgung | 5 V DC |
Rücklicht/Text | Blau/Weiß |
Kontrast | einstellbar über das Potentiometer des I2C-Interfaces |
Größe | 80 mm x 36 mm x 20 mm |
Sichtbereich | 66 mm x 16 mm |
I2C Modul HW-601
Abb. 2 zeigt die Einstellmäglichkeiten des I2C Modul HW-601. Tabelle 2 erläutert die Einstellfunktionen, Tabelle 3 die Pinbelegung und Einstelloptionen und Tabelle 4 erläutert die Anpassung der HEX-Adresse des Moduls ()
# | Funktion |
---|---|
① | Hintergrundbeleuchtung |
② | Kontrastanpassung |
③ | Anpassung der I2C-Adresse |
Pin # | Bezeichnung | Typ | Funktion | |
---|---|---|---|---|
1 | GND | Versorgung | Spannungsversorgung, GND | |
2 | VCC | Versorgung | Spannungsversorgung, +5 V | |
3 | SDA | I/O | A4, Serielle Datenleitung | |
4 | SCL | CLK | A5, Serielle Taktleitung | |
A0 | A0 | Lötverbindung | Optionale Adressänderung A0 (vgl. Tabelle 4) | |
A1 | A1 | Lötverbindung | Optionale Adressänderung A1 (vgl. Tabelle 4) | |
A2 | A2 | Lötverbindung | Optionale Adressänderung A2 (vgl. Tabelle 4) | |
Beleuchtung | Steckbrücke | gesetzt: Hintergrundbeleuchtung an, offen: Hintergrundbeleuchtung aus | ||
Kontrast | Potentiometer | Kontrastanpassung |
edes I²C Modul hat eine sogenannte „HEX Adresse“. Über diese Adresse reagiert das I²C-Modul auf die Daten, die vom Arduino auf dem Datenbus an genau diese Adresse gesendet werden. Viele I²C-LCDs haben auch die gleiche HEX-Adresse. Das bedeutet, dass beim Verwenden von zwei Displays beide Displays auf die gesendeten Daten vom Arduino-Board reagieren würden. Man könnte also auf zwei Displays keine unterschiedlichen Daten darstellen.
Die HEX-Adresse kann bei dem Display mit Hilfe der A0, A1 und A2 Lötstellen jedoch verändert werden. Im unveränderten Zustand sind alle drei Lötstellen nicht verbunden. Je nach Kombination, welche der Stellen man mit einer Lötstelle überbrückt, sind also 8 verschiedene Adressen möglich. Abhängig vom Display Typ kann diese Adresse anfangs 0x27 oder 0x3F sein (kann mit dem Adressen „Scanner“ herausgefunden werden, dazu später mehr).
Tabellen 4 zeigt die HEX Adressen je nach verlöteten Stellen ( | = verbunden, : = nicht verbunden). Standardeinstellung ist 0x27.
A0 | A1 | A2 | HEX Adresse | HEX Adresse |
---|---|---|---|---|
: | : | : | 0x27 | 0x3F |
| | : | : | 0x26 | 0x3E |
: | | | : | 0x25 | 0x3D |
| | | | : | 0x24 | 0x3C |
: | : | | | 0x23 | 0x3B |
| | : | | | 0x22 | 0x3A |
: | | | | | 0x21 | 0x39 |
| | | | | | 0x20 | 0x38 |
Datenblätter
- Datenblatt: I2C 1602 Serial LCD Module
- Datenblatt: Serielle Schnittstelle I2C fur LCD Displays (HW-061)
Tutorial
Library
- LiquidCrystal I2C von Frank de Brabander, Marco Schwartz (v1.1.2)
- LiquidCrystal Arduino library for the DFRobot I2C LCD displays
Video
→ zurück zum Hauptartikel: Arduino