Die beliebtesten RTC für den Arduino ist die DS1307 von Adafruit und Sparkfun verkauft. Allerdings hat es einige Nachteile, das, die bemerkenswerteste davon ist, dass seine Betriebsspannung 5v, was bedeutete, dass ich es nicht mit meinem Arduino Pro Mini @ 3,3V verwenden könnte.
Das brachte mich auf die Jagd nach einem geeigneten Ersatz für die DS1307. Hier waren meine Design-Parameter:
(1) Tolerant von den unterschiedlichsten Spannungen, einschließlich 3,3 und 5 v
(2) Batterie-Backup, so dass ich nicht darum kümmern das Datum zurücksetzen und Zeit jedes Mal, wenn ich die Macht radelte es.
(3) das Vorhandensein eines Alarms, so konnte ich zeitgesteuerte Interrupts bekommen (und möglicherweise verwenden, um Energie zu sparen für den Arduino Pro Mini läuft aus der Batterie zu verwalten.
(4) DIP Paket bevorzugt, so dass es einfacher Löten machen würde (Ach, das war nicht zu sein!)
Die DS1307 erfolgt durch Maxim Integrated, und sie haben eine verwirrende Anzahl von RTC-Chips. Nachdem man durch eine ganze Reihe von Datenblättern, begann ich Kopfschmerzen bekommen! Schließlich ließ ich mich auf die DS1339, die alle meine Anforderungen, nämlich erfüllt:
(1) Tolerant von den unterschiedlichsten Spannungen von 1,8 V bis 5,5 v. Insbesondere, wähle ich das DS1339-33, hat einen Spannungsbereich von 2.97V-5.5V mit der typischen Spannung als 3,3V
(2) es hatte eine Batterie-backup
(3) es war nicht eine, sondern zwei Alarme!
(4) als Bonus hatte es auch eine Rinnsal Ladegerät
Ich machte mich um zu eine Adapterplatine für das DS1339 zu entwerfen, die ich auf geteilten
https://www.oshpark.com/shared_projects/A21xcMiD
Nachdem ich die Bretter aus Oshpark kam, hatte ich einige Smd Löten zu tun. Es gibt viele Websites, die Sie sagen, wie Hand-Lötzinn Smd Bauteilen, so werde ich diese hier ins Detail gehen. Ein Lötjumper habe ich auf der Adapterplatine, die zum aktivieren/deaktivieren Sie die Pullup-Widerstände verwendet werden kann.
Danach brauchte ich eigentlich eine Bibliothek, mit der DS1339 von Arduino zu sprechen. Das Register Format unterscheidet sich von derjenigen der DS1307 (von denen einige Bibliotheken verfügbar sind). Glücklicherweise fand ich eine Bibliothek für die DS1337, die speziell für die Mosquino, ein Arduino kompatible Plattform für einen extrem niedrigen Stromverbrauch gemacht wurde. Zum Glück waren die DS1337 und DS1339 Register Formate nahezu identisch, mit der Ausnahme, dass die DS1339 auch eine weitere Register für das Rinnsal Ladegerät hatte.
Ich Mosquino DS1337 Bibliothek gegabelt und machte es mehr Generika (Sie können angeben, welche Pins, die Sie für die externen Interrupts verwenden), machte DS1337 und DS1339 Unterklassen (ich könnte hinzufügen, Rinnsal Ladegerät Unterstützung für die DS1339 zum Beispiel), und auch das Beispiel, um in der Lage einstellen und Ablesen der Zeit, erleichtert das Einstellen auf das RTC-Modul zum ersten Mal aktualisiert.
Ich habe es auf Github veröffentlicht-
https://github.com/sridharrajagopal/DSRTCLib
Es ist ähnlich wie bei anderen Arduino Bibliothek. Kopieren Sie es auf den Arduino-Bibliotheken-Ordner, und starten Sie Arduino. Die DSRTCLib sollte unter Beispiele angezeigt.
Nun Sie haben einen relativ niedrigen Kosten RTC-Modul, der Keil-Ful von Funktionen ist, und mit einer Vielzahl von Arduino Boards verwendet werden können.
Viel Spaß!
Sridhar