Forum: Mikrocontroller und Digitale Elektronik Manche microSD Karten stören den SPI Bus


von Eduard S. (rfk)


Lesenswert?

Hallo allerseits. Zur Zeit arbeite ich mit einem Board (mit LPC2214), an 
dessen SPI Bus unter anderem ein Speicher sowie ein microSD Slot 
angebunden ist. Dabei ist mir aufgefallen, dass es mit manchen microSD 
Karten bei der Übertragung vom und zum Speicher zu korrupten Daten 
kommt. Mit anderen Karten des selben Herstellers (und natürlich ohne) 
funktioniert es einwandfrei. Das CS des Slots ist definitiv während der 
ganzen Zeit inaktiv (=high), das habe ich schon mit einem Oszi 
überprüft. Woran könnte das liegen und wie kann man sich davor schützen? 
Anscheinend spuckt die Karte auch deselektiert auf den Bus...!?

Und wo ich gerade schon dabei bin. ;-) Bei meinen Sandisk microSD Karten 
(und nur bei denen, habe noch Karten von fünf anderen Herstellern!) kann 
ich das CSD nicht auslesen. Es kommt auf CMD9 nur ein "Vollfehlerbyte" 
(0x7F). Sowohl CID als auch OCR funktionieren ohne Probleme und auch der 
Datenzugriff (R/W) verhält sich soweit korrekt.

Danke vorab!

von Olaf (Gast)


Lesenswert?

> Anscheinend spuckt die Karte auch deselektiert auf den Bus...!?

Wenn sie das machen wuerde, dann wuerde dir dein Oszi das doch
zeigen oder?

Kann es sein das dein System ansich schon sehr auf Kante genaeht ist und 
dann einfach die kapazitive Belastung an den Datenleitungen nicht mehr 
verkraftet?

Olaf

von zerrome (Gast)


Lesenswert?

Hallo,

hast du an DataOut der Karte einen pullup Widerstand ?

Du könntest auch mal versuchen Widerstände in Reihe in den Bus zu legen, 
vielleicht so 50-100 Ohm.

Grüße Daniel

von Eduard S. (rfk)


Lesenswert?

Ich habe das Problem nun lokalisiert und es ist auch reproduzierbar. 
Wenn ich die Karte initialisiere, bevor ich auf den SPI Flash zugreife, 
funktioniert es einwandfrei mit allen Karten. Das hatte ich bislang 
nicht gemacht, weil ich für mein kleines Testprogramm keine microSD 
Karte brauchte. Scheint aber wohl essentiell zu sein, sobald eine Karte 
steckt.

Bleibt also nur noch die Frage, warum ich bei Sandisk Karten keinen 
Zugriff auf das CSD bekomme.

Danke trotzdem! :-)

von Olaf (Gast)


Lesenswert?

> Scheint aber wohl essentiell zu sein, sobald eine Karte
> steckt.

Klingt logisch, da die Karte sonst ja im MMC-Mode ist und
die Leitungen eine andere Bedeutung haben.

> Bleibt also nur noch die Frage, warum ich bei Sandisk Karten keinen
> Zugriff auf das CSD bekomme.

Nicht wundern, geniessen! Ich bin immer wieder aufs neue erstaunt wie 
unterschiedlich und problematisch sich unterschiedlichste Karten so 
verhalten.

Olaf

von Eduard S. (rfk)


Lesenswert?

> Klingt logisch, da die Karte sonst ja im MMC-Mode ist und
> die Leitungen eine andere Bedeutung haben.

Ah, das macht sogar Sinn. Danke für die Erläuterung!

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.