C XMEGA256A3BU RTC32

Was hat da der Parameter "time_t" zu suchen?
Das ist kein Parameter, sondern ein Typencasting. Da verwende mal unsigned long. Siehe hierzu auch in meinen Beiträgen die defines.

Vergleiche auch mal deine Berechnung mit denen in meinen Beiträgen. Wegen dem Überlauf vom Tag, schaue dir meinen Beitrag 14 an.
 
Hast du auch ein Makro(s) für das Datum?
 
Hmmm..Datum?
worauf beziehst du dich dann? Eingabe eines Startdatums? Dann kommt auch noch die Frage auf, mit wieviel Tagen du im Monat rechnest, wenn kein Startdatum gegeben ist.
Sinnfälliger wäre es meiner Ansicht nach, den erhaltenen Sekundenwert maximal in Tagen auszudrücken...man spart sich dann jede Menge 'Kopfschmerzen' :)

Addi
 
Erstmal danke an Dirk, die Rechnung scheint bis jetzt zu Funktionieren ;)


@addi
Was das Datum angeht, Ich bin der Meinung mal gelesen zu haben, dass die Rechner sich auf ein spezielles Datum referenzieren?
Das könnte ich doch auch, oder?
Was den Monat angeht, ist ja nur das Schaltjahr was ich mit berücksichtigen muss (Februar)...
Sollte doch nicht so ein großer Aufwand sein..
 
Ich weiss leider nicht, was das modul, welches du verwendest, alles so an bord hat.
Bin eigentlich nur von dem zaehlerstand ausgegangen...sprich es liegt keine rtc vor.
Das mit dem monat sehevich nicht so...es gibt monate mit 28, 29, 30 und 31 tagen und schaltjahre.
Ausserdem nervt noch die sommer-/winterzeitumstellung....ausser man verwendet utc
Addi
 
Bin eigentlich nur von dem zaehlerstand ausgegangen
Korrekt.
Der XMEGA256A3BU besitzt einen 32Bit-Timer, welcher über einen externen 32k768Hz-Quarz mit festem 32-Vorteiler getaktet wird. Außerdem kann ein 1024-Vorteiler dazwischengeschaltet werden - der Timer inkrementiert also mit 1024Hz oder mit 1Hz.
Außer dem 32-Bit-Überlauf kann auch ein OutputCompareMatch einen IRQ generieren.
Das gesamte Timer-Modul kann alternativ über eine seperate Stromversorgung (Bat) laufen, in allen Sleep-Modi.

Mit 32Bit Sekunden sollte man gut 136 Jahre hinkommen...
 
Die zeitspanne duerfte mehr als ausreichend sein.
Jetzt erhebt sich fuer mich die frage, was gedenkt er damit zu tun?
Waere eine zusaetzliche rtc nicht hilfreicher, als die muehselige sekundenquaelerei in ein adaeqates datum?
Addi
 
Die Zeitspanne ist wahrscheinlich eher durch die Batterie begrenzt ;)

Ich finde es schon interessant, die Datumsberechnung mit dem Mikrocontroller zu machen, zumal es ja bereits mit avr-libc time.h Hilfe gibt.

Zum Beispiel u.a.


CodeBox C
uint8_t    is_leap_year (int16_t year)
uint8_t    month_length (int16_t year, uint8_t month)
 
die solltest'de ja rechtzeitig tauschen können...

... da kann man sich ja auch eine Uhr stellen, die einen dran erinnert, dass man irgendwann mal in der Lebensdauer des Projekts (Timer läuft über nach 136 Jahren) die Batterie erneuern sollte. Wenigstens 10x wenn die Batterie gut ist :D;)
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)