MMC-SD

 

Für manche Projekte benötigt man mehrere Mega-Byte Speicher. Z.B. für einen MP3Player oder auch für die Datenerfassung. Da stellt sich die Frage: Was nehmen bei der unüberschaubaren Anzahl sich auf dem Markt befindlichen Speicherkarten? Mein Favorit ist eindeutig die MMC/SD-Karte. Dafür sprechen mehrere Gründe:

1. Die MMC/SD-Karte ist eine der kleinsten Speicherkarten.

2. Sie benötigt nur 4 I/O-Pins am Mikrocontroller und kommt ohne weitere Logik aus.

3. Der Anschluß gestaltet sich einfacher als bei so mancher anderen Karte (CF-Karte)

 

Schaltplan zum Anbinden der MMC/SD Karte an dem AVR µC

 

 

Die MMC/SD-Karte hat einen Spannungsbereich von 2,9 - 3,6V. Die Spannungsversorgung der MMC/SD-Karte wird mit Hilfe von 2 Dioden (je 0,7V Diffusionsspannung) gewonnen. (Natürlich solte für die Spannungsversorgung der MMC/SD-Karte etwa ein Spannungsregler von 3,3V eingesetzt werden.) Diese Schaltung ist nur ein Minimal-Beispiel, welches für meine Testzwecke aber ausreichte!

Der Treiber kann die MMC/SD-Karte in einen Software- und Hardware-SPI-Mode betreiben. Die MMC/SD-Karte kann an einen beliebigen Port angeschlossen werden (Software-SPI) oder am SPI-Bus (Hardware-SPI). Des weiteren beinhaltet nun der Source Code die Unterstützung von FAT16 (Read Only). Bisher wird das Lesen von Files und Anzeigen der Directorys unterstützt.

Achtung - Pinbelegung ist anders als im dargestellten Beispiel!

Probleme mit meinen FAT-System gibt es nur, wenn die MMC-Karte nicht partitioniert wurde. Die MMC/SD Karte muss mit dem Filesystem FAT16 formatiert sein nicht mit FAT32!

Der Sourcecode enthält die MMC-Library und die Library zur Unterstützung von FAT16 (LESEN). Getestet wurde der Sourcecode mit Mega32/103/128, und 128MB SD-Karten von Lexar, Hama und Hitachi.

Hard & Soft SPI AVR-MMC/SD-Card SourceCode WinAVR C v3.0 (04.11.2008)

 

Und hier noch die Dokumentation der MMC-Library.

Dokumentation mmc.c (12.06.2004)

 

Für die Aufnahme der MMC/SD-Karte diente ein alter ISA-Slot, wie es im Bild zu sehen ist.

 

MMC/SD - Description von HITACHI

 

MMC/SD Bus Timming

 

Anschlußbelegung der MMC/SD-Karte am SPI-Bus

PIN

MMC

SD

1

Chip Select(CS)

Chip Select(CS)

2

CMD/DI

CMD/DI

3

GND

GND

4

VCC

VCC

5

CLK/SCLK

CLK/SCLK

6

GND

GND

7

DAT/DO

DAT/DO

8

NA

NC

9

NA

NC