Forum: Mikrocontroller und Digitale Elektronik SD-Karte kommt nicht aus dem Idle-State raus (am AVR)


von Lasse S. (cowz) Benutzerseite


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe jetzt glaub ich alle Beiträge gelesen, Code-Stücke übernommen, 
gegengeprüft und komme nicht weiter.

Meine SD-Karte meldet sich nach dem CMD0 perfekt mit 0x01. Allerdings 
kommt sie aus dem Idlestate auch nach nem CMD1 nicht raus, sie antwortet 
permanent (nach einigen 0xFFs) mit 0x01.

Ich hoffe ihr könnt mir helfen, oder den Beitrag zeigen, den ich 
übersehen habe.

Im Anhang ist meine Ansteuerungs-Funktion, sollten Sachen fehlen, 
einfach Bescheid sagen, werden schnellstmöglich nachgereicht :)

Prozessor ist ein ATMega2561V, ich programmiere mit AVR-GCC.


Grüße, Lasse

von Lasse S. (cowz) Benutzerseite


Lesenswert?

Hab ich irgendwas vergessen, oder hat niemand eine Idee, woran es 
scheitert?

Gruß, Lasse

von MeinerEiner (Gast)


Lesenswert?

Wie ist denn der SPI initialisiert?
Bzw. überhaupt alle SPI_...-Funktionen.

von Lasse S. (cowz) Benutzerseite


Lesenswert?

Hi,

im Anhang die spi.c

Mich verwundert vorallem, dass die Karte ja antwortet, auch unbekannte 
Befehle auch mit 0x05, aber eben nie aus dem Idle-Modus rauskommt...

Ausprobiert habe ich das mit unterschiedlichen SD-Karten (16MB, 1GB, 
2GB) und einer 16MB MMC. Überall exakt das gleiche Problem.

Gruß, Lasse

von Lasse S. (cowz) Benutzerseite


Angehängte Dateien:

Lesenswert?

Jetzt mit Anhang, sorry.

von holger (Gast)


Lesenswert?

>Ausprobiert habe ich das mit unterschiedlichen SD-Karten (16MB, 1GB,
>2GB) und einer 16MB MMC. Überall exakt das gleiche Problem.

Kleiner Tip:
Es reicht meist nicht CMD1 nur einmal zu senden.
Bei SD Karten nimm besser ACMD41.

von Lasse S. (cowz) Benutzerseite


Lesenswert?

Hi,

wenn ich meinen Code richtig verstehe, sende ich CMD1 öfter, bis zu 250 
mal, das sollte doch ansich reichen, oder? Auch wenn ich CMD1 
"unendlich" oft schicke, kommt stets 0x01 zurück..

Gruß, Lasse

von Lasse S. (cowz) Benutzerseite


Lesenswert?

Hi, niemand eine Idee? :(

Gruß, Lasse

von Sascha (Gast)


Lesenswert?

Hallo,

wenn ich deinen Code jetzt mal so mit einem funktionierendem vergleiche 
fällt mir folgendes auf:

was soll das deaktivieren von CS und 1x 0xFF senden zwischen den beiden 
Kommandos ??

Sascha

von Lasse S. (cowz) Benutzerseite


Lesenswert?

Hallo,

ich meine, das in den specs gelesen zu haben... Aber auch ohne kommt der 
gleiche Fehler...

Gruß, Lasse

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.