FAT16 Dateisystem für Compact Flash auf AVR

Hallo Group!

Für meine Diplomarbeit hab ich vor Messdaten auf Compact Flash zu speichern damit man diese am PC wieder auslesen und weiterverarbeiten kann. Nun bin ich auf der Suche nach einem C-Code der das Fat16 Dateisystem auf meiner CF Karte beherscht. Es sollte möglich sein, dass man Datein erstellen, schreiben und ggf. lesen und löschen kann. Das ganze soll dann auf einem ATmega128 laufen. Ganz ideal wäre natürlich wenn die Ansteuerung für CF gleich intergriert wäre, ist aber nicht nötig. Diverse Suchen im Netz haben leider nichts passendes ergeben oder Quellcode war nicht veröffentlicht.

Danke schon mal im Voraus

MFG Fuchs Michael

Reply to
Fuchs Michael
Loading thread data ...

Hi!

such mal nach mp3-playern. z.b yampp .Da findest du sowas am ehesten. Es gibt auch die Möglichkeit eine große Datei auf der CF-Karte zu erstellen, den Anfangssektor über den Rechner rauszufinden und von dem aus einfach sektorweise linear auf die Karte zu schreiben. Das ist vieleicht einfacher als ein Dateisystem zu integrieren.

mfg Jan

Reply to
Jan Stumpf

Hallo Group

Die Variante mit einer Datei die so groß wie die Karte ist und nur Nullen enthällt, hab ich auch schon ins Auge gefasst. Nur ist es so, dass unser Projekt ein Messpedal ist das am Tag öfter eingesetzt wird. Dieses Pedal ist für einen Sportarzt und der soll die Auswertung auch bedienen können, die Karte löschen und dann wieder in den Datenschreiber einsetzen und es wieder einsetzten können. Also soll das ganze ziemlich Benutzerfreundlich sein. Und das einfachste ist wenn die Datei über Windows geöffnet, bearbeitet und auch wieder gelöscht werden kann. Weiters kommen auf die Karte mehrere verschiedene Datensätze drauf (je nachdem wie oft das Pedal verwendet wird ohne die Karte zu löschen). Bei den diversen MP3 Projekten im Internet bekommt man großteils nur den Teil zum auslesen von CF Karten, jedoch fehlt der Teil zum Schreiben von Daten. Ich hoffe mein Problem ist jetzt etwas klarer.

MFG Fuchs Michael

"Fuchs Michael" schrieb im Newsbeitrag news:4040af03$0$13188$ snipped-for-privacy@newsreader02.highway.telekom.at...

speichern

CF

Quellcode

Reply to
Fuchs Michael

Fuchs Michael schrieb im Beitrag ...

Na ja, das ist das woraus DOS zum wesentlichen besteht. Nimm halt ein Open Source DOS in der dir angenehmen Programmiersprache, z.B. DOS-C, und aendere es auf Flash ab. Du dachtest das waere einfacher ? LOL.

--
Manfred Winterhoff, reply-to invalid, use mawin at despammed.com
homepage: http://www.geocities.com/mwinterhoff/
 Click to see the full signature
Reply to
MaWin

Fuchs Michael schrieb:

Also ich benutze hier Windows, aber von freundlich sehe ich ehr wenig.

Wenn du dich auf das Rootdirectory und kurze Dateinamen (8.3) beschränkst ist das gar nicht so kompliziert. Schau dir den Aufbau des FAT-Dateisystems halt mal an.

Gruß Dieter

Reply to
Dieter Wiedmann

googlen in newsgroup comp.arch.embedded nach FAT12 oder FAT16: Frage taucht häufiger auf. Stichwort "FAT12 Dunfield" sollte dort wohl thread geben der Links zu Variante für FAT12 hat. Ich vermute aber (immer) selber schreiben ist einfacher als anderer Leute undokumentieren "kostenlosen" Code debuggen. Ich werkle hier auch an sowas ( aber in FORTH und an Bus eines Mitsubishi-6502 hängend ). Man kommt wohl von 4 MB bis weit über 32 MB Karten mit FAT16 hin, aber das Gerät sollte die Karte wohl selber formatieren. Dann kann man vermutlich auch Partitions, Directories vermeiden. Bei Einchip-Controllern bin ich wegen des RAMs skeptisch, einige kByte wären schon wünschenswert, da ein "Cache" für mehrere Sektor im RAM der auch Teile der FAT hält den Ablauf vereinfacht. "Moderne" Controller könnten am Bus wegen Zugriffszeit Probleme haben: 150nsec sind für 2,5 MHz 6502 schon fast zu langsam. Ich würde auch an Ports wegen ESD externe 74HCxx-Treiber zwischenschalten. Ausser den newsgroup-diskussionen die ich nach editeren & ausdruck wieder gelöscht habe, habe ich die übrigen im www zu finden specs zu CF & FAT hier noch auf Platte. Kann sie bei Bedarf auf CD kopieren und verschicken. Enthält u.A. Kapitel aus altem Buch das FAT12/FAT16 nach Stand DOS 2.x erläutert, das wäre die Minimalversion.

MfG JRD

Reply to
Rafael Deliano

"Fuchs Michael" schrieb:

Wie wär's denn mit Linux? Wirst wahrscheinlich trotzdem noch 'ne Menge anpassen müssen aber musst nicht bei Null anfangen. Google ["embedded linux" fat16 sourcecode] fördert so einiges zutage.

Hajü

Reply to
Hans J. Ude

Hans J. Ude schrieb:

Alternativ dazu ist vielleicht auch Google [atmel avr "cf card"] interessant. Gleich der erste Eintrag.

Hajü

Reply to
Hans J. Ude

Joerg Schneide schrieb:

leichter

Weil man mit einem Dateisystem, wenn erst einmal implementiert ist, viel flexibeler ist. Jeder weiss, dass jede Software im Laufe der Zeit geändert und erweitert wird. Kunde kommt an mit "kann man nicht noch dies ...? Man könnte doch vielleicht ..."

Warum? Jede Digicam und jeder MP3 Stick kann das. Und der notwendige Code ist doch vorhanden. Man muss nicht das Rad neu erfinden. Und irgenwann kommt das nächste Projekt. Dann brauchst Du dein FAT16 nur aus dem Hut zu ziehen.

Ja, aber verstehen musst Du es nur einmal. Danach kannst Du es einfach nur benutzen. Musst nicht an einem eigenen "dateisystem" rummurksen, wenn etwas auf Applikationsebene geändert werden soll. Außerdem sind intelligente Peripheriegeräte doch viel schicker. Besonders wenn sie weit verbreitete Standards unterstützen.

Hajü

Reply to
Hans J. Ude

Uwe Bredemeier schrieb:

Fast. Wenn man mal vom RAM absieht. Das ist der eigentliche Knackpunkt. Allemale, wenn man FAT schreiben will.

- Carsten

--
Audio Visual Systems                          fon: +49 (0)2234 601886
Carsten Kurz                                  fax: +49 (0)2234 601887
 Click to see the full signature
Reply to
Carsten Kurz

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.