Atmega FAT karta SD

Potrzebuje zapisywac dane na karcie SD przy uzyciu Atmega32. Jest to pojedynczy plik tekstowy do ktorego beda dopisywane informacje w pewnych odstepach czasu. Czy mozecie polecic jakies dobre a zarazem proste biblioteki w C (AVR) ktore obsluza karte SD i FAT-a. znalazlem poki co dwie ale jedna bardzo rozbudowana i duzo zasobow zajmuje, druga tylko czyta pliki i nie zapisuje.

Reply to
Tarde
Loading thread data ...

Oglądałeś już to?

formatting link
Sprawdź czy w tej bibliotece można wyłączyć obsługę długich nazw i np. katalogów, może uda ci się trochę ją odchudzić.

Reply to
Zbych

2...4kB to dużo?
Reply to
Zbych

Mozesz sprobowac recznie stworzyc plik o okreslonym rozmiarze (byle ciagly) i zapisac sobie gdzie sie zaczyna, gdzie konczy (numery sektorow) i gdzie aktualnie piszesz. Troche to sztywne ale na pewno duzo mniej pochlonie pamieci.

Reply to
ptoki

No właśnie. Po chusteczkę obsługa FATa, jak się tylko jeden plik obsługuje. Zapisywać sektory i już. A "zawczasu" zrobić swój sztywny system na SD.

Waldek

Reply to
Waldemar Krzok

W dniu 2011-05-05 12:26, J.F. pisze:

Ale on chyba nie obsługiwał FAT12, FAT16, FAT32, długich nazw, co? Zresztą wystarczy spojrzeć na wielkość kodu na ARM - jest mniejszy, więc pewnie obliczenia na długich liczbach dokładają swoje.

Reply to
Zbych

W dniu 2011-05-05 17:00, Zbych pisze:

No chyba właśnie FAT12.

Reply to
Mario

W dniu 2011-05-07 00:18, Mario pisze:

To zdanie było całością, a ty je pofragmentowałeś.

Reply to
Zbych

Za to usilnie starał się udawać CP/M i jednocześnie udawać że nie udaje. Zapewne to pochłoneło troche przestrzeni więc ciężko porównać w prost.

Reply to
Sebastian Biały

W dniu 2011-05-07 10:00, Zbych pisze:

Bo z resztą zadania zgadzam się.

Reply to
Mario

Nie, skleroze mam juz za duza ... BDOS zajmowal 3.5kB, ale na dysku czy w pamieci z buforami dyskowymi ? Bufory duze nie byly, bo sektor mial 128 bajtow.

Udawanie trudne nie bylo .. moze i MSdos 1.0 byl krotszy ?

Tak czy inaczej - widac potrzebuje to pare kB programu. W nowoczesnej wersji wiecej.

J.

Reply to
J.F.

W dniu 2011-05-07 11:03, Mario pisze:

aha.

Reply to
Zbych

A może inaczej: napisać własny FS inny niż fat i olać kompatybilność (i problemy prawne) z fat. W końcu napisanie sterownika do fuse pod linuxem jest nieporównywalnie łatwiejsze niż walka z tępym windowsem.

Sam będę za chwile stawał przed problemem zrobiena fs w ... pamięci eeprom. Wymagany jest *bardzo* mały system plików w którym można olać daty, atrybuty i inne śmieci. Może jednak coś naskrobać na LGPL ;)?

Reply to
Sebastian Biały

No tak, tylko potem klient chce windows :-) I latwiej napisac obsluge fat w uP, niz driver do windows 7 :-)

A moze jednak wsadzic zlacze i dopisac "obsuguje karty SD juz od 8 MB" :-)

J.

Reply to
J.F.

No tak, jesli się pisze dla tumanisty to owszem, to warunek nie do przeskoczenia. Normalni sobie poradzą.

Ale fat to same problemy: co można żądać od systemu plików który ma coś koło 30 lat i jest napisany jako klon fs z CP/M a potem wykupiony przez firmę piszącą głównie BASICe na 8-bitów i obarczony jakimiś kretyńskimi problemami prawnymi z patentami? Niestety historia informatyki to głównie wybieranie debilnych rozwiązań i zabetonowaniaa ich potem jako "standardy przemysłowe"... a MS całkiem nieźle żyje z faktu że nikt nie implementuje nic innego w urządzeniach.

Dobra, wracam do obmyślania SeboFS for EEPROM :P

Reply to
Sebastian Biały

Trudno wymagac od klienta zeby sobie zainstalowal malego linuxa do transferu plikow :-)

Czesc "FAT" jest w miare przyzwoita, kretynskie jest tylko doklejenie dlugich nazw plikow.

Ale jak chcesz .. czemu nie ext3 albo NTFS :-)

Duzy ruch w danych ? Moze CD ?

J.

Reply to
J.F.

Za to bardzo łatwo żeby zainstalował dużego windowsa do transferu plików ... ;) Świat jest przedziwny ...

A np przezabawna rozdzielczość 2 sekund? W czasie kiedy MS wciskał swój prymitywny klon CP/M do IBMów świat wiedział już coś o np. koncepcji security choćby z Unixa. To nie było przyzwoite tylko pojechanie po bandzie najmniejszej lini oporu. Prawa dostepu? Multithreading? E Panie, to tylko nastepny klon CP/M przepisywany przez specjalistów od BASICa.

ISO jest read-only. Ruch w danych symboliczny. Na razie mimo mnogości fs w projekcie fuse jakoś nic nie pasuje mi do 64kB eeprom.

Reply to
Sebastian Biały

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.