Für einige Anwendungen mit dem Arduino benötigt man die aktuelle Uhrzeit. Sei es, um eine ganz einfache Uhr zusammen mit einem LCD-Display zu bauen, oder um Messwerte auf einer SD-Karte mit dem passenden Timestamp zu versehen.
Die Arduino besitzt zwar eine interne "Uhr", doch die ist für o.g. Anwendungen unbrauchbar. Um das Problem zu lösen, gibt es kleine Uhrenmodule, die man über den I2C -Bus des Arduinos anschließen und auslesen kann. Mir sind zwei Versionen bekannt, einmal eine Modul mit einem DS1307 RTC-Chip und eine Version mit einem DS3231 RTC-Chip. Der Unterschied ist einfach aber gravierend. Während der DS1307 durch Temperaturschwankungen eine relativ große Ungenauigkeit entwickeln kann, die in wenigen Tagen bereits einige Sekunden beträgt, ist der DS3231 temperaturkompensiert, was sich auch im Preis niederschlägt.
Man bekommt ein DS3231 RTC-Modul zu Preisen zwischen 1,60€ bis zu ca. 8,00€, je nach Anbieter und Bestellmenge. Man muß aber aufpassen, weil die sehr günstigen Angebote manchmal ohne Knopfzelle kommen, die muß man dann noch obenauf rechnen. Leider sind die mitgelieferten Knopfzellen auch nicht immer ganz voll und müssen relativ schnell gewechselt werden.
Beide Versionen besitzen zur Pufferung der Zeit eine 2032 Knopfzelle als Energiequelle. Die Module speichern das komplette Datum und die Uhrzeit. Schaltjahre werden bis ins Jahr 2100 berücksichtigt, das sollte reichen (in 2100 tut uns sicher kein Zahn mehr weh ). Man muss sich lediglich um die Umsetellung zwischen Sommerzeit und Normalzeit kümmern. Das könnte man sogar automatisch per Software erledigen.
Wer es noch genauer braucht, für den wäre eine Zeitquelle aus der DCF77 Funkuhr, oder aus einem GPS-Modul eine Option:
Das hier gezeigte Modul ist mit einem DS3231 RTC-Chip ausgestattet, die Kopfzelle befindet sich auf der Unterseite. Auf dem Bild oben Links auf der Platine, ist unter der Beschriftung POWER eine rote LED, die signalisiert, wenn die Uhr in Betrieb ist.
Angeschlossen wird das Modul an VCC und GND und die Anschlüsse SDA an A4 und SCL an A5 beim Arduino (UNO und Nano). Der Arduino Mega hat gesonderte Anschlüsse für die I2C Schnittstelle, die bereits mit SDA und SCL beschriftet sind.
Die Arduino besitzt zwar eine interne "Uhr", doch die ist für o.g. Anwendungen unbrauchbar. Um das Problem zu lösen, gibt es kleine Uhrenmodule, die man über den I2C -Bus des Arduinos anschließen und auslesen kann. Mir sind zwei Versionen bekannt, einmal eine Modul mit einem DS1307 RTC-Chip und eine Version mit einem DS3231 RTC-Chip. Der Unterschied ist einfach aber gravierend. Während der DS1307 durch Temperaturschwankungen eine relativ große Ungenauigkeit entwickeln kann, die in wenigen Tagen bereits einige Sekunden beträgt, ist der DS3231 temperaturkompensiert, was sich auch im Preis niederschlägt.
Man bekommt ein DS3231 RTC-Modul zu Preisen zwischen 1,60€ bis zu ca. 8,00€, je nach Anbieter und Bestellmenge. Man muß aber aufpassen, weil die sehr günstigen Angebote manchmal ohne Knopfzelle kommen, die muß man dann noch obenauf rechnen. Leider sind die mitgelieferten Knopfzellen auch nicht immer ganz voll und müssen relativ schnell gewechselt werden.
Beide Versionen besitzen zur Pufferung der Zeit eine 2032 Knopfzelle als Energiequelle. Die Module speichern das komplette Datum und die Uhrzeit. Schaltjahre werden bis ins Jahr 2100 berücksichtigt, das sollte reichen (in 2100 tut uns sicher kein Zahn mehr weh ). Man muss sich lediglich um die Umsetellung zwischen Sommerzeit und Normalzeit kümmern. Das könnte man sogar automatisch per Software erledigen.
Wer es noch genauer braucht, für den wäre eine Zeitquelle aus der DCF77 Funkuhr, oder aus einem GPS-Modul eine Option:
Das hier gezeigte Modul ist mit einem DS3231 RTC-Chip ausgestattet, die Kopfzelle befindet sich auf der Unterseite. Auf dem Bild oben Links auf der Platine, ist unter der Beschriftung POWER eine rote LED, die signalisiert, wenn die Uhr in Betrieb ist.
Angeschlossen wird das Modul an VCC und GND und die Anschlüsse SDA an A4 und SCL an A5 beim Arduino (UNO und Nano). Der Arduino Mega hat gesonderte Anschlüsse für die I2C Schnittstelle, die bereits mit SDA und SCL beschriftet sind.
Zuletzt bearbeitet: