[avr-gcc]Atmega128 z MMC problem

Oct 25, 2007 7 Replies

Witam, Podlaczylem karty MMC to Atmegi 128. Odpalam to na roznych gotowych bibliotekach i lipa... Karta sie inicjuje, ale nie moze zmontowac systemu plikow. Dziwne jest to ze wczesniej obie biblioteki dzialaly na 2uch kartach do momentu kiedy nie sformatowalem kart pod windowsem XP. Probowalem na fat16, 32 i nic... nie mam nic poza formatem z XP :( Czy ktos jest mi w stanie wyjasnic w czym moze byc problem, bo juz mi rece opadaja?



Z tego co pamiêtam z kartami formatowanymi pod XP sporo odtwarzaczy Mp3 ma problemów, nawet jak formatuje siê w Fat16. Mo¿e poszukaj pod tym kontem w googlach > mp3 format Xp

Pierwszy ciekawszy link do sprawdzenia: ...

Nie Ty jeden :) A dlaczego dyski 2.5"/40GB w databankach formatowane pod Windows maj± mniejsz± pojemno¶æ? Ciekawe czy kto¶ wie, ale grupie pl.rec.foto.cyfrowa ch³opaki nie maj± w±tpliwo¶ci, ¿e tak jest.

Trzeba generalnie przyj±æ zasadê, ¿e cyfrówki, MP3 itp. maj± do¶æ prymitywny system obs³ugi plików i musz± mieæ mo¿liwie prymitywny format. Wystarczy nawet inna wielko¶æ klastra i ju¿ zaczynaj± siê problemy.

Troszkê poszpera³em i oto mam chyba rozwi±zanie. Z linii komend w Windowsie male¿y wpisaæ takie co¶:

format x: /FS:FAT /A:16K

gdzie x to litera dysku, czyli w tym przypadku czytnik karty (nie pomyliæ literki!!! :]) FS - file system, czyli FAT16 A - wielko¶æ jednostki alokacji 16kB

Sprawdza³em i u mnie pod XP ta komenda dzia³a na starym czytniku USB1.1

... W±tek nazywa³ siê Problem z karta SD, napisa³ Zearid na p.m.e. Sprawdz czy zadzia³a.

Pozdrawiam

Michał pisze:

niestety rozne warianty i nie pomaga ... co za paranoja microsoft specjalnie cos dodal... chyba ich zabolalo ze ludzie kozystaja z ich patentu

Jakiej pojemno¶ci karty u¿ywasz?

Pozdrawiam

To moze warto przesledzic co sie tym bibliotekom nie podoba ?

A co windows raportuje o systemie na tych kartach ?

J.

J.F. pisze:

Uzywam EFSL 2.8.0 karta MMC 128Mb FAT16 jest tam funkcja esint16 fs_verifySanity(FileSystem *fs) ktora zwraca 1 przy sukcesie w tej funkcji taki warunek ktory powoduje zwrocenie 0:

if(fs->volumeId.FatSectorCount16 != 0){ if(fs->volumeId.FatSectorCount16 > fs->part->disc->partitions[fs->part->activePartition].numSectors)sane=0; }else ....

sane=0 powoduje to ze nie jest zainicjowany FS.

wyslalem sobie te warunki przez RSa i wyszlo: fs->volumeId.FatSectorCount16 31 fs->part->activePartition 0 fs->part->disc->partitions[fs->part->activePartition].numSectors 4

  • ushort FatSectorCount16 Number of Sectors for 1 FAT on FAT12/16 bit FAT's
  • ulong numSectors Number of 512byte sectors

nic normalnie je odczytywal i zapisywal...

Uzytkownik "Pawel K" snipped-for-privacy@kpw.qs.pl> napisal w wiadomosci news:fg2ohm$r9l$ snipped-for-privacy@inews.gazeta.pl...

Sciagnij sobie WinHex-a jak jeszcze tego nie zrobiles.. Tam mozesz obejrzec cala karte (w czytniku) od zerowego sektora, swietna sprawa do zabawy z mmc. Sprawdzisz który bajt mu nie pasuje.

Pozdrawiam

Bardzo mozliwe ze chodzi o roznice w tym iz niektore karty sa formatowane bezposrednio bez tablicy partycji (jak dyskietka) a inne maja najpierw tworzona partycje ktora dopiero jest formatowana. Stare windowsy (np Win95) bodaj zawsze formatowaly na jedna modle bez partycji. WinXP jest "inteligentniejszy" i albo formatuje tak jak zastanie nosnik albo zgodnie z jakas wewnetrzna regula od pewnej pojemnosci zaklada jedna parycje i ja formatuje. byc moze twoja biblioteka "nie rozumie" partycji tylko probuje potraktowac karte na sile jako bezpartycjowa :)

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required