Datenlogging auf SD-Karte, Abruf per PC, Löschen der Karte

Gast #2362558
Lesenswert?
• ▲
▼
Hi!

Mein aktuelles Projekt loggt alle 4 Minuten auf eine SD-Karte 200 Bytes, 
also 72.000 Bytes/Tag bzw. 2.6280.000 Bytes/Jahr.

Die Daten sollen mehr oder weniger regelmäßig von einem PC abgerufen 
werden. Der PC hängt am usart (57600Baud angeschlossen).

Wie sollte man dies von Konzept her am Geschicktesten lösen?


1) Einfachster Ansatz: Die Daten immer in die gleiche Datei schreiben. 
Fragt der PC an, alle Daten ausgeben und danach die Datei oder deren 
Inhalt löschen, wenn der PC den Empfang bestätigt hat. Wird mir das die 
SD/MMC-Karte übel nehmen? Ich würde ja schreiben, löschen, schreiben, 
löschen..... und eventuell immer wieder die Datei öffnen, schließen, neu 
anlegen usw.. Im schlimmsten Fall alle 4 Minuten.

2) Die Daten immer in die gleiche Datei schreiben, aber nie löschen. 
Stattdessen irgendwo speichern, bis wohin zuletzt übertragen wurde.


Idee: Einen "Puffer" anlegen, der einen Datensatz aufnehmen kann und 
somit nur auf die SD-Karte schreibt, wenn der PC ihn nicht abruft, bevor 
der nächste Datensatz ansteht.

Gruß,
Chris
Gast #2362651
Lesenswert?
• ▲
▼
Wenn Du sicherstellen musst, das wärend der Übertragung weiter geloggt 
wird, müsstest Du das Schreibfile wechseln (in ein neues schreiben), 
dann das alte übertragen und dann löschen. Wenn deine FAT-Lib nur eine 
Datei gleichzeitig kann, gibts damit auch Probleme. Nächster Ansatz 
wäre: eine Datei mit konstanter Größe auf der SD, Schreib/Lesezugriff 
über 2 Zeiger.
Wenn die SD immer im Gerät bleibt und für nichts anderes genutzt werden 
soll, könntest Du ja auf das Dateisystem ganz verzichten und die Karte 
ganz als Ringspeicher nutzen.
mfG ingo

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.