Hallo
Ich möchte eine SD-Karte betreiben. Für die CS, SDI und SCLK Leitung
habe ich einen 4050 verwendet um die 5V auf 3,3V zubringen. Aber jetzt
meine Frage wenn ich z.B. einen weiteren Baustein am SPI anschließe mit
5V oder den Chip(Meage32) Programmiere. Dann würde auf der SDO Leitung
5V anliegen wenn ich mit dem Baustein Kommuniziere und so somit die
SD-Karte beschädigen. Darum wollte ich an der SDO Leitung (von der
SD-Karte) eine Diode (1N4001) einbauen um dies zu unterbinden.
Ist dies möglich oder zerreisen mir da die Flaken?
Ich sage schon mal danke für hilfreiche Antworten!
Eine 1N400x ist in solchem Kontext sowieso immer falsch, egal wozu, weil
als Gleichrichterdiode viel zu langsam. Schaltdioden sind 1N4148 oder
BAT42.
Den Controller mit 3,3V zu betreiben kommt weshalb nicht un Frage?
Andreas Kaiser wrote:
> Eine 1N400x ist in solchem Kontext sowieso immer falsch, egal wozu, weil> als Gleichrichterdiode viel zu langsam. Schaltdioden sind 1N4148 oder> BAT42.
Mh schade habe nur 1N400x im Hause.
> Den Controller mit 3,3V zu betreiben kommt weshalb nicht un Frage?
Ich hab mir ein Entwichklungsboard zustammen gebaut und da ist alles auf
5V abgestimmt. Ich habe auch noch andere Bausteine am Controller die mit
5V betrieben werden müssen.
Angenommen ich betreibe die SPI Leitung nur mit 3,3V Geräten dann ist
das ja kein Problem aber wenn ich meinen Controller Programmiere dann
Laufen doch 5V durch oder und so mit werden meine Bausteine zerstört?
Ja, das kann die Bauteile zerstören wenn direkt angeschlossen.
Oft verwendet man einen Serienwiderstand 1-10K an der Leitung des 3,3V
Bausteins um die 5V über die Schutzdioden abzuleiten. Besser noch eine
BAT42 nach 3,3V um mögliche Nebenwirkungen durch die Verwendung der
internen Schutzdiode zu vermeiden.
Allerdings ist das nur dann machbar, wenn sichergestellt ist, dass der
Stromverbrauch auf der 3,3V-Versorgung immer grösser ist als der so
dahin abgeleitete Strom, sonst fährt die 3,3V-Versorgung hoch und man
hat wieder verloren. Notfalls mit mit zusäzlichem garantiertem
Verbraucher nachhelfen, z.B. LED.
Die ganz korrekte Version verwendet allerdings ein 74HCT125 Gatter an
SDO als Pegelwandler 3,3=>5, denn das ist am Eingang ganz offiziell mit
3,3V-Pegel zufrieden und liefert am Ausgang einen korrekten Pegel für
den Controller. Dessen Enable-Anschluss hängt dann an CS-Ausgang des
Controllers - und an einem Pullup-Widerstand 10-100K um sicherzustellen,
dass es während ISP inaktiv ist.
Julius Fischer wrote:
> Mh schade habe nur 1N400x im Hause.1N4148 und BAT42 (oder BAT43) solltest du dir mal ein paar beschaffen,
das ist Standardkram der immer mal gebraucht wird. Und die 1N4148 sind
ohnehin fast umsonst zu haben.
Ok erstmal danke.
Hätte ich nur mal 2 tage ehr gefragt habe mir vorgestern erst was bei
Reichelt gekauft. Da werde ich morgen mal zu Conrad dackeln.^^
Hab mal meine Schaltung hinzugefügt. So funktioniert das dann?
Danke für die schnellen antworten.
So funktioniert das nicht, denn der MISO Pin wird nie einen Low Pegel
sehen. Bau also zumindest mal einen Pulldown an die Kathode.
Dann hast du allerdings das Problem, dass der Highpegel nicht ausreichen
wird.
Eine wirklich gute Lösung fällt mir momentan aber auch nicht ein, außer
vielleicht einen 74HCT125 der als 3,3V -> 5V Wandler arbeitet und mit
OE\ an CS\ der Karte auch auf tristate schaltbar ist.
Die 4050er sind ok, aber SDO nicht. Da kommen gut 3V raus, minus 0,6V
für die Diode sind ca. 2,5V, und das erkennt der AVR nicht als 1. Nö, da
solltest statt dessen in den erwähnten 74HCT125 investieren (vergiss das
"T" darin nicht).
G kommt erstens an PB0 und zweitens mit 10-100K an +5V.
An deiner Stelle würde ich die SD-Card allerdings nicht an Vcc hängen.
Jedenfalls nicht an das gleiche Vcc wie die 5V vom AVR.
Ah ok ich hab das mal gemacht. Ist das so in Ordnung.
Mal ne dumme frage wie so kann ich den 125 nicht dauerhaft auf high
halten?
//EDIT
Ha ja die Chip ist ja aktiv wenn die leitung low ist.
Ja, ist ok so.
Wenn der '125 dauerhaft eingeschaltet ist, dann ist Essig mit ISP.
PS: Wenn man mit SS nichts besseres vor hat, liegt es nahe, diese
Leitung an Stelle von PB0 als SPI-SS/CS zu verwenden. Vielleicht willst
du T0 ja mal für irgendwas verwenden.
Offene Eingänge von ICs immer auf einen definierten Pegel legen. Ob Vcc
oder GND ist egal.
Ein bidirektionaler Pegelwandler in DIP ist mir leider auch nicht
bekannt.
Andreas Kaiser wrote:
> Offene Eingänge von ICs immer auf einen definierten Pegel legen. Ob Vcc> oder GND ist egal.
Wobei man dies nicht per Hardware machen sollte, sondern besser die
Pullups aktivieren oder den Port auf Ausgang schalten. So vermeidet man
Fehler: Besser einen offenen Port als einen der 5V treibt aber mit GND
verbunden ist...
Ok habe jetzt alle Eingänge und G Leitungen auf GND gelegt.
Der 125 ist doch aktiv wenn die G Leitung auf GND ist. Wieso muss ich
dort ein 50k Widerstand an VCC legen?
Was passiert, wenn der AVR grad per ISP programmiert wird? Der hängt in
dem Zeitraum im Reset und PB0 ist offen. Ohne Widerstand hängt also auch
der HCT125 am G-Eingang offen und macht was er will. Wenn das heisst,
dass er einschaltet (G=0), dann kollidiert er mit dem ISP, was grad die
MISO-Leitung verwendet. Mit Widerstand stellst du sicher, dass in diesem
Zeitraum G=1 gilt, der HCT125 also abgeschaltet ist.
Andreas Kaiser wrote:
> Was passiert, wenn der AVR grad per ISP programmiert wird? Der hängt in> dem Zeitraum im Reset und PB0 ist offen. Ohne Widerstand hängt also auch> der HCT125 am G-Eingang offen und macht was er will. Wenn das heisst,> dass er einschaltet (G=0), dann kollidiert er mit dem ISP, was grad die> MISO-Leitung verwendet. Mit Widerstand stellst du sicher, dass in diesem> Zeitraum G=1 gilt, der HCT125 also abgeschaltet ist.
Ahso alles klar danke für die ganzen Info's.
>Ein bidirektionaler Pegelwandler in DIP ist mir leider auch nicht>bekannt.
Welche gibt es den SMD Bauform?