SD Karte & FAT

OP #1240774
Hallo zusammen

Ich steuere eine SD Karte (<2 GB) über die SPI Schnittstelle meines 
MSP430 an - das funktioniert soweit auch wunderbar.

Nun möchte ich ein FAT16 darauf implementieren und verwende dazu 
MikroFat16 (http://www.mikro-control.de/).
- Die Initialisierung funktioniert
- Lesen/Schreiben funktioniert grundsätzlich.

ich habe nun das Problem, dass mir das Filesystem offenbar nicht an die 
richtigen Adressen schreibt, denn die erstellten Files sind nicht 
erkennbar unter Windows XP. Wenn ich mir das ganze mit dem Hex Editor 
anschaue sehe ich, dass die Daten geschrieben wurden! Einfach nicht an 
der richtigen Adresse.
Hat da jemand Erfahrungen gemacht?

Ich habe nun mal einfach bei der SD Karte angefangen und versuche zu 
verstehen, wo genau welche einzelnen Bereiche beginnen.
Durch zurückrechnen bin ich auf folgendes gekommen:

Datenbereich:        0x480000
Verzeichniseinträge: 0x03C000
FAT-Einträge:        0x01E800
Volume Boot Record:  0x00DA00
MBR:                 0x000000

Nun... der MBR ist korrekt. Aber wie kommt man auf den VBR? Wo steht 
diese Adresse?
Im MBR habe ich folgende Werte ausgelesen, mit welchen ich tatsächlich 
auf die anderen Bereiche komme:
Anzahl Reservierte Sektoren: 0x87
Anzahl Sektoren pro FAT: 0xEC00
Anzahl FAT kopien: 2

Vielen Dank im voraus
Marco
Persönliche Seite
FAT16 kann maximal* 2 GiB adressieren (maximale Clustergröße 32 kiB).

Wenn Du versuchst, die Karte mit mehrern Partitionen zu betrieben, 
schlägt dies fehlt, weil Windows keine Wechseldatenträger mit mehreren 
Partitionen akzeptiert.


*) die Variante mit 64 kiB-Clustern ist nicht spezifikationskonform, 
auch wenn sie von den ernstgemeinten Windows-Versionen ausnahmsweise 
unterstützt wird
Gast
Mach doch einfach mal eine Gegenprobe: erstelle mit Windows eine Fat 16 
und vergleiche oder lese diese dort wieder ein als Muster.

Es ist nicht ungewöhnlich, daß man Original-Dateisysteme auch mit 
Origial-SW erstellt. Dann hat man später wenigstes ein bekanntes 
Dateiformat wo möglichst viele allgemein verfügbare Tools anwendbar 
sind.
Gast
> weil Windows keine Wechseldatenträger mit mehreren Partitionen akzeptiert.

Wenn USB-Sticks auch als Wechseldatenträger gelten, dann scheint mein XP 
das nicht zu wissen....
(Das Teil hat 2 Partitionen)

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 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.