<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=4&amp;t=14057&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2017-05-28T18:38:05+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=14057&amp;mode</id>
<entry>
<author><name><![CDATA[krzysssztof]]></name></author>
<updated>2017-05-28T18:38:05+01:00</updated>
<published>2017-05-28T18:38:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=189906#p189906</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=189906#p189906"/>
<title type="html"><![CDATA[Re: Problem z FatFS na PIC32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=189906#p189906"><![CDATA[
Mam bardzo podobny problem:<br />Staram się uruchomić obsługę karty SD na procku PIC32. Funkcję inicjalizującą przechodzi bezproblemowo, natomiast przy próbie otwarcia pliku przy pomocy &quot;fopen&quot; dostaję błąd &quot;FR_NO_FILESYSTEM&quot;.<br />Koledze z postu powyżej pomogły zmiany sprzętowe - u mnie jest trawiona płytka, z filtrowaniem 100nF 10uF tuż przy nóżkach scalaka i dalej nie działa <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /><br /><br />Ktoś ma jakieś złote rady ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4274">krzysssztof</a> — 28 maja 2017, o 18:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Atlantis]]></name></author>
<updated>2016-01-05T10:58:20+01:00</updated>
<published>2016-01-05T10:58:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149710#p149710</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149710#p149710"/>
<title type="html"><![CDATA[Re: Problem z FatFS na PIC32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149710#p149710"><![CDATA[
Tak, sprawdzałem pracę na niskim taktowaniu.<br />Problem okazał się mieć czysto sprzętowe podłoże - jak się okazuje płytka stykowa nie była w stanie zapewnić odpowiedniej jakości zasilania i nawet kondensatory wpinane w pobliżu modułu z kartą SD nie pomagały. Zastosowałem kartę z oddzielnym stabilizatorem i paroma przylegającymi kondensatorkami i układ od razu zaczął działać.<br />W przypadku samodzielnie trawionych płytek nigdy nie miałem takiego problemu, tam wystarczał filtr LC. Niemniej wtedy zawsze karta znajdowała się relatywnie blisko stabilizatora i była z nim połączona dość grubą ścieżką i/lub kawałkiem przewodu.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2174">Atlantis</a> — 5 sty 2016, o 10:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2016-01-04T19:43:34+01:00</updated>
<published>2016-01-04T19:43:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149676#p149676</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149676#p149676"/>
<title type="html"><![CDATA[Re: Problem z FatFS na PIC32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149676#p149676"><![CDATA[
Przykład dla PIC24 opiera się na tym, że taktowanie procesora to 4 * 7,3728 MHz, czyli około 29 MHz. Uwzględniłeś to? Możesz też obniżyć zegar dla SPI i sprawdzić. Kartę w trybie SPI taktuje się na początku małą prędkością 100 kHz - 400 kHz, a później maksymalną dla danej karty np. 25 MHz. Dokładnie chodzi o te ustawienia w pliku mmc.c:<br />[syntax=c]//dla FPB = 50 MHz<br />#defineFCLK_SLOW()SPI1BRG = 63/* Set slow clock (100k-400k) */<br />#defineFCLK_FAST()SPI1BRG = 0/* Set fast clock (depends on the CSD) */[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 4 sty 2016, o 19:43</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Atlantis]]></name></author>
<updated>2016-01-03T22:32:29+01:00</updated>
<published>2016-01-03T22:32:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149603#p149603</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149603#p149603"/>
<title type="html"><![CDATA[Re: Problem z FatFS na PIC32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149603#p149603"><![CDATA[
<div class="quotetitle">Krauser napisał(a):</div><div class="quotecontent"><br />Rzućmy okiem na ffconf.h który powinien być inny dla AVR i PIC32 (parametr _WORD_ACCESS).<br /></div><br /><br />Opcja _WORD_ACCESS jest ustawiona na 0, co (wedle opisu dołączonego do ffconf.h) ma zapewnić kompatybilność z wszystkimi platformami. Zresztą ja nie portowałem tej biblioteki z AVR. Wykorzystałem jeden z przykładowych projektów ze strony FatFS - co prawda nie był on zrobiony z myślą o PIC32, ale o siostrzanej, szesnastobitowej rodzinie PIC24. Zmodyfikowałem nieco funkcje odpowiedzialne za komunikację SPI. Resztę zostawiłem tak, jak była.<br /><br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Problem może być w pliku mmc.c i w razie czego można sprawdzić wersję z bezpośrednim sterowaniem I/O.<br /></div><br /><br />Jaką wersję masz na myśli? Chodzi o soft SPI, ręczne machanie pinami? Sęk w tym, że SPI działa - widać aktywność na analizatorze stanów logicznych. Funkcja disk_initialize() przechodzi zwracając FR_OK, co znaczy tyle, że wysłała to co trzeba, i odebrała to, co miała odebrać. Ale już np. odczyt sektora nie chce działa, a co za tym idzie - nie działają wysokopoziomowe funkcje.<br /><br /><br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Microchip oferuje też własne rozwiązania. Czy próbowałeś jak działa Harmony? Powinno być łatwiej.<br /></div><br /><br />Nie próbowałem jeszcze ani Harmony, ani starszego MLA. Wolałem sięgnąć po FatFS, z uwagi na dwie kwestie:<br />1) Ta biblioteka jest bardzo podobna do uniksowego sposobu obsługi plików. W bibliotekach od Microchipa są ponoć jakieś większe różnice.<br />2) FatFS miałem już &quot;rozgryziony&quot; pod AVR-ami. Nie spodziewałem się żadnych problemów.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2174">Atlantis</a> — 3 sty 2016, o 22:32</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2016-01-03T21:05:40+01:00</updated>
<published>2016-01-03T21:05:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149591#p149591</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149591#p149591"/>
<title type="html"><![CDATA[Re: Problem z FatFS na PIC32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149591#p149591"><![CDATA[
Rzućmy okiem na ffconf.h który powinien być inny dla AVR i PIC32 (parametr _WORD_ACCESS). Problem może być w pliku mmc.c i w razie czego można sprawdzić wersję z bezpośrednim sterowaniem I/O. Microchip oferuje też własne rozwiązania. Czy próbowałeś jak działa Harmony? Powinno być łatwiej.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 3 sty 2016, o 21:05</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Atlantis]]></name></author>
<updated>2016-01-03T18:39:09+01:00</updated>
<published>2016-01-03T18:39:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149572#p149572</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149572#p149572"/>
<title type="html"><![CDATA[Re: Problem z FatFS na PIC32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149572#p149572"><![CDATA[
FAT32, próbowałem też FAT16.<br /><br />Przeprowadziłem kilka kolejnych testów. Sprawa wydaje się być bardziej &quot;pokręcona&quot;. Pozwólcie, że wkleję post, który wysłałem już w tej sprawie na pl.misc.elektronika, żeby nie pisać tego samego od nowa:<br /><br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Jak wcześniej pisałem - próbuję uruchomić FatFS na PIC32. Na AVR-ach nie<br />miałem najmniejszego problemu z tą biblioteką, tutaj za chwilę osiwieję...<br /><br />Nic nie działa jak powinno, a w sposobie hmm... niedziałania nie mogę<br />się doszukać żadnej logiki, która dałaby mi jakiś punkt zaczepienia przy<br />debugowaniu problemu.<br /><br />1) Komunikacja po SPI najwyraźniej działa. Funkcja disk_initialize(0)<br />przy każdym wywołaniu zwraca FR_OK. No chyba, że w slocie nie ma karty -<br />wtedy otrzymuję FR_NOT_READY. Czyli wszystko tak, jak być powinno.<br />Niektóre karty zwracają co prawda FR_DISK_ERR, ale to pomijam, bo<br />dokładnie z tymi samymi egzemplarzami miałem także problem na AVR-ach i<br />szukanie przyczyny pozostawiam na później.<br />Fakt, że inicjacja karty kończy się komunikatem FR_OK świadczy o tym, że<br />mikrokontroler potrafi się dogadać z kartą.<br />2) O tym, że między dwoma urządzeniami występuje przepływ danych<br />świadczy też wynik badania analizatorem stanów logicznych. wyraźnie<br />widać pracę linii CS, SCK, MISO i MOSI.<br />3) Problem zaczyna się nieco później. Próba odczytania kilku sektorów z<br />karty za pomocą disk_read(0, bufor, 1, 5) kończy się zwróceniem<br />RES_ERROR. Analizator stanów pokazuje, że po wywołaniu tej komendy<br />występuje szybka komunikacja pomiędzy tymi urządzeniami. Pomyślałem, że<br />może SPI pracuje za szybko dla karty, jednak przestawienie interfejsu na<br />wolną transmisję nic nie zmieniło.<br />4) Funkcje wyższego poziomu nie działają, albo nie działają jak powinny.<br />f_mkfs() zwraca za każdym razem błąd FR_DISK_ERR, a f_mount()<br />FR_NO_FILESYSTEM. No może nie za każdym razem - jeszcze parę dni temu od<br />czasu do czasu (dość rzadko i raczej losowo) obserwowałem przypadki<br />&quot;zaskakiwania&quot; systemu plików - na karcie pojawiał się plik, do którego<br />były zapisywane dane.<br />5) Wypróbowałem kilka różnych modułów ze slotem na karty SD i micro SD.<br />W tym jeden zlutowany samodzielnie. Poprawność połączeń stwierdziłem<br />kilkadziesiąt razy. Ktoś ma jakiś pomysł co do możliwej przyczyny? CO<br />jeszcze mogę sprawdzić?<br /><br />Port SPI jest iicjowany z następującymi ustawieniami:<br />SpiChnOpen(SPI_CHANNEL2,SPI_OPEN_MSTEN|SPI_OPEN_CKP_HIGH|SPI_OPEN_SMP_END|SPI_OPEN_MODE8,142);<br /><br />Aha, żeby nie było - karta zasilana jest przez port LC (22uH, 1uF), a<br />wszystkie linie interfejsu SPI są podciągnięte do VCC.<br /></div><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2174">Atlantis</a> — 3 sty 2016, o 18:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[krish]]></name></author>
<updated>2016-01-02T14:56:23+01:00</updated>
<published>2016-01-02T14:56:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149421#p149421</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149421#p149421"/>
<title type="html"><![CDATA[Re: Problem z FatFS na PIC32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149421#p149421"><![CDATA[
Format karty to FATxx czy NTFS?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2273">krish</a> — 2 sty 2016, o 14:56</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Atlantis]]></name></author>
<updated>2016-01-02T09:12:40+01:00</updated>
<published>2016-01-02T09:12:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149398#p149398</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149398#p149398"/>
<title type="html"><![CDATA[Problem z FatFS na PIC32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14057&amp;p=149398#p149398"><![CDATA[
Przepraszam, że moje pytanie nie dotyczy platformy AVR, ale zaczynam podejrzewać, że źródło kłopotów nie jest bezpośrednio związane z rodziną mikrokontrolerów.<br /><br />Jak niektórzy wiedzą, od jakiegoś czasu eksperymentuję z rodziną trzydziestodwubitowych mikrokontrolerów od Microchipa. Przeportowałem już kilka bibliotek wykorzystywanych przeze mnie na AVR-ach, teraz zabrałem się za FatFS. Do tej pory korzystałem ze starszej wersji - tej, która kilka lat temu została przez pana Mirka dołączona do &quot;Blue Booka&quot;. Wszystko działało jak powinno, więc nie czułem potrzeby upgrade'u. Tym razem jednak ściągnąłem inną wersję z Sieci.<br /><br />1) Najpierw zacząłem od <a href="http://www.microchip.com/forums/m563218.aspx"  class="postlink">TEGO</a> portu czyjegoś autorstwa, również opartego na starszej wersji. Pojawiły się jednak problemy (o których za chwilę), więc sięgnąłem po najnowszą wersję kodu z oficjalnej strony projektu.<br />2) Na wspomnianej stronie zamieszczone zostały przykłady dla kilku różnych platform. Nie było wśród nich PIC32, ale znalazł się szesnastobitowy PIC24. W oparciu o sterownik mm.c z poprzedniego podpunktu zmodyfikowałem go nieco. Niestety, problemy ciągle występowały.<br />3) Zastosowałem kompletnie inny sterownik, napisany przez znajomego z Usenetu. Problem ciągle występował.<br /><br />Na czym polega problem? Układ najwyraźniej komunikuje się z kartą, gdyż potrafi rozpoznać jej wyjęcie (zgłasza wtedy kod błedu odpowiadający problemowi z fizycznym nośnikiem) oraz przeprowadza bez problemu funkcję disk_initialize(), zwracając FR_OK.<br />Jednak próba wykonania jakiejkolwiek operacji, zaczynając od f_mount kończy się błędem 13, oznaczającym brak prawidłowego systemu plików. Karty były formatowane za pomocą standardowego narzędzia z Windowsa 7.<br /><br />Co może być nie takk?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2174">Atlantis</a> — 2 sty 2016, o 09:12</p><hr />
]]></content>
</entry>
</feed>