Forum: Mikrocontroller und Digitale Elektronik µSD-Karte an ATmega128 - verwirrende Spannungspegel


von Benjamin U. (utzus)


Angehängte Dateien:

Lesenswert?

Guten morgen,

da ich gerade verzweifelt versuche, eine µSD-Karte an meinem 
ATmega128(3,3V;3,6864MHz) in Betrieb zu nehmen, und nicht weiterkomme, 
wende ich mich mal an euch.

Ich habe erst fertigen Code verwendet, um zu sehen, ob es überhaupt 
funktioniert, aber es hat nicht :-/ Also hab ich versucht dem Problem 
auf die Spur zu kommen, hab den Code immer weiter runtergebrochen und 
bin nun bei den PINS des ATmega angekommen.

Zuerst meine Annahme: Ich habe gelesen, dass die PINS einer µSD-Karte 
ohne Initialisierung hochohmig sind, stimmt das?

Denn ich habe folgende Messungen an den SPI-Pins gemacht gemacht:
(E=Eingang, A=Ausgang, PU=PullUp, /w= Ohne Pullup)
Ohne Karte im Card-Slot
1
     SS   SCK  MOSI  MISO
2
E PU 3,3  3,3  3,3   3,3  V
3
  /w 30   30   30    30   mV
4
A  L 0    0    0     0    V
5
   H 3,3  3,3  3,3   3,3  V
passt also!

Mit Karte im Card-Slot
1
     SS   SCK  MOSI  MISO
2
E PU 3,2  2,9  0,42  3    V
3
  /w 0,4  2,9  0,4   2,9  V
4
A  L 0    1,1  0,3   0    V
5
   H 3,2  3,1  0,81  3,24 V

Eigentlich hätte ich jetzt erwartet, dass beide Messungen gleich 
aussehen, denn die Karte sollte ja hochohmig sein, scheint sie aber 
nicht zu sein. ISP-Stecker habe ich abgezogen (SCK-Pin).

Ich hab leider grad kein Oszi da, nur ein Multimeter, weshalb ich nicht 
sagen kann, ob die komischen Spannungswerte durch eine Schwingung 
entstehen oder statisch sind. Da ich den Versuch aber 2 mal gemacht habe 
und die Werte SEHR identisch sind, gehe ich davon aus, dass es statisch 
ist. Die Versorgungsspannung bleibt immer bei 3,30 V.

Ich hab noch die wichtigen Auszüge aus dem Schaltplan angehängt.

Habs schon mit 2 verschiedenen SD-Karten probiert, aber auch hier das 
gleiche Fehlerbild!

Hat jemand eine Idee, woran es liegen kann? Oder hatte auch das Problem? 
Erst dachte ich, ich hätte VDD = 3V3 und VSS = GND verwechselt, aber das 
habe ich überprüft!

Bin für jeden Tipp dankbar,
Benni

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Benjamin Utz schrieb:
> Bin für jeden Tipp dankbar

Zuerst einmal läuft ein normaler ATMEGA128 nicht mit 3.3V, laut 
Spezifikation.

von holger (Gast)


Lesenswert?

>Ich habe erst fertigen Code verwendet, um zu sehen, ob es überhaupt
>funktioniert, aber es hat nicht :-/

Welchen Code? Wo hakt es?
Das sind doch sehr wenig Infos.

von Benjamin U. (utzus)


Lesenswert?

>Knut Ballhause schrieb:
>> Benjamin Utz schrieb:
>> Bin für jeden Tipp dankbar
>
> Zuerst einmal läuft ein normaler ATMEGA128 nicht mit 3.3V, laut
> Spezifikation.

Okay, hab den ATmega128L verwendet. Sorry

>holger schrieb:
>> Benjamin Utz schrieb:False
>>Ich habe erst fertigen Code verwendet, um zu sehen, ob es überhaupt
>>funktioniert, aber es hat nicht :-/
>
> Welchen Code? Wo hakt es?
> Das sind doch sehr wenig Infos.

Diese Beschreibung hab ich weggelassen, da ich das Problem ja schon auf 
die mir unerklärlichen Portspannungspegel runtergebrochen habe. Hab den 
Code "ELM ChaN FatFs FAT(12,16,32)-Dateisystem" aus dem Wiki verwendet 
und er springt gleich aus der mmc_init() mit FALSE raus.

