Inhaltsverzeichnis:

DIY Taschenuhr - Gunook
DIY Taschenuhr - Gunook

Video: DIY Taschenuhr - Gunook

Video: DIY Taschenuhr - Gunook
Video: Kingmaker - The Change of Destiny Episode 10 | Arabic, English, Turkish, Spanish Subtitles 2024, Juli
Anonim
DIY Taschenuhr
DIY Taschenuhr
DIY Taschenuhr
DIY Taschenuhr

In dieser geschäftigen Welt ist es ein Muss, die Zeit zu verfolgen, um eine bessere Leistung zu erzielen und ein Hobby zu sein, warum nicht ein Gerät entwickeln, um die Zeit zu verfolgen. Dank der Technologie gibt es Geräte namens 'watch', aber! Wenn Sie Dinge selbst machen, ist das Vergnügen anders, also werde ich Ihnen in diesem Instructable zeigen, wie ich diese kleine kleine Uhr gemacht habe.

Schritt 1: Die Idee

Die Idee
Die Idee

Die Idee ist, es so einfach wie möglich zu halten und minimale Komponenten zu verwenden.

  1. Ein Display zur Zeitanzeige.
  2. Eine Komponente, um die Zeit zu verfolgen.
  3. Eine weitere Komponente, um sich Zeit zu nehmen und sie zur Anzeige zu senden.
  4. Und eine Stromquelle.

// Flussdiagramm der Idee

Schritt 2: Das Gehirn

Das Gehirn
Das Gehirn

Das Brain sollte auf jeden Fall ein Mikrocontroller sein, da er die Vorteile einer einfachen Programmierung und einer geringeren Größe hat. Zuerst dachte ich, attiny85 würde perfekt passen, aber dann machten es die begrenzten GPIO-Pins schwierig, damit zu arbeiten. Dann habe ich mich für Atmega328p entschieden, das im tqfp-Paket verfügbar ist, aber mit vernachlässigbarer Erfahrung beim Löten eines so kleinen Pakets entschied ich mich für Arduino Pro Mini. Obwohl dieses Board offiziell im Ruhestand ist, aber Open Source ist, sind sie immer noch verfügbar.

Schritt 3: Anzeige

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Ein 0,91 Zoll OLED-Display-Modul wäre eine gute Wahl für das Display, was es moderner aussehen lässt, aber das Problem ist der Stromverbrauch, im Durchschnitt verbraucht es 20 mA, was für den Akku heftig wäre. Als ich mich fragte, was ich als Display verwenden sollte, fand ich dieses DVD-Display herumliegen. Dieses Display verfügt über eine vierstellige Siebensegmentanzeige mit einigen komplementären LEDs. Alle LEDs sind als gemeinsame Kathode konfiguriert. Um sie anzusteuern, müssen wir die Methode namens Mutliplexing verwenden, die nichts anderes ist, als jede Ziffer nacheinander so schnell anzusteuern, dass es aussieht, als würden alle gleichzeitig leuchten. Auch Atmega328 kann bis zu 20mA sinken, so dass der Bedarf an Transistoren verringert wird. Jede LED funktioniert ziemlich gut mit 100 Ohm bei 3,3 V.

Schritt 4: RTC

Echtzeituhr
Echtzeituhr

Arduino pro mini kann den Überblick behalten, aber das Problem damit ist der Stromverbrauch. Bei 3,3 V zieht es etwa 3 mA bei 8 MHz und außerdem haben wir auch ein Display, das auch etwas Saft verbraucht. Ich entscheide mich für den DS3231 RTC-Chip, da er dank seiner I2C-Schnittstelle einfach zu bedienen ist. Außerdem verfolgt es die Zeit genauer als atmega328 und verbraucht sogar weniger Strom.

Schritt 5: Schnittstelle mit dem Benutzer

Schnittstelle mit Benutzer
Schnittstelle mit Benutzer
Schnittstelle mit Benutzer
Schnittstelle mit Benutzer

Die Benutzeroberfläche ist einfach - der Benutzer will Zeit, das Gerät gibt es dafür, wir hätten komplexe Dinge wie Handgesten oder so einfach wie einen Druckknopf verwenden können. Wenn der Benutzer also die Uhrzeit wissen möchte, drücken Sie die Taste und die Uhrzeit wird auf dem Display angezeigt. Der Plan für den Code bestand darin, zu erkennen, ob die Taste gedrückt wird, wenn sie gedrückt wird, die aktuelle Uhrzeit von RTC anfordern und über das Display anzeigen, aber dann wurde mir klar, dass arduino pro mini einen Druckknopf zum Zurücksetzen hat für die Taste einfach die aktuelle Zeit nehmen und einmal anzeigen und bis zum nächsten Reset warten.

Schritt 6: Die Drehung

Jetzt haben wir unsere Komponenten arduino pro min, DVD-Display, DS3231 RTC-Chip und CR2032-Knopfzelle als Kraftpaket, ohne über die Wahl der Batterie nachzudenken. Also mit Schaltung in meinem Kopf habe ich das PCB-Layout entworfen. Und kurz bevor ich PCB bestellen konnte, fiel mir eine Sache ein … wenn ich den RTC-Chip und den Knopfzellenhalter betrachte, dann sind sie bereits im DS3231 RTC-Modul verlötet, warum dann Ressourcen verschwenden, um eine kundenspezifische Platine zu bekommen, in diesem Fall haben wir nur Lötleistung, I2C-Leitungen und das DVD-Display zum Pro Mini. Falls Sie einen Blick auf das PCB-Layout werfen möchten, ist es unten angehängt.

Schritt 7: Problem mit Knopfzelle

Der Fehler, den ich gemacht habe, indem ich mir keine Zeit gegeben habe, den Batterietyp zu wählen, hat seinen Preis bezahlt. Als das Gerät über Arduino Uno mit Strom versorgt wurde, wie ich es zum Programmieren von Arduino Pro Mini verwendet habe, funktionierte es gut, aber wenn es mit einer Knopfzelle betrieben wurde, verhielt es sich seltsam. Nachdem ich viel Zeit damit verbracht hatte, herauszufinden, was das Problem war, war es tatsächlich so, dass CR2032 einen Strom von bis zu 2 mA liefern kann und die Anforderungen an das Gerät sehr hoch waren, sodass ich schließlich stattdessen eine Lipo-Batterie verwendet habe.

Schritt 8: Der Code

Der Code mag lang und sich wiederholend aussehen, ist aber eigentlich einfach zu verstehen. Alles wird in den Setup-Bereich gestellt, da wir die Dinge nur einmal tun und bis zum nächsten Reset-Befehl warten.

Der Codefluss besteht darin, alles zu initialisieren -> aktuelle Zeit von RTC nehmen -> die Daten so manipulieren, dass sie zum Multiplexen der Anzeigeziffern verwendet werden können -> und dann die Daten (Zeit) für 2 Sekunden anzeigen, indem jede Ziffer einzeln gemultiplext wird.

Schritt 9: Fertig

Ich hätte ein Gehäuse dafür in 3D gedruckt, aber ohne Gehäuse sieht es gut aus, da alle Komponenten freiliegen.

Empfohlen: