Datalogging mit 4 eeproms

Gast #351953
Lesenswert?

Hallo zusammen,

ich möchte gerne Messdaten alle 30 Sekunden zur Speicherung in 4
eeproms (Microchip 1025er) ablegen. Jeweils
Datum/Uhrzeit/Messstelle/Messwert.

Hat jemand schon einmal so etwas gemacht ?

Ich dachte mir das folgendermaßen (mit einem Pointer ins EEProm):

reset:
- Pointer auf nächsten Wert im EEProm auslesen (Definierte Adresse,
z.B. 0x0 im ersten eeprom)
normal:
- RTC und Messwerte einsammeln
- eeprom auswählen und Schreiben vorbereiten (I2C)
- Werte ins eeprom schreiben
- Pointer updaten (round-robin)
- goto normal

Nachteil dieser Methode: Loggen der Uhrzeit bei jedem Messwert, viel
Speicherplatzverbrauch :-(

Das Auslesen der eeproms soll dann später per RS232 von einem PC
erfolgen.

Viele Grüße,
Thomas
Gast #351954
Lesenswert?

Du könntest relative Zeiten speichern anstatt absoluter. D.h. die
vergangene Zeit seit der letzten Messung. Vielleicht ein paar
Stützpunkte alle 20 Werte oder so.

01.01.2006 12:00:01        Daten
                 30 sec    Daten
                 ...
                 ...
01.01.2006 12:10:01        Daten
....
Gast #351956
Lesenswert?

Unterschiedliche Header:
struct Data {
 BYTE type;
 BYTE data[];
}

type gibt dann z.B. folgendes an:
0x00: Es folgen Startzeit und Interval
0x01: Es folgen Daten (Messstelle + Werte)
0xff: Endekennung

Im EEProm liegt dann z.B. 0x00, ..., 0x01, ..., 0x01, ..., 0x00...,
0xff

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