[NodeMCU] Binär Uhr – Eine etwas andere Uhr

Wie baut man eine Binär Uhr? Mit dieser Frage habe ich gestern und heute beschäftigt und habe eine einfache Anleitung dazu geschrieben. Ich habe im Code bewusst Stunden und Minuten unterschiedlich Programmiert, damit man auch was davon lernen kann. Der Code ist leicht zu bearbeiten und benutzt das WLAN-Internet um die richtige Uhrzeit zu bekommen.

 

Was benötigen wir dafür (Technisch):

  • 13 LEDS (WS2812B)
  • NodeMCU oder vergleichbares (D1 würde z.b. auch gehen)
  • Lötkolben / Kabel

 

Um nicht einfach LEDs auf den Tisch liegen zu haben, habe ich mit ein RIBBA-Bilderrahmen (danke Ikea) geschnappt und habe Papier mit meinen Design-Vorstellung reingelegt.
Dünnes Bastelholz hinter und Löcher an der richtigen Stellen und schon sieht es gut aus.

 

 

Schaltplan

 

 

 

 

D1 ist DATA – d.h. in der Mitte anzuschließen.
GND ist an Ground anzuschließen
und ich schließe das V+ direkt an 3v3 an.

Kommen wir zum anschließen der 13 LEDs. Beim Verkabeln und beim Löten achtet bitte auf den Pfeil der WS2812B. Ich habe direkt welche von der Rolle genommen, ihr könnt aber auch die einzelnen zusammenlöten.  Die erste WS2812b ist die erste Reihe der Stunden und sagt die Potenz der Stunden an (10er oder 20iger), dann geht es geschlängelt weiter.

Diese Reihenfolge ist wichtig, wenn ihr meinen Code nicht umschreiben wollt.

Programmieren

Ladet euch bitte NTPClient / Adafruit_NeoPixel aus der Bibliothek runter (Werkzeuge – Bibliotheken verwalten und nach NTPClient suchen / nach Adafruit_NeoPixel suchen). Sollte es nicht in der Bibliothek auftauchen, schaut bitte erstmal das Tutorial -> Vorbereitung für das Programmieren mit den NodeMCU.

Meinen Code findet ihr hier: [NodeMCU]BinaerUhr (112 Downloads)

Grüße gehen an Clyde raus. Danke für deine E-Mail anfrage.

Clyde hat mir dieses Bild geschickt. Er hat es noch weiter Optimiert (Sekundenanzeige). Vielen Dank! Habe mich sehr darüber gefreut.

Author: Admin

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.