Eine einfache binäre Uhr auf einem Mikrocontroller. Planen

Vielleicht erinnert sich noch jemand daran, wie die Bedienfelder der ersten elektronischen Computer (ECM) aussahen. Heute sind sie nur noch auf Archivfotos zu sehen. Lange Reihen von Glühbirnen, die auf den ersten Blick chaotisch flackerten, faszinierten die Elektronikbegeisterten jener Jahre.

Das in diesem Artikel vorgestellte Design einer binären Uhr wird dazu beitragen, die Atmosphäre vergangener Jahre nachzubilden.

Ein schematisches Diagramm einer einfachen binären Uhr ist in Abbildung 1 gezeigt. Die Schaltung basiert auf einem ATmega48-Mikrocontroller. Es gibt kein externes Echtzeitmodul (RTC) in der Taktschaltung, was wiederum die Kosten des Geräts etwas reduziert.

Bei einem möglichen Stromausfall von einer externen Quelle wird das Timing durch die eingebaute CR2032-Batterie aufrechterhalten, während die LEDs ausgeschaltet sind. Um die Versorgungsspannung von einem externen Netzteil zu erfassen, wird eine Schaltung mit einem VT1-Transistor (BC847) verwendet.

Wenn an den Anschlüssen des Stromanschlusses Spannung anliegt, durchläuft sie die Diode D1, wodurch der Transistor in den Sättigungszustand übergeht und an den PC0-Eingang des Mikrocontrollers eine logische Null angelegt wird, die den Vorgang auslöst der LEDs.

Die Anzeige der aktuellen Uhrzeit (Stunden, Minuten und Sekunden) erfolgt über drei LED-Zeilen. Die LEDs werden durch Multiplexing gesteuert, was den Stromverbrauch und die Anzahl der verwendeten Mikrocontroller-Pins reduziert.

Die Anzeige erfolgt nur im 24-Stunden-Format. Zur Anzeige der Minuten- und Sekundenzahl werden 6 LEDs benötigt, für Stunden 5 LEDs.

Der Mikrocontroller ATmega48V-10AU kann mit einer reduzierten Stromversorgung von bis zu 1,8 V betrieben werden, was ein großer Vorteil ist. Außerdem verbraucht der ATmega48V-10AU weniger Strom. Die Taktsignalfrequenz wird durch einen 4 MHz Quarzresonator stabilisiert, der auch eine Referenz für das Timing ist.

Die Einstellung der aktuellen Uhrzeit (Stunden und Minuten) erfolgt mit den Tasten SW2 bzw. SW1. Der Sekundenzähler wird auf Null zurückgesetzt, wenn Sie eine der Tasten drücken.

Es ist erwähnenswert, dass diese Tasten im Batteriebetrieb inaktiv sind, um eine versehentliche Änderung der Uhrzeit zu verhindern. Die Uhr ist auf einer einseitigen Leiterplatte mit den Maßen 103 mm × 67 mm montiert.

Beim Programmieren des Mikrocontrollers ist es notwendig, den Mikrocontroller so einzustellen, dass er von einem externen 4-MHz-Quarzresonator arbeitet und die Teilung der Taktfrequenz durch 8 abschaltet (dieses Bit heißt CKDIV8).

Nach korrekter Montage beginnt die Uhr sofort zu arbeiten und sollte 00:00:00 anzeigen.

Die Schaltung wird von einem Netzteil mit einer Spannung von +5 V gespeist. Notstrom - eine CR2032-Batterie ist optional, sie hält nur nach einem Stromausfall einen Countdown aufrecht.

Die Stromaufnahme aus der Batterie beträgt ca. 1,5 mA. Bei einer Akkukapazität von ca. 200 mAh sollte es für 5 oder mehr Tage Betrieb des Mikrocontrollers reichen, was in typischen Situationen ausreichend ist.

Wie bereits erwähnt, erfolgt die Zeitanzeige in einem Binärsystem. Die höchstwertigen Bits befinden sich links und die niederwertigsten Bits rechts. Die Stunden, Minuten und Sekunden sind auf der Uhr absichtlich nicht signiert, so dass es für Laien schwer zu erraten wäre, wie die Uhr funktioniert.