Unixzeit aus RTC

Gast #483442
Lesenswert?

>Also kann ich die nicht direkt aus der RTC holen!?

Dazu müsstest du eine RTC finden, die die Uhrzeit in diesem Format 
ausgibt.
Die RTCs mit denen ich mich bisher beschäftigt habe, spucken die Uhrzeit 
meist im BCD-Format aus.

Die Unixtime ist ja nichts anderes als die Sekunden seit dem 1.1.1970 
(?).
Eine Uhr in einem Controller zu implementieren ist Pippifax, und sollte 
auch in Bascom kein Problem darstellen. Da braucht man keine RTC mehr, 
ausser man nutzt sie so, wie vorgesehen: Im ausgeschalteten Zustand des 
Gerätes durch eine kleine Pufferbatterie noch weiter zu laufen. Alles 
andere ich Quatsch.
Gast #483481
Lesenswert?

Schicke die Zeit irgendwie über eine "COM" Schnittstelle zum Unix und 
nimm die Zeit dort auseinander. Die notwendigen Routinen zur Umrechnung 
in die Unixzeit sind bestandteil der Unix C Standarbibliothek. (mktime)

Gruß,

Holm
Gast #483493
Lesenswert?

>Ich muss die Uhrzeit im Controller umrechnen.
Du musst ja "nur" die Differenz zwischen der aktuellen Uhrzeit (aus der 
RTC) und dem 1.1.1970 berechnen...

Jetzt: 25.01.2007 11:13:37
Jahr: 2007-1970 = 27
Monat: 01-01 = 0
Tag: 25-01 = 24
Stunde: 11-0 = 11
Minute: 13-0 = 13
Sekunde: 37-0 = 37

Sekunden seit 1.1.07 0:00:
((24*24+11)*60+13)*60+37)
Beim Monat wird das natürlich komplizierter. Dazu kann man dann eine 
Tabelle benutzen...
Bei den Jahren muß man halt die Schaltjahre beachten...

Einfach mal die Links im. og.g Wikipedia-Artikel durchgehen.
Gast #483575
Lesenswert?

>Ich muss möglichst Platzsparend einen Zeitstempel abspeichern.

Und warum dann die Unix-Zeit? (da gibt es 2038 einen Überlauf...)
Ich mache das so, dass ich zu Beginn einer Messreihe die aktuelle 
Uhrzeit im EEPROM speichere und dann nur noch die Sekunden (wenn 
überhaupt nötig) zähle. Dann kann ich bei einer Auswertung auf die 
vorher gespeicherte Zeit referenzieren. Das spart noch mehr Platz.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren