Wie Hinzufügen und das LCD-Display für Ihr Arduino Uhr Projekttest

Sobald Sie programmiert haben und getestet das schlagende Herz des Arduino Uhr, müssen Sie einen Weg, um die Zeit anzuzeigen, ohne den seriellen Monitor. Hier wird die LCD-Anzeige kommt.

Dieser ist ziemlich billig und es verwendet die sehr häufig Hitachi HD44780 Treiber. Diese LCD-Module sind leicht zu erkennen, weil sie 16 Pins in einer einzigen Zeile und verwenden, was als eine bekannt ist parallel-Schnittstelle.

Aus diesem Grund verwendet das Arduino mehrere digitale Stifte, um die Anzeige Arbeit zu machen. Dieser Prozess ist etwas kompliziert, aber zum Glück gibt es eine Arduino Bibliothek für sie schon, dass es sehr leicht zu senden Text auf dem Bildschirm, ohne sich Gedanken über die Low-Level-Befehle macht, die sonst erforderlich wären.

Mit 4-Bit-Modus zum Anzeigen von Text, der nur sieben Arduino digitalen Pins benötigt, um die Anzeige zu steuern. Sie müssen auch Energie für die LCD selbst und für die Hintergrundbeleuchtung. Schließlich steuern Sie den Kontrast des Displays durch das Potentiometer.

Schließen Sie die folgenden Schritte aus:

  1. Fügen Sie Ihren LCD-Display und Potentiometer auf Ihrem Steckbrett.

  2. Schließen Sie die Strom- und Masse-Pins auf dem LCD, die Pins sind 15 bzw. 16.

  3. Schließen Sie den Boden und Energie für Ihr LCD-Hintergrundbeleuchtung, die sind Pins 1 und 2.

  4. Verbinden Sie die Steuerstifte für Ihren LCD auf die digitalen Stifte auf dem Arduino.

    16x2 LCD Display PinArduino Digital-Pin
    1 (GND Schiene auf Versuchsaufbau)
    2 (+ 5V-Schiene auf Versuchsaufbau)
    32
    43
    54
    65
    7 (keine Verbindung)
    8 (keine Verbindung)
    9 (keine Verbindung)
    10 (keine Verbindung)
    1111
    12 (GND Schiene auf Versuchsaufbau)
    1312
    14 (mittlere Stift Potentiometer)
    15 (auf + 5V-Schiene auf Versuchsaufbau)
    16 (GND Schiene auf Versuchsaufbau)
  5. Verbinden Sie nun das Potentiometer, die im Display des Kontrast steuert.

    Der Mittelstift des Potentiometers gehen sollte 14 der LCD-Anzeige an Pin und die anderen zwei Stifte des Potentiometers sind mit Strom und Masse verbunden ist, in beliebiger Reihenfolge.

    bild0.jpg

Nun, da Sie Ihren LCD angeschlossen haben, ist es Zeit, es etwas interessanter machen! Zuerst müssen Sie einen Code zu laden, um sicherzustellen, dass der LCD richtig funktioniert. Dieser Code ist der erste Teil Ihrer Wecker Skizze. Sie bauen auf sie alle anderen Funktionen für Ihre Uhr hinzuzufügen.

Sie können alle auf einmal den Code für die Uhr zu kopieren, sondern halten es in Abschnitte hinzufügen, wie hier beschrieben. Das macht es einfach, um Probleme zu beheben und die Uhr in Stufen zu testen, wie Sie es bauen.

Geben Sie den folgenden Code in die IDE, oder laden Sie es von der Begleit-Website und laden Sie sie auf Ihre Arduino:

// Kapitel 7: Arduino Wecker // Ein Wecker, der die Adafruit Industries DS1307 RTC Breakout Board // und ein 16x2 Parallel LCD Display # include // I2C-Draht-Bibliothek für die Kommunikation mit dem DS1307 RTC # verwendet umfassen "RTClib.h" // Datum und Zeitfunktionen für die DS1307 RTC verbunden # // Anzeigefunktionen für die LCD-DisplayRTC_DS1307 rtc- // erstellen Sie eine Echtzeituhr namens rtcLiquidCrystal lcd umfassen (12, 11, 5, 4, 3, 2) - // Neues LCD genannt lcdvoid setup () {Wire.begin () - // die Kommunikation für die LCDrtc.begin Aktiviert () - // die RTClcd.begin Aktiviert (16, 2) - // Aktiviert die LCDlcd.print ( "Es ist lebendig ! ") - es ist workingdelay (500) // eine Nachricht drucken, auf dem LCD-zentriert, um zu bestätigen, - // Warten sie einen Moment, damit wir itlcd.clear () lesen - // löschen des LCD} void loop () {}

Wenn dieser Code hochgeladen wird, sollte die Meldung # 147-It ist lebendig! # 148- für eine halbe Sekunde auf dem LCD angezeigt. Wenn Sie nichts sehen, oder, wenn das Display Zeichen verstümmelt hat, haben Sie etwas falsch angeschlossen. Zurück zum Verdrahtungstabelle.

Die ersten drei Zeilen dieses Codes sind die Bibliotheken, die für Ihre Uhr benutzt werden werden. Die erste umfasst die I2C-Bibliothek, die die Kommunikation mit dem RTC-Modul ermöglicht. I2C, ausgesprochen # 147-Augen-squared cee # 148- oder # 147-Augen-zwei-cee, # 148- ist eine Kommunikationsverbindung für das Gespräch zwischen integrierten Schaltungen, in diesem Fall Ihre Arduino und der Chip Dallas DS1307.

Es ist auch nützlich für die mit vielen anderen Zubehör, wie zB GPS-Module kommunizieren. Die nützliche Sache über I2C ist, dass es erfordert nur zwei Stifte, plus Energie und Masse. Diese Bibliothek ermöglicht die Kommunikation recht einfach mit den meisten I2C-Geräte.

Die nächste Bibliothek ist die RTCLib. Es ist eine Version einer Bibliothek von JeeLab geschrieben und modifiziert von Adafruit Industries mit dem RTC-Modul kommuniziert. Es ist für das Erhalten der Zeit aus dem RTC-Modul verwendet, und verwendet die I2C-Bibliothek zu, dass die Kommunikation zu verhandeln.

Die letzte Bibliothek ist das LCD-Display-Bibliothek, die die parallele Kommunikation mit dem Display verarbeitet. Anders als bei der RTC-Bibliothek, die Sie manuell hinzugefügt, ist es als Standard-Bibliothek in der Arduino Software Distribution enthalten.

Nach dem Einbinden der Bibliotheken erstellt der Code zwei Objekte: ein Takt Objekt rtc und ein Liquidcrystal-Objekt namens lcd genannt. Dieses Objekt hat Parameter, die mit dem LCD, die digitalen Pins der Arduino zu kommunizieren bestimmen verwendet.

Nachdem diese Objekte zu schaffen, die Konfiguration() Funktion bekommt Dinge geht. Der I2C, RTCLib und der LCD, die alle aktiviert sein müssen, was durch die durchgeführt wird Start() Funktion. Das lcd.begin () Funktion nimmt zwei Parameter, die Anzahl der Spalten und die Anzahl der Zeilen, die auf dem Display sind 16 und 2. Danach eingestellt wurde, Sie Nachrichten auf den Bildschirm schreiben kann einfach durch die Verwendung von lcd.print () Funktion:

lcd.print (# 147- Es ist lebendig # 148 -!) -

Es gibt zwei Leerzeichen am Anfang dieses Textes, die die Mitte der 11-Zeichen-Nachricht innerhalb der 16-Zeichenraum in der oberen Zeile. Sie steuern normalerweise die Position des Textes mit der setCursor () Funktion, aber es wird hier nicht benötigt - eine weniger Anweisung einfügen Konfiguration().

Nach einer kurzen Verzögerung, so dass Sie sehen, dass es auf dem Bildschirm ausgegeben wurde, die lcd.clear () Funktion wischt den gesamten Text, bereit für die gehen Hauptschleife ().

Menü