Home > Technologie > Mehr LCD s zusammenarbeiten ...

Mehr LCD s zusammenarbeiten ...

0
Advertisement

Mehr LCD s zusammenarbeiten ...

Mehr LCD s zusammenarbeiten ...

Mehr LCD s zusammenarbeiten ...

Jemals hatte das Problem, dass Sie so viele Informationen auf einem LCD-Display platzieren wollten, dass alles zusammengespannt aussah?

Sie können versuchen, zu scrollen Daten, machen verschiedene Seiten auf sie (indem Sie die Auslese ändern durch einen Klick auf eine Schaltfläche), können Sie versuchen, ein größeres LCD kaufen ... Sie können sogar die Text-LCD mit einem Grafik-LCD ändern. Auf dieser können Sie auch Text mit einer kleineren Schriftart anzeigen.

Aber dann muss ich meine Brille benutzen ...

Die LCDs, die ich verwende, sind mit einem I2C Rucksack. Diese sind leicht zu finden, billig und vielseitiger.

Und, wie alle I2C-Geräte, haben sie eine Adresse.

Anstatt die LiquidCrystal.h-Bibliothek in Arduino verwenden zu können, benötigen Sie die LiquidCrystal_I2C.h-Bibliothek.

Sie können diese Bibliothek finden Sie hier: https: //github.com/fdebrabander/Arduino-LiquidCrys ...

Der große Vorteil: nur 4 ...

Schritt 1: Eine kleine Hardware ...

Mehr LCD s zusammenarbeiten ...

Mehr LCD s zusammenarbeiten ...

Mehr LCD s zusammenarbeiten ...

Also, dies ist der "Rucksack" finden Sie auf dem LCD, oder können separat verkauft werden. Sie finden sie überall zu günstigen Preisen.

Das Herzstück davon ist ein IC von TI, der PCF 8574. Dies ist ein Port-Expander: leicht gesteckt: Sie verbinden den IC mit einer I2C-Leitung, adressieren ihn und BAM, Sie haben 8 zusätzliche IN / Outputs. Da es vielseitig einsetzbar ist, werden drei der Adressleitungen "out" gesetzt. Dies bedeutet, dass Sie ihm Ihre eigene Adresse geben können, und Sie können bis zu 8 dieser Geräte.

Der Rucksack dann.

Diese hat eine feste (vorprogrammierte) Adresse von 0X27 (hex) oder 39 in Dezimalzahl.

Auf dem Tisch sehen Sie hier, dass alle Adressen auf HIGH gesetzt sind. Wenn man sich das zweite Bild des "Rucksacks" ansieht, sieht man deutlich die A0, A1 und A2 herausgebracht.

Wenn Sie diese Brücke überbrücken, legen Sie die entsprechende Adresszeile auf LOW.

Folgen Sie einfach dem Tisch, und Sie finden die Adresse, die Sie in Ihrer Skizze benötigen.

Schritt 2: Programmierung

Mehr LCD s zusammenarbeiten ...

Mehr LCD s zusammenarbeiten ...

Mehr LCD s zusammenarbeiten ...

Zuerst betrachten wir die Programmierung für die ursprüngliche, ohne veränderte Adresse.

Arduino verwenden Sie diese Zeilen "mit ihm reden":

#include <LiquidCrystal_I2C.h> (die Bibliothek aufrufen)

Dann st das I2C Gerät:

LiquidCrystal_I2C lcd (0x27,20,4);

Das sagt der Hardware, dass es ein I2C Gerät gibt, auf Adresse 0x27. Die Bibliothek sagt, es hat 20 Zeichen in vier Zeilen.

Die Bibliothek verwendet die Befehle lcd.print, lcd.clear und so weiter.

Sobald wir weitere Anzeigen erhalten wollen, müssen wir die Adressen ändern. Sie können sehen, wie, in den oben genannten Bildern. Nur kurz die entsprechenden Adresse Punkte, und du bist fertig.

Und dann müssen Sie das Programm auch ändern.

LiquidCrystal_I2C lcd (0x23,20,4); // die LCD-Adresse auf 0x23 für 20 Zeichen und 4 Zeilen einstellen
LiquidCrystal_I2C LCD1 (0x27,16,2); // die zweite LCD - Adresse 0x27 für einen 16 Zeichen gesetzt, 2line Display.

So machen Sie zwei verschiedene "Instanzen" für zwei verschiedene Displays.

Wenn Sie weiter im Programm (oder der Skizze) arbeiten, müssen Sie sich bewusst sein, dass Ihre Befehle zur rechten Anzeige gehen.

In diesem Fall: lcd.print schreibt auf der ersten Anzeige, die veränderte ein und lcd 1 .print sendet Daten an die zweite.

Schritt 3: Ein kleiner Test ...

Mehr LCD s zusammenarbeiten ...

Mehr LCD s zusammenarbeiten ...

#include <wire.h>

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd (0x23,20,4); // die LCD-Adresse auf 0x23 für 20 Zeichen und 4 Zeilen einstellen

LiquidCrystal_I2C lcd1 (0x27,16,2); // Setzen Sie die LCD-Adresse auf 0x27 für eine 16-Zeichen- und 2-zeilige Anzeige

Void setup () {

Lcd.init (); // lcd initialisieren

Lcd1.init (); // Drucken Sie eine Nachricht an die LCD-Anzeige.

LCD-Rücklicht();

Lcd1.backlight ();

Lcd.setCursor (3,0);

Lcd.print ( "Beim Ausführen");

Lcd.setCursor (2,1);

Lcd.print ( "außerhalb des LCD-Raums");

Lcd.setCursor (5,2);

Lcd.print ( "auf einem I2C");

Lcd.setCursor (2,3);

Lcd.print ( "Sie können nur ...");

Lcd1.setCursor (0,0);

Lcd1.print ( "Zweite hinzufügen");

Lcd1.setCursor (4,1);

Lcd1.print ( "auf I2C :-)"; aufrechtzuerhalten.

Void Schleife () {}

So ... Das ist es ...

Ich dachte daran, als ich eine Wetterstation machte. Ich mag die Zeit und das Datum zu sehen. Wie Sie auf dem "ursprünglichen" LCD sehen konnten, waren alle Daten ein bisschen vollgestopft, also versuchte ich, mehr Anzeigen zu verwenden.

Und stellen Sie sich die Möglichkeiten vor! Mit einem Maximum von 8 LCDs können Sie fast einen ganzen Roman auf ihm setzen :-)

Ich hoffe, dass Sie dieses kleine instructable genossen haben, hoffen, dass Sie etwas mit ihm tun können!

Sehen Sie / lesen Sie später!

Marc

Related Reading