www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Loggen mit FatFS auf SD-Karte (Wie lange geht das gut) ?


Autor: Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich wollte ein paar Daten auf SD-Karte loggen und die dann Periodisch zu 
einem PC schicken. Das Problem bei den Karten sind die Schreibzyklen. 
Aus diesem Grund wollte ich "fertig" übertragene Dateien einfach 
umbenennen um nicht immer auf den gleichen Bereich zu schreiben.

Nun, wie sieht es denn bei FatFs aus, wird da nicht immer eine Tabelle 
am Anfang der SD-Karte bei jedem schreiben und umbenennen neu 
geschrieben ? Gibt es auch Filesysteme die diese Probleme umgehen, die 
auch auf Embedded-Systemen, laufen ?


Grüße.

Autor: Μαtthias W. (matthias) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

der Controller in der Karte sorgt dafür das die Schreibzyklen 
gleichmäßig über den gesamten Flash verteilt werden 
(http://de.wikipedia.org/wiki/Wear-Leveling#Wear-leveling) Brauchst dir 
also keine Gedanken machen.

Matthias

Autor: Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meinst du mit SSD auch die SD-Karte ? Ich steck da leider nicht so tief 
in der Materie. Ich bin bisher davon ausgegangen das der Flash-Speicher 
auf einer SD-Karte über Sektoren angesprochen wird und aus diesem Grund 
immer auf den gleichen Sektor zugegriffen werden kann.

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Sektoren die du über das SD-Interface siehst entsprechen nicht den 
physischen Blöcken im Flash. Der Controller sorgt durch eine variable 
Zuordnung dafür dass alles möglichst gleichmäßig abgenutzt wird. Wenn du 
deine Karte schonen willst kannst du nur darauf achten immer möglichst 
große Datenblöcke auf einmal zu schreiben, weil bei jedem Schreibvorgang 
immer ein ganzer Block (z.B. 64 kB) geschrieben werden muss.

Umbenennen würde sowieso nichts bringen, da sich dadurch nur der 
FAT-Eintrag ändert, nicht der Speicherort der Datei.

Autor: MarioT (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es muß mindestens ein kompletter Sektor mit mindestens 512 Byte 
geschrieben werden. Benennst Du die Datei um, müssen wieder 512 Byte 
geschrieben werden. Also alles was in dem Sektor steht wo der Dateinamen 
drinsteht mus neu geschrieben werden. So kenne ich es. Hoffe ich täusche 
mich nicht.

Autor: Marius S. (lupin) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie soll denn das mit dem wear leveling funktionieren? die sd karte kann 
ja nicht einfach die physischen speicherblöcke nach belieben neu 
zuordnen (die Blöcke sind ja unter Umständen bereits beschrieben). Die 
SD Karte weiss ja nicht welcher Block genutzt wird und welcher frei ist.

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>wie soll denn das mit dem wear leveling funktionieren? die sd karte kann
>ja nicht einfach die physischen speicherblöcke nach belieben neu
>zuordnen

Oh doch, das kann sie.

Autor: ... ... ... (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Werner (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke Leute, die Infos helfen mir bei den Überlegungen weiter.

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.