Forum: Mikrocontroller und Digitale Elektronik SD Karte CMD1 und ACMD41, beide immer nur 0x01


von µluxx .. (uluxx) Benutzerseite


Lesenswert?

Hallo,
ich versuche eine SD Karte mit meinem uC anzusprechen. CMD0 geht.
Nur bekomme ich nach CMD1 immer nur 0x01 zurück.
Ich habe jetzt schon folgende Dinge durchprobiert:

- statt CMD1 Cmd55+ACMD41
- Dummybytes nach befehl mal CS high, mal low
- nur einmal CMD1 senden und danch mit CMD13 das idle bit testen

Meine SD hängt über 33Kohm pullups an clk+MOSI+MISo direkt am mit 3,3V 
laufenden uC.

Die Kommunikation selbst geht, ich kann R1 und R2 problemlos empfangen, 
nur Idle geht nie low.

An was könnte das noch liegen?
Achja den Thread zu ACMD41 immer nur 0x01 hab ich mir schon 
durchgelesen, und alle darin funktionierenden lösungen ausprobiert.
Ich verwende eine 128MB SD von SanDisk und eine 1GB µSD von kinston, 
beide verhalten sich gleich.

MFG,
µLuxx

von µluxx .. (uluxx) Benutzerseite


Lesenswert?

achja, was ich vergessen hab, mein SPI läuft auf ca. 125kHz

Edit: ich hab inzwischen rausgefunden dass die Karte auf CMD gar keine 
Antwort sendet, Sie will also CMD55+ACMD41, aber da wird Sie ja nie 
fertig...

von µluxx .. (uluxx) Benutzerseite


Lesenswert?

so inzwischen hab ich das problem sehr weit eingegrenzt:
Die Karten schicken auf ACMD41 einfach keine Antwort?!
Ich schicke 65535 mal ein Dummybyte, aber weder während die CRC gesendet 
wird, noch während der 0xFFFE Bytes danach bequemt sich die Karte eine 
R1 antwort zu senden. Bei CMD0 und CMD55 sendet sie aber ganz normal R1.
An was könnte das liegen? Am PC kann ich beide karten perfekt 
benutzen.

von µluxx .. (uluxx) Benutzerseite


Lesenswert?

hat keiner eine idee?

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.