mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR SD-Karte


Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: c-hater (Gast)
Datum:

Bewertung
2 lesenswert
nicht lesenswert
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?

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Georg G. (df2au)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lies mal hier
http://woshub.com/removable-usb-flash-drive-as-local-disk-in-windows-7/
etwas über die Grundlagen. Links auf Werkzeuge sind auch dabei.

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Seal (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Manfred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter schrieb:
> Bei der funktionierenden Karte steht nur FAT16, mehr kann ich da nicht
> wirklich herauslesen bzw einstellen.

Plätte mal Deine Karten und formatiere sie: 
https://www.sdcard.org/downloads/formatter_4/

Autor: Seal (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Deine beide Stichworte sind MBR & VBR.

https://de.wikipedia.org/wiki/Master_Boot_Record
https://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.

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Seal (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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:).

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Damit müsste ich dann auf jedenfalls den Formatierungstyp der laufenden 
SD-Karte herausfinden?

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Georg G. (df2au)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

: Bearbeitet durch User

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.