Konzept beim Stellen des Datums einer rtc (DS3231)

OP #7655590
Lesenswert?
• ▲
▼

Hallo zusammen,

ich nutze die o.g. rtc und Atmega168 (als Arduino nano) - das läuft auch alles soweit. Ich habe ein Menü programmiert in dem man die rtc stellen kann, nur beim Datum frage ich mich, woher bekomme ich den Maximalwert für den Tag in einem Monat x (Schaltjahr/Monat), klar kann ich mir das alles selbst zusammenbasteln, aber dafür habe ich ja eigentlich die rtc...

Wie macht Ihr das?

Es geht mir nicht im Code sondern nur um das Konzept.

Danke.

#7655630
Lesenswert?
• ▲
▼

Martin S. schrieb:

... Arduino nano ... nur beim Datum frage ich mich, woher bekomme ich den Maximalwert für den Tag in einem Monat x

Gibt es da keine Bibliothek mit mktime() usw.?

Wie macht Ihr das? Es geht mir nicht im Code sondern nur um das Konzept.

Die wichtigsten Regeln:

  • RTC Chips sind dumm, du darfst keine ungültigen Werte schreiben. Die extremste Aussage aus einem Datenblatt: "das Verhalten ist dann undefiniert, aber es gibt keinen Latch-Up"
  • eine RTC kennt keine Zeitumstellung, es funktioniert nur richtig, wenn man UTC benutzt.

Dein Programm muss also alles selber prüfen und berechnen. Ich mache es so, dass ich im Programm nur (time_t) UTC benutze und das für die RTC passend umrechne. Der Aufwand lohnt sich, sobald man mehr macht, als eine Anzeige zu betreiben. Man braucht dann z.B. keine Regeln für die Zeitumstellung, sondern kann die Zeitpunkte der Umstellung in eine Tabelle packen.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.