www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik FAT mit SD-Karten


Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich beschäftige mich gerade mit FAT-formatierten SD-Karten, das Ziel
ist eben, mit dem µC erzeugte Daten auf der SD-Karte ablegen und  auf
dem  PC auszulesen. Als erstes habe ich eine FAT16- und
FAT32-formatierte Karte mit dem WinHex-Editor untersucht und
festgestellt, dass mit dem Windows XP formatierte Karten keinen MBR
haben, sondern sie beginnen gleich mit dem BPB(BIOS Parameter Block).
Ich habe noch eine unberührte vom Hersteller formatierte Karte und die
hat einen MBR im Sektor 0 und einenBPB im Sektor 32.
Bis jetzt war ich der Meinung, dass der MBR auf jedem Datenträger
vorhanden sein muss, jetzt bin ich mir da nicht mehr so sicher.
Weiß jemand mehr darüber?

Andy

Autor: Wolfram (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ohne MBR heißt Superfloppyformat
du kannst hier im Forum schon einige Implementierungen von FAT16
finden.

Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mit welchem Tool könnte ich die Karte normal formatieren, also nicht im
Superfloppy?

Autor: Olaf (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Formatieren geht ganz normal mit fdisk und mkdosfs.

Olaf

Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich habe mit "format /FS:FAT e:" eine 16MB und eine 128MB SD-Karte
formatiert. Mit WinHex habe ich mir dann die Karten angeschaut.
Die 16MB-Karte wurde als FAT12 formatiert und zwar mit MBR und BPB, die
128MB-Karte wurde als Superfloppy formatiert.
Kann mir jemand sagen, was da das Entscheidungskriterium ist, die
Karten einmal "normal" und einmal als Superfloppy zu formatieren.

Andy

Autor: Wolfram (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn eine gültige MBR vorhanden ist, wird sie belassen und nur die
Dospartition formatiert, bei Superfloppy gibt es sowieso nur eine
Dospartition die formatiert werden kann.
Test: Win2000 Stand 2003 CFlash
Umschaltung: FAT12/FAT16 4089? Cluster
Dies ist laut Microsoft einziges Entscheidungsmerkmal, was für ein
Dateisystem vorliegt. Kann aber nochmals nachgeprüft werden durch
anschauen der 1. Cluster der FAT.

Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
was meinst du mit "Umschaltung: FAT12/FAT16 4089? Cluster "

Autor: Wolfram (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ob ein FAT12 oder FAT16 Dateisystem vorliegt

Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
heißt das, dass bevor man eine SD-Karte formatiert, weiß man nicht,was
rauskommt (superfloppy oder nicht)?
Bei meinem Test habe ich meine Karten erstmal unter Linux mit 0x00
komplett überschrieben und erst dann unter Win2000 mit format.exe
formatiert. Also, hat sich Windows selbst bei einer SD-Karte für
Superfloppy entschieden und bei der anderen nicht.

Autor: Wolfram (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>heißt das, dass bevor man eine SD-Karte formatiert, weiß man nicht,was
>rauskommt (superfloppy oder nicht)
Es scheint so.
Allerdings verstehe ich nicht, warum du unter Linux, statt die Karten
mit 0x00 zu überschreiben, sie nicht gleich in das gewünschte Format
gebracht hast.
Solltest du das ganze selbst programmieren wollen wirst du sowieso
beide Formate unterstützen müssen. Der Einzige Unterschied ist doch der
Offset zwischen physikalischen und logischem Startsektor.
physikalischer Sektor=logischer Sektor + Offset

Superfloppy ->Offset=0
mit MBR Offset aus Partitionstabelle auslesen meist 32 (nächste
folgende  Spur)

Autor: Andy (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich wollte erstmal das FAT-System und mögliche "Abweichungen" vom
Standard verstehen, um später nicht auf die Nase zu fallen.
Ich lösche die Karte unter Linux, um ein unberührtes frisches System
ohne alten Schrott zu haben.

Danke Wolfram

Autor: Wolfram (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>ich wollte erstmal das FAT-System und mögliche "Abweichungen" vom
>Standard verstehen, um später nicht auf die Nase zu fallen

es gibt da im Netz einige Dokumente die interessant sind ,
zum einen eine Diskussion von vfat implementierung als beta(Dokument)
von Microsoft und ein 2. auch von Microsoft was sich sher genau mit
unterschiedlichen FAT implementierungen
(auch DRDOS,PCTOOLS etc.) und Interpretierungen derselben sowie
potentiellen Problemen. z.B. stammt von da die Aussage woran erkenne
ich ein FAT12/FAt16 Dateisystem. Ab wann wird die nächste Clustergrösse
genommen etc.
Wie gesagt alles von Microsoft.
Beides war im Microsoft Technet zu finden allerdings nicht mit der
Microsoftsuche. man muss im wesentlichen erstmal mit google ein
interessantes Dokument im Technet lokalisieren von da kommt man dann
problemlos an die restlichen Dokumente. Zumindest war das 2003 so.
Inzwischen hat Microsoft ein Fatpatent bestätigt bekommen, da besteht
die Frage welche Auswirkungen dies hat. Eigentlich verwunderlich
FAT ist SEHR eng verwandt mit dem Dateisystem von CP/M. Statt der
unmittelbaren zuordnung der Sektornummern wurde noch die Möglichkeit
vorgesehen mehrere Sektoren zu Clustern zusammenzufassen und eine Datei
kann auch ein Verzeichnis sein.

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.