Hallo, ich glaube ich werde gleich beworfen, aber irgendwie bin ich unfähig einen Einstieg in die Lib zu finden. Ich möchte mit einem Atmega auf SDCard schreiben. Ich habe das vor einiger Zeit mal mit der Lib von Ullrich Radig gemacht. Da mein Projekt recht klein ist und ich keine großen Featureanforderungen habe, außer "wenig Programmspeicher", bin ich auf die petitFatFS-Lib aufmerksam geworden. Dummerweise verstehe ich z.B. schon nicht, wie/wo ich die auf meine PIN-Beschaltung anpasse. Die Schritte die zum schreiben nötig sind, würde ich ja noch aus den Sample fischen können. Ich bin auch nicht fähig ein Tutorial zu finden, welches diese Lib benutzt, ich finde nur: http://codeandlife.com/2012/04/02/simple-fat-and-sd-tutorial-part-1/ Und ich will mich genau nicht mit den Abgründen der SDCard-Ansteuerung befassen müssen ;) Habt ihr zufällig ein Tutorial an der Hand oder könnt mir zumindest die PIN-Sache sagen? (Das SPI feststeht ist klar, aber WP, CD sind ja bspw. noch offen) Vielen Dank
Sebastian Gabbert schrieb: > Und ich will mich genau nicht mit den Abgründen der SDCard-Ansteuerung > befassen müssen ;) Tja, genau DAS mußt du aber tun. Du mußt die Hardware-Handler für die allerunterste Ebene (Init, Typ dekodieren, Size etc. bereitstellen, Sektor lesen, Sektor schreiben) schreiben und dann kannst du ein File-System draufstülpen. Obendrauf mußt du dann noch die Hi-Level Sachen schreiben und auf das Ganze draufstülpen, also DIRECTORY-System (als Baum wie Linux oder mit Laufwerksbuchstaben wie DOS/Windows), FindFirst, FindNext, ChangeDir, und alles sowas. Tja, wenn man sowas schon mal durchgeübt hat, weiß man, was man an einem WinCE hat. W.S.
>Da mein Projekt recht klein ist und ich keine großen >Featureanforderungen habe, außer "wenig Programmspeicher", bin ich auf >die petitFatFS-Lib aufmerksam geworden. Welcher ATMega? Was ist für dich wenig Programmspeicher?
Danke für die Antworten! @W.S. Peinlich... ich habe die Übersichtsseite der Lib nicht ordentlich gelesen... Da steht ja genau das, was du sagst: > The low level disk I/O module is not a part of Petit FatFs module and it > must be provided by user. Zu den Hi-Level Sachen die du ansprichst, das war mir klar. Ich brauche hier nur den schreibenden Zugriff auf eine Datei, daher wäre da nicht mehr viel nötig gewesen. @holger Ich hatte mit einem Atmega8 gerechnet. Und gehofft das da rein zu bekommen, da das petitFS von ELM mit um die 4000Byte (max) auskommt, hatte ich gedacht da alles reinzubekommen. Der Rest ist eigentlich nur UART empfangen... Aber das muss ich jetzt wohl nochmal neu durchdenken. Bzw. habe ich gerade nochmal mit dem Ansatz "Ich suche was, bei dem ich einfach den Hardware SPI benutzen kann ohne selber was schreiben zu müssen" gesucht und bin (wo auch sonst) hier fündig geworden: http://www.mikrocontroller.net/articles/AVR_FAT32 Dann werde ich mal versuchen die zu benutzen, wenn ich da nicht schon wieder auf einem Holzweg bin. Danke für den Stupser in die Richtung Sebastian P.S. Meine Faulheit mich in die Sachen einzuarbeiten liegt pur in einem Zeitmangel. Ich will das kleine Projekt innerhalb der nächsten 4Wochen fertig bekommen. Also keine pure Ignoranz ;)
ChaN bietet auf der Petit FatFs-Seite eine Beispielsammlung, darin ein Beispiel für ATtiny85 und Kartenanbindung per SPI via USI. Weiterhin gibt es beim "großen" FatFs eine Beispielsammlung mit IO-Funktionen für AVR Hardware-SPI. PetFatFs-Beispielcode nehmen, Quellen zur USI-Ansteuerung verwerfen, Code in mmc.c ändern, in dem man beim FatFs mmc.c-Beispiel abschreibt.
Ich kann Dir ChaNs (Petit)FatFS nur empfehlen. Es ist gut dokumentiert, und einfach zu benutzen. Wie schon erwähnt, finden sich das fehlende "low level disk I/O module" im Beispielcode, das erspart Dir einiges Kopfzerbrechen. Falls Du damit nicht klarkommst, es gibt bei avrfreaks.net einen Diskussionsthread über die Anpassung von ChaNs Monitorprogramm an beliebige AVRs. Gruß, Bernhard
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.