mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik brauchen SD-Karten genau 3,3V?


Autor: Josef Kkk (zumlin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

ich habe grad eine kleine Platine zusammengelötet und versucht damit 
eine SD-Karte auszulesen. Eigentlich nichts besonderes. Der Aufbau war 
mir klar, die Bibliothek dazu läuft schon auf einem anderen Board 
einwandfrei...
Aber nun funktioniert nichts. Ich kann einfach die Karte nicht 
"Initialisieren".
Die Ausgänge des Controllers sind mittels Spannugnsteiler(680 Ohm, 475 
Ohm) auf ca 3,3 Volt runter (was schon auf der alten Platine gut lief) 
und MISO ist direkt am Pin des µCers. Leider hatte ich diesmal keinen 
Spannungswandler zur Hand und daher ist auch VCC der Karte mittels 
Spannungsteiler auf ca. 3,3V genähert. Um genau zu sein auf 3,5V. Die 
Karte an sich sollte ja bis 3,6V aushalten. Aber wie gesagt tut sich 
garnichts. Woran kann das liegen. Das einzige, was an der Platine anders 
ist, ist VCC der Karte. Liegts wirklich daran???

Ach ja, als Karte verwende ich gerade eine 1GB UltraII. Hatte nichts 
einfacheres zur Hand.

Autor: H.j.Seifert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Spannuungsteiler für die Versorgung?? Klappt niemals.
Spendier einen 3,3V-Regler.

Autor: Josef Kkk (zumlin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Verdammt. Warum nicht? Was passiert da dann?

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was funktioniert genau nicht?
Schaltplan?
Warum nimmst nicht einfach einen 3,3V Regler und behebst die 
Spannungsteilerproblematik?

Wenn sich die beiden Schaltungen nur in der Versorgung der SD-Karte 
unterscheiden, dann liegt es genau da dran.

Autor: Josef Kkk (zumlin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Naja, es besteht ja noch die Möglichkeit, dass ich im Quellcode Mist 
gebaut habe. Man weiß sowas ja nie. (Zumindest ich nicht ;)

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Naja, es besteht ja noch die Möglichkeit, dass ich im Quellcode Mist
> gebaut habe.
Und das soll jemand ohne den Quellcode diagnostizieren?

Autor: Josef Kkk (zumlin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Gast
Naja, ich bin einfach davon ausgegangen, da ich die Bib schon in einem 
anderen Projekt im Einsatz hatte und als erstes natrülich auch bei deren 
Konfiguration nach Fehlern suchte, dass der Fehler zu 99% in der 
Schaltung liegt.
Daher auch meine Frage. Aber hier dann ein Codeschnippsel:
int main (void)
{
  wdt_enable(WDTO_1S);
  uart0_init();
  uart0_puts("initialisiere Hardware");
  init_hardware();
  
  char *inbuff = malloc(20*sizeof(char));

  uart0_puts("Lese SD-Karte");

  MMC_IO_Init();
  
  if(GetDriveInformation() != F_ERROR){
    uart0_puts("...SD erfolgereich");
    if(Chdir("/") == F_ERROR){
      Fopen("muster01.csv",F_READ);
      Fread(inbuff,20);
      Fclose();
     }
    uart0_putcn(inbuff,20);
  }  
  else 
    {
    uart0_puts("...nicht erfolgreich");
  }

  uart0_puts("betrete Endlosschleife");
  while(1)
  {    
    wdt_reset();
  }
  return 1;
}

Autor: // (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Verdammt. Warum nicht? Was passiert da dann?

BELASTETER Spannungsteiler?!

;-)

Autor: H.j.Seifert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
im Moment, wo du was an der Karte tust (Schreiben, lesen) brauchst du so 
50...100mA. Und nun schau mal, was dein Spannungsteiler hergibt. Und 
falls er das schafft - wieviel Spannung ist dann noch da?
Kurz: das ist Murks und funktioniert nicht.

Autor: Josef Kkk (zumlin)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Okayx, überredet

Autor: Sascha Weber (sascha-w)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ein paar Dioden in Reihe - anstelle des Widerstand's nach + ,würden es 
zur Not auch erst mal tun. Als Dauerlösung aber auch nicht zu empfehlen.

Sascha

Autor: Tobias Plüss (hubertus)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
mal schnell eine Frage wegen der SD-Karten Spannungsversorgung.
Ich will auf einem Board, wo ein LPC2468 sitzt, einen SD-Kartenslot 
vorsehen.
Der Mikrocontoller erlaubt ja über den MCIPWR-Pin das ein- und 
ausschalten der Spannungsversorgung der SD-Karte; genau sowas möchte ich 
auch in meinem Gerät einbauen - es soll so viel Strom wie möglich 
gespart werden. Also - der SD-Karte den Saft abdrehen, wenn sie nicht 
gebraucht wird.
Jetzt die Frage:
Darf ich die 3.3 Volt, die die Karte braucht, mit einem PNP-Transistor 
schalten? Ich dachte mir das in etwa so wie im Bild.
Über dem Transistor gehen dann ja ein paar mV verloren, die dazu auch 
noch abhängig vom Stromverbrauch der Karte sind - und die Frage ist, ob 
es so noch funktioniert, oder ob man das besser anders macht.
Warum ich gerade diese Transistoren nehme: weil ich die grade da habe.
Warum der Basiswiderstand vom NPN 4k7 ist: ich benutze eh ein 
Widerstandsnetzwerk da irgendwo in der Nähe, wo noch diese 4k7 frei 
sind.

Gruss

Autor: (Gast) == (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die paar mV über die CE-Strecke, auch wenn sie marginal lastabhängig 
sind, jucken die Card nicht. Dimensionierung geht auch OK.

Gruß Frank

Autor: Ulrich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die sauberste Lösung wäre ein Regler mit Shutdown, z.B. LP2951. Die 
einfache Basterlösung wäre ein Spannungsteiler der vom µC 
Ein/ausgeschaltet wird, und dann ein N-Darlington Transistor (oder 
komplementär Darlington) dahinter.

Autor: Tobias Plüss (hubertus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank,
danke. Ich habe es grade eben simuliert, mit einem angenommenen 
Laststrom von 300 mA. Dann kommen noch gut 3.1 V raus. Das reicht für 
die SD-Karte oder?

Ulrich,
der LP2951 kann 100 mA. Reicht das? Ich meine irgendwo gelesen zu haben, 
dass einzelne Spitzen auch > 100 mA sein können.

Autor: (Gast) == (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Spezifikation (zumindest eine von Kingmax) sagt 2,7..3,6V "Voltage 
range for operation". Stromspitzen/Transienten werden gepuffert, die 
300mA sind hoch angesetzt, also alles in Butter und wird so in der Art 
bei einem Produkt von uns eingesetzt.

Gruß Frank

Autor: Tobias Plüss (hubertus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Frank,
super Sache, vielen Dank!
Genau so baue ich es jetzt auch auf (gibt am Schluss dann auch ne LP).

Gruss

Autor: (Gast) == (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kleiner Nachtrag: Wenn Du Vcc wegschaltest, musst Du auch alle Leitungen 
vom µC zur SD-Card auf Low schalten, weil sonst die Klemmdioden der 
Karte nach Vcc leitend werden...

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>musst Du auch alle Leitungen
>vom µC zur SD-Card auf Low schalten,

Besser: Eingang tristate.

Autor: Tobias Plüss (hubertus)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hoffe, das macht der Controller von selbst (es gibt extra ein 
Register, wo man der Card den Saft abstellen kann - dann nehme ich mal 
an, dass er auch die Pins tri-stated....)

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Von dem Saftabdrehregister habe ich noch nichts gehört, aber viele 
Karten gehen in den Power-Down, wenn /CS längere Zeit inaktiv ist.

Autor: Axel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>dann nehme ich mal an, dass er auch die Pins tri-stated.

Ich nehme nicht an, dass man ausgerechnet bei diesen Bausteinen, die ja 
besonders viel in die Hand genommen werden an den Schutzdioden gespart 
hat.

Das Tri-Staten hat also auf diese Strukturen keinen Einfluss und ändert 
nichts am Klemmdiodenproblem.

Gruss
Axel

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Host muß tristaten, nicht die Karte.

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auch zu Empfehlen: Direkt an den VCC-Pins gegen GND-Pins des Kartenslots 
eine Kombination aus 10µF und 0,1µF Kerkos anlöten. Die Stromaufnahme 
beim Lesen und Schreiben ist kurzzeitig sehr hoch (Spitzen bis 2-3A ).

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Die Stromaufnahme
>beim Lesen und Schreiben ist kurzzeitig sehr hoch (Spitzen bis 2-3A ).

Nu mach mal halblang. Kerkos an der Karte sind sowieso Pflicht, wie an 
jedem anderen CMOS-Bauteil auch.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.