Probleme mit SD und FatFs

OP #4760301
Hallo,

ich versuche gerade eine SD Karte am STM32 über SPI zum laufen zu 
bringen. Das hat prinzipiell auch funktioniert, habe aber jetzt ganz 
komische Probleme...

1. Ich habe mir zum testen eine 2GB Platinum SD gekauft. Als die 
Initialisierung etc. korrekt funktionierte, habe ich den den Sektor 0 
(MBR) "Müll" geschrieben. Nach dem einstecken am PC, kam dann auch 
prompt die Meldung, dass die Karte erst formatiert werden muss. Hier war 
nun das erste "Problem": Es ist jetzt eine   4GB   Karte??? Ich konnte 
auch tatsächlich testweise 3GB+ drauf kopieren??

2. Die Karte wird (am STM32) korrekt initialisiert und ich kann sie 
mounten + eine Datei schreiben und diese Datei dann auch wieder korrekt 
auslesen.
Steck ich die Karte in den PC, ist sie leer?? Am PC erzeugte Dateien 
werden wiederum nicht vom STM gefunden...

Formatiert habe ich die Karte mit FAT und FAT32 mit 32 o. 64KB 
zuordnungseinheiten (mehr Auswahl bietet Win nicht)

Jetzt bin ich mit meinem Latein echt am Ende... Irgendwie funktioniert 
es, aber irgendwie dann doch nicht so wirklich...
Muss, wenn verfügbar, dann mal eine andere SD testen.

mfg
Gast
Ggf auf eine fake Karte erwischt?
Karte als 2gb gelabelt mit 2gb (oder weniger) flash aber falsch als 4gb 
konfiguriert?

Hast du Zugriff auf Linux? Direkt mounten und über ein Script / prog 
alle Sektoren fortlaufend, sich nicht wiederholen durchnummeriert und 
dann gehen lesen. Dann sollte man frststellen ob da was im Argen ist.

Kann dein sd Card Driver mit den hc Karten umgehen? Hier ändert sich die 
Art der Adressierung. Adresse / sektor
OP
123 schrieb:
> Ggf auf eine fake Karte erwischt?
> Karte als 2gb gelabelt mit 2gb (oder weniger) flash aber falsch als 4gb
> konfiguriert?

Die Karte wurde am Anfang auch ganz normal als 2GB erkannt, erst nachdem 
ich in den MBR geschrieben habe, war sie 4GB

> Hast du Zugriff auf Linux? Direkt mounten und über ein Script / prog
> alle Sektoren fortlaufend, sich nicht wiederholen durchnummeriert und
> dann gehen lesen. Dann sollte man frststellen ob da was im Argen ist.

Ein Live System könnte ich booten.

> Kann dein sd Card Driver mit den hc Karten umgehen? Hier ändert sich die
> Art der Adressierung. Adresse / sektor

Das werde ich mal überprüfen. Hätte ja eigentlich extra eine 2GB Karte 
gekauft, um HC,XC etc zu vermeiden.

mfg
Gast
Felix F. schrieb:
> Hätte ja eigentlich extra eine 2GB Karte gekauft, um HC,XC etc zu
> vermeiden.

Extra um es dir kompliziert zu machen? SDHC Karten sind eigentlich am 
einfachsten. Bei SDSC (also <= 2GB) muss man mit unterschiedlichen Block 
Größen rum hantieren, Sonderfällen bei 2 GB Karten usw. Bei SDXC muss 
man exFAT implementieren (semi geheim). Daher ist SDHC mit FAT32 und 
konstanter Block Größe von 512B am simpelsten.

Windows ist vermutlich von deinem vermüllten MBR verwirrt. Formatiere 
einfach mal mit dem Tool von sdcard.org neu (SD Karten nie mit den 
Windows/Linux eigenen Tools formatieren).

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.