Hallo ...

schön, daß schon was läuft ... ich habe meine SD-Karte eher in meinem selbstgebauten Datenlogger im Einsatz. Ich hatte mir mal ein Seismometer gebaut und zeichne jetzt schon seit fast einem Jahr die Daten mit einer Samplingrate von 100 Messungen pro Sekunde auf vier Kanälen auf. Damit habe ich eine Datenrate von rund 1 kB pro Sekunde, die problemlos verkraftet wird. Der FIFO wird garnicht richtig genutzt. Aber ohne würde es auch nicht gehen. Hängt aber auch ein wenig von der SD-Karte ab. Bei manchen langsameren Karten läuft der FIFO etwas voller als bei anderen Karten. Einmal die Woche tausche ich dann die Karte aus.

Für Dich sind dann die beiden Files FAT16 und SD_api entscheidend. Im Idealfall solltest Du die unverändert verwenden können. Die Hardwarespezifischen Implementierungen sind in SD_interface drin. Dann gibt's noch 'ne Reihe Hilfsfunktionen, die aber nicht so entscheidend sind. SDCardExperiment3.c ist dann die Anwendung. Momentan aktualisiere ich recht häufig das doc-File https://sourceforge.net/project/down...iment3-doc.zip und arbeite an den Kommentaren. An der Implementierung tut sich erst mal nix.

Ach so ... 1 kB pro Sekunde bedeutet, daß ich 9k6 ohne Schwierigkeiten ununterbrochen aufzeichnen kann. 19k2 ununterbrochen werde ich wohl nicht schaffen. Aber wenn Du einen Puffer implementierst, und die Daten eben nicht ununterbrochen kommen, dann kommt's ja nur auf die mittlere Datenrate drauf an.

Wichtig: bislang kann ich nur FAT16 und Blockgröße 512 byte. D.h. bei 1 GB ist die Grenze. Die 2 GB-Karten haben 1 kB Blockgröße. Die Arbeit habe ich mir noch nicht gemacht, das auch zu ermöglichen. Aber auf einem Mega32 würde das auch recht eng werden ... Mega64 müßte aber gehen, weil er ein doppelt so graßes RAM hat, wie der Mega32.

Gruß ... Matthias.