Forum: Mikrocontroller und Digitale Elektronik SD Karte als Medium für Datenlogging


von Michael W. (Gast)


Lesenswert?

Hallo, ich möchte bei einer Applikation auf einem xmc ein "Datenlogging" 
einrichten und bin auf der suche nach einer nicht allzu komplizierten 
Lösung auf sd-karten Basis. Der MC hat ja bereits ein Interface für SD, 
bevor ich mich damit beschäftige, will ich aber auch andere 
Möglichkeiten ins Auge fassen. Wie kann ich ein Filesystem zum laufen 
bringen, ohne alles selbst zu entwickeln. Was kann man empfehlen?

Vielen Dank, michael

von Klaus W. (mfgkw)


Lesenswert?

Wenn du häufig schreiben möchtest, ist eine Flashkarte vielleicht 
ungeeignet.

von TomA (Gast)


Lesenswert?

Hallo Michael,

vielleicht hilft dir das hier weiter:

  "http://elm-chan.org/fsw/ff/00index_p.html";

Habe damit schon mal mit einem AVR Controller, einen MP3-Player 
realisiert.

Im Moment bin ich dabei, auch einen Datenlogger, damit auszustatten. Ist 
allerdings ein 51er Prozessor.

Es gibt das Ganze auch als großes System, den Link findest du auf der 
Seite.

Gruß. Tom

von Luftfeuchte (Gast)


Lesenswert?

Openlog

von Christian B. (casandro)


Lesenswert?

Ich glaube ich hab mal mit dieser Dateisystemsimplementierung 
gearbeitet:

http://elm-chan.org/fsw/ff/00index_e.html

Die ist sehr klein, sehr einfach und unterstützt FAT.

Du musst halt Routinen haben, die auf die SD-Karte einen Block lesen bzw 
schreiben.

Danach würde ich Dir dringend empfehlen die Daten als Text zu speichern. 
Das hört sich zwar für manche Leute gleich unglaublich kompliziert und 
aufwändig an, reduziert aber die Gesamtkomplexität deutlich, da Du dann 
die Daten direkt mit Gnuplot oder OpenOffice Calk oder sonst was 
verarbeiten kannst.

von Luftfeuchte (Gast)


Lesenswert?

http://www.exp-tech.de/sparkfun-openlog

In der Bucht auch für etwa 12€.
Billiger kannst Du den nicht selbst bauen.
Funktioniert " narrensicher"?

von Picaxe-kompendium (Gast)


Lesenswert?

Openlog ist echt eine feine Sache und sehr simple in der Bedienung

http://zierath-software.de/phpBB3/viewtopic.php?f=3&t=27

von Stefan F. (Gast)


Lesenswert?

Ich bin mit der http://www.mikrocontroller.net/articles/AVR_FAT32 
Library zufrieden. Sie funktionierte bei meiner Anwendung auf Anhieb.

von Michael W. (Gast)


Lesenswert?

TomA schrieb:
> Hallo Michael,
>
> vielleicht hilft dir das hier weiter:
>
>   "http://elm-chan.org/fsw/ff/00index_p.html";
>
> Habe damit schon mal mit einem AVR Controller, einen MP3-Player
> realisiert.
>
> Im Moment bin ich dabei, auch einen Datenlogger, damit auszustatten. Ist
> allerdings ein 51er Prozessor.
>
> Es gibt das Ganze auch als großes System, den Link findest du auf der
> Seite.
>
> Gruß. Tom

Sieht sehr interessant aus.
Wo lerne ich am besten, wie man einen low level Treiber für eine SD 
Karte erstellt? Mein UC hat einen SD host controller, den man über SPI 
verwenden kann. Ist sowas denn kompliziert?

Danke, michael

von WehOhWeh (Gast)


Lesenswert?

Michael W. schrieb:
> TomA schrieb:
>> Hallo Michael,
>>
>> vielleicht hilft dir das hier weiter:
>>
>>   "http://elm-chan.org/fsw/ff/00index_p.html";
>>
>> Habe damit schon mal mit einem AVR Controller, einen MP3-Player
>> realisiert.
>>
>> Im Moment bin ich dabei, auch einen Datenlogger, damit auszustatten. Ist
>> allerdings ein 51er Prozessor.
>>
>> Es gibt das Ganze auch als großes System, den Link findest du auf der
>> Seite.
>>
>> Gruß. Tom
>
> Sieht sehr interessant aus.
> Wo lerne ich am besten, wie man einen low level Treiber für eine SD
> Karte erstellt? Mein UC hat einen SD host controller, den man über SPI
> verwenden kann. Ist sowas denn kompliziert?
>
> Danke, michael

Für deinen Low-level-Treiber hat Elm Chan auf seiner Webseite Beispiele 
für alle gängigen Controller. Zu empfehlen ist das einfachste 
ATMEGA-Beispiel mit Software SPI, das ist sehr leicht zu portieren. Die 
Examples gibts hier:
http://elm-chan.org/fsw/ff/00index_e.html
("FatFS sample projects..").
Im Endeffekt ist das ganze Low-Level Zeug schon fertig, kümmern musst du 
dich nur noch um die Ports oder ein paar mickrige SPI-Send - Funktionen.

Den Rest macht dann FAT-FS. Der Dateizugriff läuft dann über Funktionen 
wie f_open(), f_close() etc.

Ich habe das mal auf einem PIC32MX470 verwendet, da ging das 
überraschend einfach. Allerdings - dank einem Fehler auf der Platine nur 
mit Software - SPI. Laufen tuts aber problemlos.

von Michael W. (Gast)


Lesenswert?

Leider gibt es dort nichts für xmc4500.
Es wird mir daher nicht erspart bleiben, den SD Treiber selbst zu 
schreiben.
Wo lese ich am besten nach, wie man die eingebaute SD/MMC Schnittstelle 
verwendet? Es sind zwar alle Register im RM beschrieben, jedoch setzt 
dieses wohl voraus, dass man den standard kennt. Wie komme ich da am 
besten rein? Oder ist das eine Geheimwissenschaft?

von Stefan F. (Gast)


Lesenswert?

Die avrfat32 Library ist übersichtlich gemacht. Nur wenige Codezeilen 
haben mit der Hardware zu tun. Das kann man leicht auf andere Controller 
umschreiben.

Ich hab's von ATmega nach Xmega portiert - war ganz easy.

von Michael W. (Gast)


Lesenswert?

Der xmc4500 hat eine eigene MMC/SD Einheit. Wenn du sagst, ich könne die 
atmega Firmware portieren, meinst du dann, dass ich diese Einheit 
umgehehe und stattdessen SPI verwende? Ich kann mir die Vorgehensweise 
noch nicht vorstellen. Die Beschreibung der MMC Funktionen an meiner mcu 
ist für mich noch ein "spanisches Dorf" und die Register sind sehr 
spezifisch für den xmc.

von Stefan F. (Gast)


Lesenswert?

> meinst du dann, dass ich diese Einheit umgehehe und
> stattdessen SPI verwende?

Dem Blockschaltbild des xmc4500 entnehme ich, dass das SD-Karten 
Interface ein SPI Bus ist. Wie die Schnittstelle verwendet wird, musst 
du natürlich selbst herausfinden.

Oder nimmst notfalls einfache I/O Ports und Soft-SPI. Geht auch.

von Stefan F. (Gast)


Lesenswert?

Infineon hat eine Demo-Anwendung auf dieser Seite: 
http://www.infineon.com/cms/en/product/promopages/aim-mc/dave_downloads.html

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.