mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Suche nach AVR 32bit System Time Algorithm fuer kleine Mikro


Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich bin gerade dabei einen kleinen AVR Event/Datenlogger mit DS1302
Echtzeituhr zu entwickeln. Da ich zur Datenspeicherung ein Serielles
EEPROM verwende (25LC256) ist es wichtig dass der Speicherbedarf des
"timestamp" auf ein Minimum reduziert ist. Da die meisten RTC ihre
Daten in BCD speichern, ist wegen der aufwendungen Berechnungen die
Umwandlung in 32BIT mit etwas Aufwand und Ansprueche an
Programspeicherplatzbedarf verbunden.

Es wuerde mich interessieren, ob sich schon irgendwer von Euch die
Arbeit gemacht hat, das in kompakter Form beim AVR anzuwenden.

Da UNIX/LINUX ein solches System intern verwendet, liegt es recht nahe
den Source der UNIX Implementierung als Startpunkt fuer einen AVR Port
zu nehmen. Der Startpunkt der Epoche ist dann 1. Jaenner 1970.

Hat schon jemand von Euch in dieser Richtung Versuche unternommen.
Falls nicht, dann werde ich mir diese Sache bald naeher ansehen und
spaeter darueber berichten und ggf einen C-Source hier publizieren.

Wuerde mich freuen Eure Meinung/Hinweise darueber zu hoeren.
Uebriegens, gibt es fuer "TIME STAMP" ein gebraeuchliches deutsches
Wort? (Zeit- Datum-markierung - klingt aver nicht so gut. Mir faellt
wirklich nichts Gescheites ein.)

Gruss,
Gerhard

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du bist mit Deiner 'Zeitstempel'-Frage zwar im falschen Forum, aber
die kürzeste Form der Speicherung besteht darin, am Anfang der
Aufzeichnung einen absoluten Zeitwert (Datum+Uhrzeit) zu speichern und
die nachfolgenden Daten mit der relativen Zeit (Sekunden oder
Millisekunden binär) zum vorherigen Wert abzulegen.
Alles klar ?

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Michael,

danke fuer Deine rasche Antwort und Ratschlag. Ich muesste mir dann nur
noch ueberlegen wie ich die Beruecksichtigung der Schaltjahre behandle.
Sonst gefaellt mir Dein Vorschlag.

"Zeitstempel" gefaellt mir auch besser - Danke.

Gerhard

Autor: Peter Dannegger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In der Codesammlung ist meine Routine von 32Bit auf
Datum+Uhrzeit+Sommerzeit für den AVR optimiert.

Ich verwende sie mit dem DS1994 (Maxim), das ist eine 32Bit-RTC
komplett mit Quarz, Batterie und 4kBit SRAM.


Peter

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Peter,

vielen Dank fuer Deinen Hinweis. Werde es mir gleich ansehen. Finde es
wirklich ueberwaeltigend wie hilfreich so viele von Euch sind. Bekam
auch eine direkte e-mail von Werner mit einem Code Beispiel.

Werde mich wieder melden sobald ich was zustande gebracht habe.

Noch ein gutes Wochenende,
Gerhard

Autor: flyingwolf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Waum nimmst Du nicht das Julianische Datum? Das kannst Du von Deiner RTC
mit wenig Aufwand umrechnen und wieder zurück. Das Jahr 2000 ist vorbei
und so hast Du die nächsten 95 Jahre keine grossen Probleme mehr und
die Schaltjahre sind auch berücksichtigt. Was braucht es mehr? (Du mußt
natürlich die letzten 2000 Jahre rausrechnen!)

Autor: gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke fuer den Hinweis. Muss aber zugeben, das ich zumindestens auf dem
Gebiet der Kalenderberechnung Nachhilfestunden nehmen muss - d.h. mal
Unterlagen sammeln und alles mal durchstudieren.

Leider habe ich zumindenstens die naechsten zwei Wochen wenig Zeit fuer
Hobbysachen, da ich im Augenblick im Betrieb furchtbar eingespannt bin
und von der Elektronik doch etwas Abstand nehemen moechte bis es wieder
ruhiger wird.

Gruss,
Gerhard

Autor: Paule (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Gerhard (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Paule,

danke fuer diese nuetzliche link zur URL.

Gruss,
Gerhard

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.