Posts mit dem Label u8glib werden angezeigt. Alle Posts anzeigen
Posts mit dem Label u8glib werden angezeigt. Alle Posts anzeigen

Montag, 28. Juli 2014

Nokia 5110 DIY Display Shield

Das Nokia 5110 LCD 84x48 ist ein super dokumentiertes und günstiges Mini Display.
Meine habe ich über eBay und Amazon besorgt.
Ich nutze die 5 V Version, sieht bei mir blau aus und der Spannungsbereich steht auch auf der Leiterplatte.

Das Shield kann sehr einfach aufgebaut werden, da die 8 Pins direkt mit dem Arduino verbunden werden können, lediglich für die 4 LEDs der Hintergrundbeleuchtung habe ich an einen PWM Pin einen Transistor angeschlossen.


Die extra LED ist für Anzeige der DCF77 Impulse, wenn die RTC über den DCF77 Empfänger synchronisiert wird.



Es gibt einige Arduino Bibliotheken für dieses LCD, ich nutze u8glib von https://github.com/olikraus/u8glib

DIY Nokia 5110 Shield mit RTC und Nokia 5110 LCD
DIY Nokia 5110 Shield mit THDuino
kompletter Aufbau
kompletter Aufbau in Aktion als Uhr

 

Arduino Digital Clock mit Nokia 5110 Display

Nach Idee aus dem Blog von Pawel Kadluczka habe ich seinen Sketch minimal geändert, um die Zeit und das Datum von einem RTC anzuzeigen.




Adafruit GFX Support für PCD8544

Die Adafruit GFX Graphics Bibliothek hat auch Treiber Unterstützung für das Nokia 5110 (PCD8544).

Dienstag, 14. Januar 2014

Arduino DCF77 mit GLCD 128x64 Display

Projektbeschreibung

Ich liebe Uhren, besonders mechanische mit automatischem Aufzug, so viele Komplikationen, wie möglich, allerdings sollten die Uhren schon genau gehen, und wenn nicht, dann muss man ein Normal als Referenz zur Verfügung haben.
Nachdem ich seit meiner Ausbildung nur noch selten etwas mit Elektronik zu tun hatte, ist meine Leidenschaft mit einem Conrad Adventskalender, der elektronische Bauelemente in den Türen versteckt, dazu gibt es Idiotensichere Beschreibungen zu den kleinen Experimenten, hatte es für meine Töchter gedacht und dann doch selbst damit gebastelt, wieder geweckt worden.

Der Schritt zu einem Arduino und einer kleinen Werkstatt war dann nicht mehr so groß. Nach ein paar Lötübungen an einem Kapaztätsmesser und anderen Bausätzen, habe ich mit dem Arduino Digitale Uhren gebastelt.
RTC Modul an den Arduino angeschlossen, ein 1602 LCD Display genutzt, fertig war die DS1307 basierte Uhr! Unterschiedliche Displays versucht, und immer wieder eine Uhr gebaut.


DS1307 Shield und LCD1602 I2C Display
SD1602 Display aus einem alten Drucker mit einem DS1307 RTC Shield

Das Stellen der Uhren war mir mit der Zeit zu mühsam, es sollte doch möglich sein, eine Uhr mit einer anderen zu synchronisieren.
Natürlich sollte die Uhr, mit der man synchronisiert auch recht genau gehen.

Aus dem Haushalt kennt man ja die DCF77 Uhren, sehr genau und man freut sich, wenn mal wieder die Uhren umgestellt werden müssen und man mit diesen keine Arbeit hat.



Mit einem günstigem DCF77 Modul von Pollin und einem SN74HC14N zur Impulsformung konnte man schon ein schönes DCF77 Signal sehen. Für die 3V Versorgungsspannung habe ich die Idee mit der Masse-Erhöhung durch die vorgeströmten Dioden aufgegriffen, aber durch eine LED ersetzt.

200ms DCF77 Signal für logisch 1

Hardware

  • Pollin DCF77 Modul, hier eine sehr gute Beschreibung von Herrn Bernard Redemann zum DCF77 Empfänger
  • Arduino
  • LCD oder GLCD Display

Software

Ablauf

Erster Aufbau mit einem Breadboard, Versorgungsspannung OK, PON OK, Signal mit einer LED an einem OPV und mit DIY Scope überprüft. Signalpegel hat nicht für TTL gereicht, nach Einsatz des SN74HC14N habe ich ein sehr schönes DCF77 Signal bekommen.

Erster Aufbau mit dem Pollin DCF77 Modul und IIC Display
Der nächste Schritt bestand darin, ein DCF77 Shield zu bauen. Ohne Sinn und Verstand angefangen, zu löten und dabei nicht bemerkt, dass...
Erster Versuch DCF77 Shield
ich auf der Unterseite des Prototype Boards bestückt hatte! Super, funktioniert, kann man aber nicht als Shield nutzen. Außerdem hatte dieser Aufbau nur ein OPV zur Signalaufbereitung, hat beim UNO funktioniert, aber beim Leonardo nicht. Der Pegel war nicht TTL konform.

DCF77 board mit 2004 LCD
Wie man im Bild sieht, ist es dann doch gelungen, mit der u8g.setScale2x2(); Funktion, die den gewählten Font vergrößert.


Ergebnis: Arduino Leonardo mit DIY DCF77 Shield und 128x64 GLCD per SPI Schnittstelle  
Alles zusammengebaut, die beiden Displays angeschlossen, fertig! Eine genaue Uhr im Keller, jetzt fehlt das Gehäuse! Leider habe ich überhaupt kein Geschick mit Gehäusen...
Blick auf das DIY Shield für RTC Modul, IIC und SPI