Forum: Mikrocontroller und Digitale Elektronik SD-Karte - Initialisierung


von Thomas (Gast)


Lesenswert?

Hallo Leute!

Ich hätte ein paar Fragen bezüglich zur Initialisierung einer SD-Karte 
V2+:

- Haben alle SD-Karten vom Typ V2 (SDHC/SDXC) einen SPI-Modus?

Da ich mich schon ein paar Tage damit beschäftige und bei der 
Initialisierung feststecke, wollte ich nachfragen, ob man die Karten 
folgendermaßen ansprechen muss:

1) Slave Select = High Level
2) 74+ Dummy Clocks(0xFF) (habe hier über 200 Clocks)

3) Slave Select = Low Level

4) CMD0[] = {0x40,0x00,0x00,0x00,0x00,0x95} werden gesendet
   - warte auf R1 = 0x01

5) CMD8[] = {0x48,0x00,0x00,0x01,0xAA,0x87} werden gesendet
   - warte auf R1 = 0x01, dann R7 = 0x00-0x00-0x01-0xAA

6) CMD58[]  = {0x7A,0x00,0x00,0x00,0x00,0xFD} werden gesendet
   - bekomme als Antwort: R1 = 0x01, R3 = 0x00-0xFF-0x80-0x00
   Frage: ist R3 richtig?

7) CMD55[] = {0x77,0x00,0x00,0x00,0x00,0x65} werden gesendet
   - warte auf R1 = 0x01
8) ACMD41[] = {0x69,0x40,0x00,0x00,0x00,0x01} bzw.
   ACMD41[] = {0x69,0x00,0x00,0x00,0x00,0x01} werden gesendet

  ab hier bleibt die SD-Karte hängen, d.h. nach diesem Befehl gibt's 
keine Antworten mehr bzw. reagiert auf keine weiteren Befehle (nur 
ständiges 0xFF)

Ich habe den Verdacht, dass meine SD-Karte von Kingston  8 Gb Class 
4(SN: SD-K08G) keinen SPI-Modus unterstützt. Oder irre ich mich?

von Thomas (Gast)


Lesenswert?

Das Problem ist gelöst, in dem ich die Karte aus der SD-Karten-Fassung 
herausgenommen und wieder eingesteckt habe. Für mich nicht ganz 
nachvollziehbar, aber es hat nun geklappt.

muss lauten wegen HCS = 1 -> 0x40
ACMD41[] = {0x69,0x40,0x00,0x00,0x00,0x01}

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.