Hallo,
für diejenigen die nicht warten können, bis Ulrich die SD Karten Erweiterung dokumentiert und in die Firmware einpflegt, kann ich vieleicht hier schon mal kurz beschreiben wie man die SD Karte schon mal in Betrieb nehmen kann.
Zunächst ist zu sagen, dass Ulrich auf
http://www.ulrichradig.de/home/index.php/avr/mmc-sd alles wichtige beschreibt.
Der SPI bus des ETH Controllers wird also auch für die SD Karte benutzt. Die Pins der SDKarte, die an den Controller und die Spannungsversorgung angeschlossen werden, sind bereits oben beschrieben. Neben dem SPI Bus benötigt man noch ein Chipselect Signal für die Karte. Dies sieht man auch auf den Bilder vom UmbauMMCSD.zip von Urlich.
Es ist hier noch zu erwähnen, dass auf dem ETH_M32_EX die 3,3V Spannung bereits zur Verfügung steht. Anders als er ETH controller, ist die SD Karte aber nicht in der Lage 5V Pegel an den Dateneingängen zu vertragen. Daher müssen diese Pegel mit Spannungsteilern reduziert werden. Die einfachste Möglichkeit ist, wie Ulrich auf den Bildern in diesem Thread dokumentiert hat mit SMD Widerständen einen solchen unten an die Kontakte des Lochrasters anzulöten. Die 3,3V sind nach meiner Erfahrung nicht gerade kritisch. Man kann ohne weiteres die 5V halbieren, dann braucht man keine speziellen Widerstandswerte. Man kann also wie ich es getan habe von einem alten ATX Mainboard 4,7kOhm Widerstände ablöten. Die sind dort massenhaft vorhanden. Nimt man diese sowohl als Pulldown und Serienwiderstand, ist man in der Lage, ca. 2,5V zu erreichen, was bei mir mit einer Canon 32MB und einer takeMS 512MB Karte problemlos harmonierte.
Zur software ist zu sagen, dass ich den SD/MMC Treiber (mmc.c) von Ulrich ins Makefile vom ETH_M32_EX Projekt hinzugefügt habe. Ind der mmc.h müssen die entsprechenden Pins konfiguriert werden. Die bereitgestellte Fat-Funktionalität (in fat.c) ist aber noch sehr spartanisch. Glücklicherweise hat aber Stephan Busker (
http://www.mikro-control.de) einen vollständigen FAT Treiber entwickelt, der (bis auf die SD Karten Initialisierung) bei mir sehr schön funktioniert.
Da aber SD Karten und FAT Ansteuerung sauber getrennt sind, war es möglich Ulrichs SD Karten Routinen und Buskers FAT Treiber zu benutzen.
Letzterer ist in der hinsicht flexibel und modularisiert, das er mit dem mmc.c von Ulrich bestens zusammenarbeitet.
Damit ist es möglich, eine Datei im
Append mode zu öffnen, und alle paar Minuten einen log Eintrag zu schreiben. Man muss nur aufpassen, dass man die Karte nicht im falschen Moment, wen ner gerade schreibt, herauszieht, oder das Board reseted. Dann ist meist die Datei zerstört. Man sollte eine LED hinzufügen, die den SD Status darstellt. am einfachsten über die Chipselekt Leitung.
Viel Erfolg!
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.