Hallo,
ich möchte Rohdaten (8 Bit) auf eine 1GB-SD-Karte am PC schreiben und im Arduino auslesen, ohne Dateisystem. "Ohne Dateisystem" ist für mein Projekt leider notwendig, mit wäre das einfach. Ich habe eine SD-Karte mit dem HdX Hex-Editor manuell beschrieben, sie enthält am Anfang von Sektor 0 markante Test-Daten 0, 1, 2, 3, 4, 5, ... FF. Wenn ich die Karte entferne und erneut mit dem HdX-Editor einlese, dann bekomme ich diese Daten angezeigt, sie sind also offenbar auf der SD-Karte drauf.
Jetzt lese ich die SD-Karte mit einem Arduino-Uno und einem klassischen SD-Kartenleser über SPI ein. Der Kartenleser und die SD-Karte funktionieren, ich habe beide vorab getestet, indem ich den Inhalt einer Test-Datei (FAT32) über den Arduino erfolgreich einlesen konnte.
Ich habe verschiedene Bibliotheken getestet um blockweise Daten auszulesen, leider bekomme ich nicht meine vorher eingegebenen Daten ausgegeben.
Ich habe z. B. aus der Bibliothek SDCore das Beispiel "Dump" unmodifiziert laufen lassen (statt hier Quellcode anzuhängen). Es werden Daten von der SD-Karte ausgegeben, es sind auch Daten ungleich 0 dabei, aber eben nicht meine signifikanten Daten an Adresse 0.
Eingabe HxD:
Ausgabe Serial Monitor (Arduino, Dump-Beispiel aus SDCore):
SD Initialization: SUCCESS
Block 0
EF 7A D0 5B 2 1E 13 53 E2 E8 D8 7 9 91 FE 2 A1 9 CB 15 2E 81...
Meine Erwartung:
01 23 45 67 89 AB CD EF
Ich habe dann die gleichen signifikanten Daten in Sektor 20 auf Adresse 0x2800 geschrieben, ebenfalls ohne Erfolg.
Getestete Bibliotheken: SDFAT, SDCORE.
Das Initialisieren der SD-Karte geht bei jeder Bibliothek ohne Fehlermeldung durch.
Hat irgendwer ne Idee was das Problem sein könnte?
Vielen Dank,
Holger