SPI und SD-Karte. Anschluss

OP #845087
Lesenswert?

Hallo zusammen,

ich habe ein kleines Problem mit meiner Beschaltung zur SD-Karte.
Ich setzte auf eine anderes Programm auf und versuche eine SD-Karte dort 
zu implementieren.
Momentan bin ich gerade dabei Fehler evtl bei der Beschaltung zu finden.
Da ich keine 3.3V zur Hand habe, habe ich ein ext. Netzteil verwendet, 
dessen Masse mit der des Testboards verbunden ist und eine Spannung von 
3,3V an die SD-Karte liefert.
Nach der Initialiseriung der SD-Karte (ich nutze mmc_lib siehe 
Codesammlung) sehen meine SPI-Pins folgendermasen aus (SD-Karte nicht 
eingesteckt):
CS   High  Ausgang
SC   High  Ausgang (gemessen mit einem normalenb Multimeter)
MOSI Low   Ausgang
MISO High  Eingang

Falls ich jetzt eine SD-Karte einschiebe, fließt Strom in mein Netzteil 
und die Spannungsanzeige zeigt mir, dass sie die Spannung auf ca 4,2V 
anhebt.

Da ist doch was faul, oder? Bloß was?
OP #845131
Lesenswert?

@bendikt
Was meinst du damit?
CS sollte ja im idle-Fall high sein.
SCK wird mir zwar als high angezeigt, scheint aber nur an meinem 
Popelmultimeter zu liegen. Da wird ja der Takt 0V-5V ausgegeben.
Und MISO ist ein Eingang, da kann also der "negative" Strom auch nicht 
herkommen, oder? Warum der High sein soll weiß ich auch nicht, ist eben 
in der Lib so und viele arbeiten damit.

Hmm. Falls Ich CS UND MOSI weglöte ist das Problem weg, und wenn ich CS 
ODER MOSI anlöte fließt wieder Strom in das Netzteil.

Kann das am Netzteil liegen und evtl. mit einem Spannungsregler nicht 
der Fall sein?
#845135
Lesenswert?

Josef Kaeufl wrote:
> Was meinst du damit?

Du kannst nicht auf ein IC das mit 3,3V läuft, 5V geben ! Rate mal wiso 
man hier im Forum bei der Suche nach +SD +5V 207 Treffer hat ? Genau, 
weil es nicht geht und man daher die 5V Signale auf 3,3V bringen muss.

> Außerdem ist das hier
> http://www.mikrocontroller.net/attachment/8582/1.png genauso gelößt.

Nur mit dem Unterschied, dass hier alles mit 3V läuft...
OP #845146
Lesenswert?

Ich hab das ganze schon mal mit nem Atmega128 und AtemagaDOS aufgebaut. 
Da läufter µC auch mit 5V und die SD-karte bekommt extra 3,3V. Die SPI 
Verbindungen sind dort auch direkt und es funktioniert. Das ist dann 
aber komisch.

PS: das mit 3.3V habe ich auch gerade gesehen. Habs auch gleich wieder 
gelöscht, war aber anscheinend zu langsam :)

PPS: Ich spüre ein unterschwellige Aggresion.
Gast #845170
Lesenswert?

naja, dein 3v3 netzteil hat das niedrigere potential gegenüber den 5V 
gegen die gemeinsame masse. es wird also zur stromsenke.
übrigens können manche netzteile gar keinen strom aufnehmen. das teil 
könnte sich also verabschieden.

entweder, du baust spannungsteiler für deine spi-ausgänge (*), oder du 
verwendest einen mit 3v3 versorgten pegelwandler (z.b. 74hc14).
nachteil der spannungsteiler ist, dass die maximale 
übertragungsgeschwindigkeit sinkt, weil sie die flanken verziehen.

(*) für den miso kanal brauchst du idr keinen, da die 3v3 als high 
erkannt werden. falls die 3v3 des miso nicht als high erkannt werden, 
kannst du sowas hier baun:

    ^ 5V
    |
   ,-,
   | |
   |_|
    |
    o--- MISO µC
    |
   _|_
   \ /  2x 1N4148
   ¯|¯
    |
    O--- MISO SD

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren