Joboter
03.11.2009, 21:06
Hallo!
Im Prinzip gibt es schon unzählige Beiträge zur Anbindung von SD-Karten an einen Atmega. Es funktioniert auch alles bei mir ganz gut.
Hier geht es um eine Frage, auf die ich im Internet keine befriedigende Antwort finden konnte:
Der Daten-Ausgangspin der SD-Karte (DO) wird bei den meisten Lösungen direkt an MISO angeschlossen. Wenn nun ein Programmer UND die SD-Karte angeschlossen wird (zB man vergisst die Karte herauszuziehen), könnte die Karte beschädigt werden.
Ich habe schon folgende Lösungen ausprobiert, die nicht funktioniert haben (Initialisierung war dann nicht erfolgreich):
- Diode zwischen DO der SD-Karte und ATMega, Strom der vom AVR zur SD fließt sollte gesperrt werden)
-3,3V Zenerdiode zwischen DO der SD-Karte und GND (Programmierung ging nur, wenn SD nicht eingesteckt und SD nur wenn Programmierer nicht eingesteckt, aber auch nicht ganz zuverlässig)
- Transistor der die Verbindung zwischen AVR und SD einschaltet (hier auch zusätzlicher Pin notwendig)
Gibt es da irgendeine elegante Lösung (zB bidirektionaler Pegelwandler in DIP Bauform). 2 Pegelwandler möchte ich möglichst vermeiden.
Wie tolerant sind die SD-Karten, halten die sowas auch öfters ohne Schutz aus?
Vielen Dank im vorraus,
Joboter
Im Prinzip gibt es schon unzählige Beiträge zur Anbindung von SD-Karten an einen Atmega. Es funktioniert auch alles bei mir ganz gut.
Hier geht es um eine Frage, auf die ich im Internet keine befriedigende Antwort finden konnte:
Der Daten-Ausgangspin der SD-Karte (DO) wird bei den meisten Lösungen direkt an MISO angeschlossen. Wenn nun ein Programmer UND die SD-Karte angeschlossen wird (zB man vergisst die Karte herauszuziehen), könnte die Karte beschädigt werden.
Ich habe schon folgende Lösungen ausprobiert, die nicht funktioniert haben (Initialisierung war dann nicht erfolgreich):
- Diode zwischen DO der SD-Karte und ATMega, Strom der vom AVR zur SD fließt sollte gesperrt werden)
-3,3V Zenerdiode zwischen DO der SD-Karte und GND (Programmierung ging nur, wenn SD nicht eingesteckt und SD nur wenn Programmierer nicht eingesteckt, aber auch nicht ganz zuverlässig)
- Transistor der die Verbindung zwischen AVR und SD einschaltet (hier auch zusätzlicher Pin notwendig)
Gibt es da irgendeine elegante Lösung (zB bidirektionaler Pegelwandler in DIP Bauform). 2 Pegelwandler möchte ich möglichst vermeiden.
Wie tolerant sind die SD-Karten, halten die sowas auch öfters ohne Schutz aus?
Vielen Dank im vorraus,
Joboter