Forum: Mikrocontroller und Digitale Elektronik SD-Card,, SPI, Geschwindigkeit erhöhen


von Tilo (Gast)


Lesenswert?

Hallo

Ich verwende gerade ein ADUC7026 Evaluationboard. an das
Board habe ich einen SD zu Micro-SD Adapter über Pfostenstecker
verbunden. Die Leitungen habe ich sehr kurz gehalten, max 2cm.
Direkt an den Adapter habe ich einen 10uF Tental angebracht,
um die Versorungsspannung zu stabilisieren.

In dem Adapter steckt eine MicroSD Karte

Mit ca. 5MHz läuft die Karte ganz gut. Die Datenrate liegt bei
ca. 200kb/sek (getestet mit Stoppuhr und großer Datei).

Jetzt würde ich gerne den SPI-Takt erhöhen. Bei höheren Taktraten
wird die Karte nicht mehr richtig initialisiert und sie lässt
sich nicht mehr richtig ansprechen.

Ich habe mir also auf einem Oszi das CLK-Signal und MOSI-Signal
angesehen (getriggert auf CLK). Mit einem Rechtecksignal
hat das ganze nicht mehr so viel Ähnlichkeit. Wenn 0xAA,
also 10101010 gesendet wird, sieht das schon eher wie ein Sinus
aus.

Ausserdem ist auf der Versorgungsspannung ein leichter Sinus
zu erkennen, der synchron CLk ist. Die Amplitude liegt unter 150mV,
bei Vdd=3,3V.

Leider kenne ich mit höheren Frequenzen nicht mehr so aus.
Ich hätte als erstes einen Treiber in die Signalleitungen gesetzt.

Ich konnte zu diesem Thema viel finden, also viele die Probleme
bei hohen Taktraten haben. Ich konnte allerdings wenig konkrete
Lösungen finden.

Was würdet ihr mir empfehlen?

Vielen Dank, Tilo

von Jörn K. (joern)


Lesenswert?

Vor dem gleichen Problem stand ich auch schon. Dabei hat sich 
herausgestellt, dass der SPI Bus des ADUCs nur bis ~3.5 MHz funktioniert 
und gespect ist und alles andere purer Zufall ist.

Gruß Jörn

von Tilo (Gast)


Lesenswert?

Wie hast du das herausgefunden, bzw. was tat bei dir nicht?
Im Datenblatt ist eine Tabelle, die bei 3,482MHz aufhört.
Dort steht aber auch drin, dass dies nur eine "Zusammenfassung"
ist und sich nach der angegebenen Formel fSPI=41MHz/(2*(1+SPIDIV))
berechnen lässt.
Andererseits steht weiter vorne, dass bei 3,48MHz Schluss ist.
Als Slave sollen aber bis zu 10MHz drin sein.

Vielleicht sollte ich mal das Datenblatt richtig lesen.

Schade, dann geht wohl nicht mehr. Wobei ich dann wohl schon Glück
habe, dass es mit 5MHz läuft.

von Jörn K. (joern)


Lesenswert?

Bei mir war es so, dass die Beziehung zwischen Takt und Daten nicht mehr 
gepaßt haben. Eine Nachfrage bei Analog Device hat die traurige 
Gewissheit gebracht, dass der SPI Bus nicht mehr kann...

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.