Lesefehler SDHC-Karte
SDSC-Karte 2G (Transcend) - alles ok
SDHC-Karte 4G (extrememory) - Lesefehler
Ich habe den Verdacht, dass die Karte zwar die erwartete Antwort schickt, aber vorher 1 Bit verschluckt wird, so dass das Alignment der Bits im Byte falsch ist und so die erwartete Antwort auf CMD0 (0x01) nicht gelesen wird, statt dessen wird 0x03 gelesen. Warum das so sein könnte ist mir aber völlig unklar.
Zu diesem Problem hat mir ein Leser dieser Seite einen Hinweis gegeben, den ich hier weitergebe:
“Ich habe den Artikel zum Thema SD Karten gelesen und auch ich habe das Problem, dass bei manchen Karten die Bits verschoben sind wobei andere Karten ohne Probleme funktionieren. Nach einigem Probieren und viel Lesen in Foren bin ich auf eine Info gestoßen, die sagt, dass nicht alle SD Karten zwischen Kommando und Response 8 clocks oder ein Vielfaches davon warten. Es kann also auch Karten geben, die schon nach 5 bit reagieren. Somit müsste man sich irgendwie auf die Daten synchronisieren, was schwierig wird wenn man Hardware SPI verwendet. Mit genug Programmieraufwand ist das sicher machbar, aber bestimmt auch ziemlich rechenintensiv. Vielleicht hilft diese Info ja irgendwie weiter.”