Hallo,
ich habe an einem mega eine SD-Karte angeschlossen und mit der lib hier
von der Seite auch zum laufen gebracht. Das lesen klappt mit drei
verschiedenen Karten auch wunderbar. Aber wenn ich auf die Karte
schreibe, so kann ich zwar mit einer Karte die Daten weiterhin am xmega
sehen, aber mit den andern beiden karten nicht. Am PC sehe ich aber,
dass auf allen drei Karten die Daten geschrieben wurden.
Habe mir deshalb einmal die Eigenschaften der Karten angesehen. die
funktionierende Karte hat den einzigen unterschied zu den anderen, dass
bei "First physical Sector" 1 eingetragen ist, bei den anderen 8132. Da
das der einzige unterschied ist, denke ich, dass das Problem hier liegt.
Nur wie kann ich den Sector ändern? Habe zwar ein Partitionierprogramm
für die SD-Karten, jedoch kann man den Sector nicht ändern.
Kann mir da jemand helfen?
Peter schrieb:> Habe mir deshalb einmal die Eigenschaften der Karten angesehen.
Welche "Eigenschaften". Also: Womit genau angesehen?
> die> funktionierende Karte hat den einzigen unterschied zu den anderen, dass> bei "First physical Sector" 1 eingetragen ist, bei den anderen 8132.
Vermutlich ist die eine (die "funktionierende") Karte als Superfloppy
formatiert, die anderen hingegen haben eine HD-Struktur. Was wiederum
die Vermutung zuläßt, daß du die (nicht genauere spezifizierte)
"SD-Bibliothek" nicht richtig benutzt. Wenn HD-Struktur, kann es nämlich
mehrere Partitionen darin geben. Es sollte also gegenüber dem
Supperfloppy-Format ein zusätzlicher Schritt beim Programmieren nötig
sein: die Wahl der gewünschten Partition...
OMG, gibt es denn überhaupt noch richtige Programmierer oder nur noch
Leute, du unverstandenen Code fremder Leute zusammenkleistern?
Hallo,
danke für die Antwort. Ich verwende die Bibliothek von Daniel R. hier
von der Seite. Der Rest selber programmiert ;)
Bei der funktionierenden Karte steht nur FAT16, mehr kann ich da nicht
wirklich herauslesen bzw einstellen. Welches Programm zum Formatieren
und einstellen von Superfloppy wäre denn zu empfehlen, damit ich das
einmal testen kann.
Peter schrieb:> Leider bin ich mir nach wie vor nicht sicher ob es wirklich an diesem> Superfloppy Format liegt. der Link macht nicht da leider auch nicht zu> schlau.
Wie arbeitet dein Programm? Welche Sektoren der SD-Card werden beim
'mount' der Karte gelesen?
Deine beide Stichworte sind MBR & VBR.
https://de.wikipedia.org/wiki/Master_Boot_Recordhttps://de.wikipedia.org/wiki/Volume_Boot_Record
Danach kann man unterscheiden, ob alle Infos der FAT in Sektor 0 stehen
oder, ob in Sektor 0 auf eine Partition verwiesen wird.
Alle SD-Card bis 1 GByte, die ich verwendet habe, hielten sich daran.
Ein Tool, mit dem du deine SD-Cards untersuchen kannst, ist winhex.
Dieses Tool solltest du dir auf jeden Fall aus dem INet ziehen.
Danke für die Antworten.
Welche Sektoren wann durchsucht werden, kann ich nicht sagen, da ich die
fertige Bibliothek verwende und nur den Hardwareteil angepasst habe.
Werde die Schritte mit dem Formatieren nochmal versuchen um die neuen
karten auch von Sektor 1 starten zu lassen. Ich hoffe das löst das
Problem.
Trotzdem wundert es mich, dass ich die Karte die ich mit dem PC
beschreibe beim ersten mal richtig am AVR auslesen kann, erst wenn ich
die Karte mit dem AVR beschreibe, findet dieser nichts mehr auf der
Karte. Der Pc zeigt mir jedoch die gerade geschriebenen Daten an :S
Peter schrieb:> Trotzdem wundert es mich, dass ich die Karte die ich mit dem PC> beschreibe beim ersten mal richtig am AVR auslesen kann, erst wenn ich> die Karte mit dem AVR beschreibe, findet dieser nichts mehr auf der> Karte. Der Pc zeigt mir jedoch die gerade geschriebenen Daten an :S
Prüfe deine SD-Cards mit CHKDSK LW:
LW: steh für den Laufwerksbuchstaben (z. B. F:).
Hm hab die Karten nun geprüft und bekomme keine Fehler zurück. Nach wie
vor einziger Unterschied der "First physical Sector". Mit welchem tool
kann ich das ändern? Mit dem Formatierungsprogramm von SDCard.org klappt
das auch nicht?
Peter schrieb:> Mit welchem tool
Hast du den von mir zitierten Beitrag nicht gelesen? Da wird weiter
unten jeweils für Windows64 und Windows32 Schritt für Schritt erklärt,
wie man den notwendigen Filtertreiber installiert und auch wieder los
wird.
Die Unterschiede zwischen den Karten sollte dir die Datenträger
Verwaltung im Registerblatt "Volumes" sofort zeigen (keine Gewähr für
die Namen, kenne dein Windows nicht).
Solange du den Typ der Karte nicht änderst, bewirkt ein Neuformatieren
nichts. Es wird nur die bestehende Formatierung erneuert.
Mit einem Diskeditor könntest du alternativ den ersten Sektor und damit
die Info "dies ist eine Festplatt" löschen und dann neu formatieren
(Floppy Format ist dann Standard). Aber ich fürchte, das übersteigt noch
deine Kenntnisse.