Es muss also irgendwie an der Hardware liegen, wenn die uninitialisierte 
Karte meine Ports so beeinflusst. Ich werd nochmal alles durchmessen!

Aber danke schonmal,
Benni

von Benjamin U. (utzus)


Lesenswert?

## PAUSE ##
ich glaube der Fehler liegt in der Hardware. Anscheinend passen das 
Footprint und mein Schaltplansymbol nicht zusammen! :-/

von max (Gast)


Lesenswert?

Bei µSD ist das SPI Interface optional. Du bist dir sicher, dass deine 
Karte dieses anbietet?

von Heinz (Gast)


Lesenswert?

max schrieb:
> Bei µSD ist das SPI Interface optional. Du bist dir sicher, dass deine
> Karte dieses anbietet?

Das sollte aber die Spannungen nicht beeinflussen. Mir ist bis jetzt 
auch keine micro SD-Card ohne SPI-Interface untergekommen.

Wichtig wäre es den (kompletten) Schaltplan und den Aufbau (Photo) zu 
sehen.

von Flip B. (frickelfreak)


Lesenswert?

Miso ist halt nicht hochohmig sondern ausgang der karte

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

max schrieb:
> Bei µSD ist das SPI Interface optional.

Mag sein, aber alle mir bisher untergekommenen µSD bis einschliesslich 
2GB konnten SPI. Ich denke auch dass das Problem in der Hardware liegt. 
Ich würde vielleicht erstmal den Kartenslot mit Fädeldraht an die 
entsprechenden Pins des Mega128L löten und herausfinden, ob es damit 
funktioniert, wenn ich mir seitens des Footprints unsicher bin. 
Bestenfalls piepst man die einzelnem Pins mal durch, wo an der Karte 
diese ankommen.

von Benjamin U. (utzus)


Lesenswert?

Heinz schrieb:
> max schrieb:
>> Bei µSD ist das SPI Interface optional. Du bist dir sicher, dass deine
>> Karte dieses anbietet?
Ich habe hier 3 verschiedene, eine wird hoffentlich funktionieren

> Das sollte aber die Spannungen nicht beeinflussen. Mir ist bis jetzt
> auch keine micro SD-Card ohne SPI-Interface untergekommen.
>
> Wichtig wäre es den (kompletten) Schaltplan und den Aufbau (Photo) zu
> sehen.

Auch das hätte vermutlich nicht viel gebracht, auf dem Foto sieht man 
fast nichts, denn die Leiterbahnen sind ja unter dem µSD-Slot. Das 
Layout hätte noch etwas gebracht. Aber ich hab den Fehler fürs erste 
gefunden: in meinem Footprint sind die Pins verdreht :-/ Hab ich wohl 
beim malen einen Fehler gemacht.

Also danke erstmal an alle und ich versuch das zu fixen!

>Ich würde vielleicht erstmal den Kartenslot mit Fädeldraht an die
>entsprechenden Pins des Mega128L löten und herausfinden, ob es damit
>funktioniert, wenn ich mir seitens des Footprints unsicher bin.

so wirds gemacht! Umweg über SD-Adapter und Stiftleiste :D Bin grad 
werkstattmäßig verhindert!

von B.A. (Gast)


Lesenswert?

Knut Ballhause schrieb:
> Zuerst einmal läuft ein normaler ATMEGA128 nicht mit 3.3V, laut
> Spezifikation.

Bei der niedrigen Frequenz würde es mich wundern wenn er nicht läuft.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Das hat weniger was mit der Frequenz zu tun. Der Mega128 ist ein Opa, an 
dem aus Kompatibilitätsgründen einige Prozessänderungen vorbeigegangen 
sind. Man sollte den normalen Mega128 ohne L nicht unter 4V laufen 
lassen, egal bei welcher Frequenz. Das kann klappen, muss aber nicht. 
Der L-Typ kann das ohne Probleme, dafür aber nur bis 8Mhz über den 
gesamten Spannungsbereich. Ist halt noch alte Technik.

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.