<?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=2675&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-04-02T17:01:35+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=2675&amp;mode</id>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-04-02T17:01:35+01:00</updated>
<published>2013-04-02T17:01:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32799#p32799</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32799#p32799"/>
<title type="html"><![CDATA[Re: PetitFs - problem z inicjalizacją karty.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32799#p32799"><![CDATA[
o widzisz pan <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> faktycznie - jednak tak też robi sam autor PetitFS'a więc chyba nawet tak trzeba - bo to jest konstrukcja od niego zapożyczona<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 2 kwi 2013, o 17:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2013-04-02T14:59:32+01:00</updated>
<published>2013-04-02T14:59:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32786#p32786</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32786#p32786"/>
<title type="html"><![CDATA[Re: PetitFs - problem z inicjalizacją karty.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32786#p32786"><![CDATA[
Pliki z folderu głównego odczytuje tak samo. <br />Ogólnie to nie jest jakiś poważny problem. Bo po każdym odczycie mogę sprawdzać czy dostałem pustą nazwę. A jeśli tak to wystarczy ponownie otworzyć folder.<br /><br />Przeglądając kod Wav Playera zauważyłem fragment, który powinien tak samo działać<br />[syntax=c]while (!pf_readdir(&amp;Dir, &amp;Fno) &amp;&amp; Fno.fname&#91;0&#93;) {/* Play all wav files in the dir */[/syntax]<br />czyli jeśli funkcja odczyta pustą nazwę to następuje jej przerwanie i program wraca do pętli wyżej gdzie następuje ponowne otwarcie folderu głównego.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 2 kwi 2013, o 14:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-04-02T00:08:16+01:00</updated>
<published>2013-04-02T00:08:16+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32720#p32720</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32720#p32720"/>
<title type="html"><![CDATA[Re: PetitFs - problem z inicjalizacją karty.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32720#p32720"><![CDATA[
Wydaje mi sie ze powinno dzialac tak jak piszesz,  mi tak chyba dziala ale nie mam jak teraz spr. Pisze z fona. A ty sprobuj to samo ale z folderu glownego karty ok?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 2 kwi 2013, o 00:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2013-04-01T22:20:36+01:00</updated>
<published>2013-04-01T22:20:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32709#p32709</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32709#p32709"/>
<title type="html"><![CDATA[Re: PetitFs - problem z inicjalizacją karty.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32709#p32709"><![CDATA[
Mam pytanie odnośnie funkcji pf_readdir. Napisałem programik, który odczytuje zawartość folderu &quot;sample&quot; i odczytane pliki wyświetla na LCD.<br />[syntax=c]int main(void) {<br /><br />PORTB = 0xff;// podciągnięcie PORTB do VCC<br /><br />DDRB |= (1&lt;&lt;PB1);// wyjście do sterowania zasilaniem karty SD<br /><br />DDRD |= (1&lt;&lt;PD7);<br />//PORTA |= (1&lt;&lt;PA7); /* podświetlenie wyświetlacza LCD */<br />lcd_init();<br /><br />// init SPI<br />DDRB |= (1&lt;&lt;CS)|(1&lt;&lt;MOSI)|(1&lt;&lt;SCK)|(1&lt;&lt;CS);<br />PORTB |= (1&lt;&lt;CS);<br />SPCR |= (1&lt;&lt;SPE)|(1&lt;&lt;MSTR);<br />SPSR |= (1&lt;&lt;SPI2X);// masymalny zegar SCK<br /><br />sei();// globalne zezwolenie na przerwania<br /><br />// **************** pętla główna **********************************<br />while(1) {<br /><br />sd_pwr(0);// wyłączamy zasilanie karty SD<br />if( SD_SLOT_EMPTY ) continue;// jeśli karta niewykryta powrót na początek while(1)<br />sd_pwr(1);// WŁĄCZAMY zasilanie karty SD<br /><br />if (pf_mount(&amp;Fs)) continue;/* Initialize FS */<br /><br />for (;;) {<br /><br />if( SD_SLOT_EMPTY ) break;<br /><br />//if (pf_opendir(&amp;Dir, &quot;&quot;)) break;/* Open sound file directory (root dir) */<br />if (pf_opendir(&amp;Dir, &quot;sample&quot;)) break;<br /><br />while(1){<br />res = pf_readdir(&amp;Dir, &amp;Fno);<br />if (res == FR_OK){<br />lcd_locate(0,0);<br />lcd_str(Fno.fname);<br />lcd_str(&quot;      &quot;);<br />                                        PORTD ^= (1&lt;&lt;PD7);     //mignij LED<br />_delay_ms(1000);// odczekaj 1s<br />}<br />}<br />}<br />} // koniec while(1)<br />}[/syntax] <br />W folderze są 3 pliki. Funkcja pf_readdir ładnie odczytuje nazwy plików. Po odczytaniu nazwy ostatniego pliku kolejny odczyt zawartości folderu zwraca pustą nazwę pliku. Z tego co wyczytałem to następne wywołanie funkcji pf_readdir powinno odczytać nazwę pierwszego pliku w folderze. A u mnie tak nie jest. Pętla while(1) się kręci bo dioda LED miga ale funkcja pf_readdir nic nie odczytuje. Dioda przy karcie SD tez się nie świeci.<br />Ale jeśli po odczytaniu pustej nazwy pliku opuszczę pętlę while i ponownie otworze folder &quot;sample&quot; funkcją pf_opendir to kolejny odczyt zawartości folderu zwraca już poprawnie nazwę pierwszego pliku w folderze.<br />[syntax=c]for (;;) {<br /><br />if( SD_SLOT_EMPTY ) break;<br /><br />//if (pf_opendir(&amp;Dir, &quot;&quot;)) break;/* Open sound file directory (root dir) */<br />if (pf_opendir(&amp;Dir, &quot;sample&quot;)) break;<br /><br />while(1){<br />res = pf_readdir(&amp;Dir, &amp;Fno);<br />if (res == FR_OK){<br />if (!Fno.fname[0]) break; //opuść pętlę while<br />lcd_locate(0,0);<br />lcd_str(Fno.fname);<br />lcd_str(&quot;      &quot;);<br />_delay_ms(1000);// odczekaj 1s<br />}<br />}<br />}[/syntax]<br /><br />Czy to działanie funkcji pf_readdir jest poprawne czy może ja się czepiam?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 1 kwi 2013, o 22:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jachu]]></name></author>
<updated>2013-03-27T23:42:20+01:00</updated>
<published>2013-03-27T23:42:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32160#p32160</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32160#p32160"/>
<title type="html"><![CDATA[Re: PetitFs - problem z inicjalizacją karty.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32160#p32160"><![CDATA[
<div class="quotetitle">jacekk232 napisał(a):</div><div class="quotecontent"><br />Widzę, że nie tylko ja mam problemy z zapisem. Generalnie odczyt działa mi dobrze. Nic się nie wiesza.<br />W sumie to PetitFs będę używał raczej do odczytu bo w planach mam zamiar zrobić malutki wav playerek, którego chcę zamontować do zabawki mojego synka zamiast oryginalnego &quot;grajka&quot;, który gada po angielsku i do tego bardzo niewyraźnie. Po głowie chodzi mi również jakiś mały serwer na avr-ku ze stroną www zapisaną na karcie SD zamiast we flashu.<br /><br />Ale jeśli PetitFs zapewnia również zapis to szkoda aby to nie działało i nie korzystać z tego. Będę musiał dokładnie przeczytać rozdział o Datalogerze.<br /></div><br /><br />masz zielona ksiazke ? Z tego co pamietam trzeba wykonywac reset przed kazdym zapisem ale musze slokanc a knige mam w pracy .<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=110">jachu</a> — 27 mar 2013, o 23:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2013-03-27T22:18:35+01:00</updated>
<published>2013-03-27T22:18:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32156#p32156</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32156#p32156"/>
<title type="html"><![CDATA[Re: PetitFs - problem z inicjalizacją karty.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32156#p32156"><![CDATA[
Widzę, że nie tylko ja mam problemy z zapisem. Generalnie odczyt działa mi dobrze. Nic się nie wiesza.<br />W sumie to PetitFs będę używał raczej do odczytu bo w planach mam zamiar zrobić malutki wav playerek, którego chcę zamontować do zabawki mojego synka zamiast oryginalnego &quot;grajka&quot;, który gada po angielsku i do tego bardzo niewyraźnie. Po głowie chodzi mi również jakiś mały serwer na avr-ku ze stroną www zapisaną na karcie SD zamiast we flashu.<br /><br />Ale jeśli PetitFs zapewnia również zapis to szkoda aby to nie działało i nie korzystać z tego. Będę musiał dokładnie przeczytać rozdział o Datalogerze.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 27 mar 2013, o 22:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Anonymous]]></name></author>
<updated>2013-03-27T19:01:06+01:00</updated>
<published>2013-03-27T19:01:06+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32111#p32111</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32111#p32111"/>
<title type="html"><![CDATA[Re: Odp: PetitFs - problem z inicjalizacją karty.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32111#p32111"><![CDATA[
Sam ostatnio z tym walczyłem. Zadziałało na glsie podlaczenia dokladnie wg książki. Ale gryzie sie coś jak jednocześnie uruchomilem LCD po i2c, jutro może podepne analizator pod szyny i zobacze w ktorym momencie sie krzaczy<p>Statystyki: Napisane przez Gość — 27 mar 2013, o 19:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jachu]]></name></author>
<updated>2013-03-27T10:27:58+01:00</updated>
<published>2013-03-27T10:27:58+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32032#p32032</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32032#p32032"/>
<title type="html"><![CDATA[Re: PetitFs - problem z inicjalizacją karty.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32032#p32032"><![CDATA[
Mi dziala inicjalizacja odczyt , problem z zapisem ale to Mirek w greenbooku wyjasnil co trzeba robic <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> Testowalem dla 5 roznych kart.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=110">jachu</a> — 27 mar 2013, o 10:27</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-03-26T23:39:51+01:00</updated>
<published>2013-03-26T23:39:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32010#p32010</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32010#p32010"/>
<title type="html"><![CDATA[Re: PetitFs - problem z inicjalizacją karty.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32010#p32010"><![CDATA[
<div class="quotetitle">Antystatyczny napisał(a):</div><div class="quotecontent"><br />Jacek, jeśli możesz... opisuj tutaj wszelkie problemy z PetitFS, bo mam potworne problemy z uruchomieniem tego softu zarówno na ATB jak i na innych modułach i róznych źródłach zasilania. Podmiany kart też nic nie dają. Twoje doświadczenia być może i mi pomogą<br /></div><br /><br />Anty - najbardziej mnie martwi że z samym odczytem masz kłopoty na PetitFS bo to powinno ślicznie śmigać ... ale wiesz że czekam na ciebie na Skype i jestem do usług <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> w tym zakresie<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 26 mar 2013, o 23:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-03-26T23:34:35+01:00</updated>
<published>2013-03-26T23:34:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32005#p32005</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32005#p32005"/>
<title type="html"><![CDATA[Re: PetitFs - problem z inicjalizacją karty.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32005#p32005"><![CDATA[
To jest tylko PetitFS - niestety operacje zapisu potraktowane zostały po macoszemu ... ale i słusznie poniekąd bo dzięki temu udało się DRASTYCZNIE odchudzić bibliotekę FatFS przecież ....<br /><br />więc po operacjach zapisu bywa właśnie nieciekawie i tak właśnie jest - często pomaga kilkakrotna inicjalizacja więc się nie martw. A w drugiej książce <br /><br /><!-- m --><a class="postlink" href="http://atnel.pl/jezyk-c-pasja-programowania.html" >http://atnel.pl/jezyk-c-pasja-programowania.html</a><!-- m --><br /><br />pokazuję jak podejść do PetitFS'a żeby było z tym lepiej i dlatego też wprowadziłem programowe sterowanie zasilaniem karty w celu jej PEŁNEGO resetu. Poza tym stworzyłem i opisałem pewną funkcję do zapisu na kartę - wprawdzie nadal obarczoną pewnymi mankamentami i wadami ale da się nawet na takim Petitku zrobić prosty Datalogerek jeśli nie potrzebujemy zbyt często zapisywać danych na karcie i działa to całkiem fajnie wtedy<br /><br />a na ATB 1.04 elektronika przewiduje korzystanie z tego sterowania zasilaniem (więc fajnie te ćwiczenia można przeprowadzić) <br /><br />sam efekt pracy takiego datalogerka wygląda tak:<br /><br /><!-- m --><a class="postlink" href="http://www.mirekk36.blogspot.com/2012/02/petitfs-dataloger-zapis-danych-do.html" >http://www.mirekk36.blogspot.com/2012/0 ... ch-do.html</a><!-- m --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 26 mar 2013, o 23:34</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2013-03-26T23:23:19+01:00</updated>
<published>2013-03-26T23:23:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32000#p32000</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32000#p32000"/>
<title type="html"><![CDATA[PetitFs - problem z inicjalizacją karty.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2675&amp;p=32000#p32000"><![CDATA[
Witam.<br /><br />Zabrałem się za obsługę kart SD przy pomocy PetitFs. Tym tematem jeszcze się nie zajmowałem dlatego postanowiłem uruchomić przykład z płyty DVD na zestawie ATB 1.04 z procesorem Atmega32. <br />Program działa dobrze do momentu zresetowania procesora. Po resecie na wyświetlaczu wyświetla się &quot;disk init error&quot;. Po wyciągnięciu i powtórnym włożeniu karty albo kilkukrotnym resecie jest to samo czyli odczyt, zapis a po resecie ten sam błąd. <br />Pomyślałem sobie, że skoro jednorazowa  inicjalizacja karty nie daje rezultatu to może by tak ją inicjalizować do skutku. Więc inicjalizację karty umieściłem w petli do...while <br />[syntax=c]<br />do{<br />res = disk_initialize();<br />}<br />while (res != FR_OK);[/syntax]<br />i ku mojemu zdziwieniu program zaczął działać poprawnie.<br />Czy taki objaw może zależeć od egzemplarza karty? <br />Na razie nie mam innej karty żeby to sprawdzić. Aktualnie używam takiej: SDHC 4GB class4.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 26 mar 2013, o 23:23</p><hr />
]]></content>
</entry>
</feed>