Forum: Mikrocontroller und Digitale Elektronik SD-MMC-Card im SPI oder MMC Mode


von Fragender (Gast)


Lesenswert?

es ist wohl bekannt, dass SD und MMC Karten über den SPI oder den MMC 
Mode angesprochen werden können.

Viele Mikrocontroller sind mit SPI Schnittstellen ausgestattet, was das 
ansteuern der Karten über den SPI Bus nahelegt.

Die Ansteuerung der Karte kann man also rein softwareseitig umsetzen 
oder man bedient sich der bereits erwähnten SPI Peripherie des 
Mikrocontrollers.
Zweiters ist wohl performanter da hardwareseitig unterstützt.

Wie sieht es mit einer MMC Schnittstelle aus.
Muss man das rein softwareseitig umsetzen oder gibt es da auch 
Hardwareunterstützung in manchen Kontrollern?
Die Karten unterstützen ja beides. SPI als auch MMC.

Hier im Forum und im Netz findet man einiges an Quellcode, in dem die 
Karten im SPI Mode angesprochen werden. Gibt es auch Lösungen im MMC 
Mode?

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


Lesenswert?

Die Schnittstelle heißt in dem Fall SD-Bus. Die Beschaltung ist ähnlich 
dem SPI, das Protokoll ist alledings nicht offengelegt und somit hast Du 
schlechte Karten. Bleib beim SPI.

von Martin T. (mthomas) (Moderator) Benutzerseite


Lesenswert?

Es gibt einige Mikrocontroller mit eingebauter SD-Bus 
Hardwareschnittstelle. Nennt sich meist MCI (w.r.e. für Multimedia Card 
Interface). Quellccode zur Ansteuerung (Init, Block-Read, Block-Write) 
findet man u.a. in den Libraries/Beispielen der Controller- oder 
Compilerhersteller (vgl. z.B. Code Bundle für NXP LPC23xx/24xx, 
Beispiele von IAR und Keil/ARM für LPC23xx/24xx, Atmel AT91-Library f. 
AT91SAM9, w.r.e auch AVR32). Das SanDisk SD-Card Product Manual (ab?) 
V2.2 ist etwas auskunftsfreudiger betr. "4-bit-Bus" als ältere 
Fassungen.

von Mike (Gast)


Angehängte Dateien:

Lesenswert?

Hier die neueste Version der SD-Karten Spezifikation, einschliesslich 
SDHC Karten (ab 4 Gb). Dass das SD-Protokoll nicht offengelegt ist, ist 
leider ein weit verbreitetes Märchen. Lediglich der Krypto-Modus wird 
bedeckt gehalten, doch den braucht ein Normalanwender nie. Allerdings 
ist wohl für kommerzielle Nawendungen eine Lizenzgebühr zu bezahlen, 
weswegen manche Hersteller auf MMC-Karten ausweichen.
Auf jeden Fall würde ich den SD-Bus dem SPI bevorzugen, falls der uC 
erstenm unterstützt, denn er ist mehr als 4 mal schneller (4bit, 25MHz 
gegenüber 1bit, 20MHz). Für SPI spricht eigentlich nur die weite 
Verbreitung und die Tatsache, dass kleine Controller (8, 16bit ohne DMA) 
mit der hohen Datenrate ohnehin überfordert wären.

Gruss
Mike

von Olaf (Gast)


Lesenswert?

> Auf jeden Fall würde ich den SD-Bus dem SPI bevorzugen, falls der uC
> erstenm unterstützt, denn er ist mehr als 4 mal schneller (4bit, 25MHz
> gegenüber 1bit, 20MHz).

Naja, wuerde ich Lesegeraete oder Digitalkameras bauen wuerde
ich den sicherlich auch bevorzugen. Aber fuer das was die meisten
Leute machen reicht die Geschwindigkeit von SPI doch dreimal
aus.

Olaf

von Fragender (Gast)


Lesenswert?

es gibt für USB Anwendungen am Mikrocontroller Bausteine, wie z.B. den 
FT232R von FTDI, der einem eine RS232 nach USB Umsetzung macht.

Es gibt auch Bausteine, die über einen 16bit Bus angesprochen werden und 
eine USB Umsetzung machen.


könnte mir also vorstellen, sowas gibt es auch für MMC SD Karten.
Ein Baustein, der einen 16Bit Bus zum Mikrocontroller und ein MMC SD 
Interface zur SD MMC Karte hat.

Gibt es sowas?
Wenn ja, wo.

Googe hat mir da nicht geholfen.

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.