Forum: Mikrocontroller und Digitale Elektronik Lesen ersten Sektor von uSD HC


von Jonas (Gast)


Lesenswert?

Hi,

ein Problem beim Auslesen vom ersten Sektor vo uSDHC(8G&16G).
1. die beiden Karten kann initilisiert werden
2. Auslesen vom CSD Register war kein Problem( die Werten waren richtig)
3. durch CMD17 um den 1.Sektor auszulesen,leider waren die Werten 
falsch.
Im Software habe ich so eingestellt in der Funtion sd_read_block():
   * nach dem Senden von CMD17 werde ich gucken ob der Rückwer 0 ist, 
wenn nicht return [1]
   * wenn erfolgreich dann warte die Antwort 0x00(timeout=400), wenn 
keine 0x00 zurück und timeout return [2]
   * dann warte ich auf 0xFE und timeout=400, wenn keine und timeout 
wieder return [3]
   * dann lesen ich 512Bytes und erfolgreich return [4]

ich habe insgesamt fünf mal probiert durch while loop, um den ersten 
Sektor auszulsen.
   # erstes mal war bei [1] zurüch gegangen
   # zweites und drittes mal bei [2] zurück gegangen
   # vieters und fünftes mal waren bis [4]
ABER Trotzdem waren die 510. und 511. Char nicht richtig. Die 512Bytes 
Daten waren auch nicht richtig.
Hat jemand solche gesehen oder? Die CSD Register ist richtig.

Viele Grüße
Jonas

von Markus W. (Firma: guloshop.de) (m-w)


Lesenswert?

Jonas schrieb:
> ABER Trotzdem waren die 510. und 511. Char nicht richtig. Die 512Bytes
> Daten waren auch nicht richtig.
> Hat jemand solche gesehen oder? Die CSD Register ist richtig.

Hallo Jonas,
erstmal willkommen im Forum!

Die Leute hier tun sich leichter, wenn du deinen Quellcode und 
vielleicht auch den Schaltplan mit einstellt.

Ich hatte schon ähnliche Probleme beim Lesen einer SD-Card, bei mir lags 
aber daran, dass ich während meiner Versuche auch noch den Programmer 
(USBasp) an den Pins des Mikrocontroller hängen hatte. Das Lesen hat 
dann zwar funktioniert, aber irgendwie nicht richtig.

Nützliche Links:
http://www.mikrocontroller.net/articles/MMC-_und_SD-Karten
http://www.dharmanitech.com/2009/01/sd-card-interfacing-with-atmega8-fat32.html
http://elm-chan.org/docs/mmc/mmc_e.html

von Matthias (Gast)


Lesenswert?

Die SDHC Karten sollen angeblich (teilweise?) nicht mehr 
rückwärtskompatibel sein, zu normalen SD-Karten. Möglicherweise geht es 
deshalb nicht.

Evtl. musst Du die SD-Spezifikation (Datenblatt zu deinen SD-Karten, od.
Hersteller Info) mit den Spezifikationsdaten einer funktionierenden 
Karte
vergleichen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.