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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-12-09T09:19:18+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=8&amp;t=13728&amp;mode</id>
<entry>
<author><name><![CDATA[JungleMan]]></name></author>
<updated>2015-12-09T09:19:18+01:00</updated>
<published>2015-12-09T09:19:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147456#p147456</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147456#p147456"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147456#p147456"><![CDATA[
Problem poniekąd rozwiązany. Używam teraz Atmegi 1284P. Problem polega na tym, że gdy odpalam kod bez jakichkolwiek funkcji związanej z UART'em wszystko działa bez zarzutu, zaś gdy używam UART'a to funkcja f_open zwraca FR_DISK_ERR. Czy to może być związane z funkcjami UART'a?<br /><br />[c]#define BAUD_RATE_9600_H 0<br />#define BAUD_RATE_9600_L 51<br /><br />#define USART_ENTER 0x0D<br />#define USART_NEW_LINE 0x0A<br /><br />void USART_init()<br />{<br />UBRR0H = BAUD_RATE_9600_H;<br />UBRR0L = BAUD_RATE_9600_L;<br />UCSR0B = (1&lt;&lt;RXEN0) | (1&lt;&lt;TXEN0);<br />UCSR0C = (3&lt;&lt;UCSZ00);<br />}<br /><br />void USART_Transmit(unsigned char data)<br />{<br />while( !( UCSR0A &amp; (1&lt;&lt;UDRE0)) );<br />UDR0 = data;<br />}<br /><br />void usart_putstring(const char *str)<br />{<br />for(uint8_t i = 0; (str[i] != '\0') &amp;&amp; (i &lt; 64); i++)<br />{<br />USART_Transmit(str[i]);<br />}<br />USART_Transmit(USART_ENTER);<br />USART_Transmit(USART_NEW_LINE);<br />}<br />[/c]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3945">JungleMan</a> — 9 gru 2015, o 09:19</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[JungleMan]]></name></author>
<updated>2015-12-07T15:04:50+01:00</updated>
<published>2015-12-07T15:04:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147302#p147302</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147302#p147302"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147302#p147302"><![CDATA[
Na pierwszej fotce widać kondensator (100nF) pomiędzy VCC a GND; dodałem też rezystor 10k na reset, skróciłem znacząco przewody i nadal to samo.<br /><br />Sprawdziłem inną kartę SD i okazuje się, że dla innej karty też ten sam problem.<br /><br />Nawet po wywołaniu f_mkfs, które pomyślnie przechodzi nadal uzyskuję błąd FR_NO_FILE_SYSTEM przy f_puts.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3945">JungleMan</a> — 7 gru 2015, o 15:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2015-12-07T14:44:46+01:00</updated>
<published>2015-12-07T14:44:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147299#p147299</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147299#p147299"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147299#p147299"><![CDATA[
Brak prawidłowej filtracji procesora ... oraz nie widzę 10k do RST<br />Dodatkowo te długie przewody od SPI mogą również broić.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 7 gru 2015, o 14:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[JungleMan]]></name></author>
<updated>2015-12-07T14:41:25+01:00</updated>
<published>2015-12-07T14:41:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147298#p147298</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147298#p147298"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147298#p147298"><![CDATA[
<a href="http://botland.com.pl/4722-thickbox_default/modul-czytnika-kart-sd.jpg"  class="postlink">Czytnik</a><br /><br /><br /><a href="https://obrazkiforum.atnel.pl/3945/d62ceb5a73ba6372463a357bb4d90588.jpg"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/3945/d62ceb5a73ba6372463a357bb4d90588.jpg" alt="Obrazek" /></a><a href="https://obrazkiforum.atnel.pl/3945/6fb46cf665d8574eadc08caa4ca4f0a7.jpg"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/3945/6fb46cf665d8574eadc08caa4ca4f0a7.jpg" alt="Obrazek" /></a><a href="https://obrazkiforum.atnel.pl/3945/acce71847256524e932c46e606537daf.jpg"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/3945/acce71847256524e932c46e606537daf.jpg" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3945">JungleMan</a> — 7 gru 2015, o 14:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2015-12-07T14:31:34+01:00</updated>
<published>2015-12-07T14:31:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147296#p147296</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147296#p147296"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147296#p147296"><![CDATA[
ok to pokaż te gniazdo i to co tam poskładałeś na stykówce.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 7 gru 2015, o 14:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[JungleMan]]></name></author>
<updated>2015-12-07T13:59:55+01:00</updated>
<published>2015-12-07T13:59:55+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147290#p147290</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147290#p147290"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147290#p147290"><![CDATA[
Plik tworzę automatycznie z flagą FA_CREATE_ALWAYS (w moim przedostatnim poście jest kod main'a). Nie działam z ATB, wszystko sam poskładałem. Jedynie kupiłem sobie gniazdo do karty SD za grosze z wyprowadzeniami na stykówkę.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3945">JungleMan</a> — 7 gru 2015, o 13:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2015-12-07T13:40:30+01:00</updated>
<published>2015-12-07T13:40:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147289#p147289</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147289#p147289"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147289#p147289"><![CDATA[
A plik tworzysz automatycznie czy za pomocą pogramu na PC ?<br /><br />Z tego co pamiętam trzeba wcześniej zadeklarować jego maksymalną wielkość ale mogę się mylić bo tylko coś mi świta.<br /><br />Problem w tym że karty mniejszej od 4 czy 8 GB już chyba nie dostaniesz, u mnie chodziło z kartą 8 GB więc sądzę że nie powinno być problemu.<br /><br />Rozumie że działasz na ATB ? czy sam poskładałeś sobie moduł karty ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 7 gru 2015, o 13:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[JungleMan]]></name></author>
<updated>2015-12-07T13:14:01+01:00</updated>
<published>2015-12-07T13:14:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147286#p147286</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147286#p147286"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147286#p147286"><![CDATA[
Zastosowałem się do erraty oraz zakleiłem taśmą bezbarwną wcięcie i nadal ten sam błąd... Chyba wybiorę się po nową kartę...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3945">JungleMan</a> — 7 gru 2015, o 13:14</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2015-12-07T12:09:15+01:00</updated>
<published>2015-12-07T12:09:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147280#p147280</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147280#p147280"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147280#p147280"><![CDATA[
<div class="quotetitle">JungleMan napisał(a):</div><div class="quotecontent"><br />Używam karty GOODRAM 8GB. Czy to problem z kartą?<br /></div><br /><br />Najprawdopodobniej tak jest ...<br />weź taśmę papierową lub bezbarwną i zaklej te wcięcie na karcie ja tak musiałem zrobić by działało to prawidłowo<br /><br />dodatkowo na stronie atnel jest errata do kodów i z tego co pamiętam jest tam poprawka do FatFS<br /><br />Pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 7 gru 2015, o 12:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[JungleMan]]></name></author>
<updated>2015-12-07T12:00:35+01:00</updated>
<published>2015-12-07T12:00:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147279#p147279</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147279#p147279"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=147279#p147279"><![CDATA[
Nie wiem, co jest grane. Nie działa, a użyłem kodu z płyty. Main:<br />[c]int main()<br />{<br />        ATOMIC_BLOCK(ATOMIC_RESTORESTATE)<br />{<br />CLKPR = (1&lt;&lt;CLKPCE);<br />CLKPR = (0&lt;&lt;CLKPCE) | (0&lt;&lt;CLKPS3) | (0&lt;&lt;CLKPS2) | (0&lt;&lt;CLKPS1) | (0&lt;&lt;CLKPS0);<br />}<br />FRESULT res;<br />static FATFS FATFS_Obj;<br />static char rxbuf[16];<br />static FIL fil_obj;<br /><br /><br />USART_init();<br />Timer0_init();<br />SPI_init();<br />sei();<br /><br />_delay_ms(500);<br />disk_status(STA_NOINIT);<br /><br />res = f_mount(0, &amp;FATFS_Obj);<br />if (res) { put_rc(res, PSTR(&quot;f_mount init&quot;)); return 0; }<br />else usart_putstring(&quot;f_mount init&quot;);<br />// write<br />//f_unlink(&quot;fox1&quot;);<br /><br />res = f_open(&amp;fil_obj, &quot;beton&quot;,   FA_CREATE_ALWAYS | FA_WRITE );<br />if (res) { put_rc(res, PSTR(&quot;f_open&quot;)); return 0; }<br />else usart_putstring(&quot;f_open&quot;);<br /><br />res = f_puts(&quot;betonowy plik&quot;,&amp;fil_obj);<br />if (res) { put_rc(res, PSTR(&quot;f_puts&quot;)); return 0; }<br />else usart_putstring(&quot;f_puts&quot;);<br />/*<br />f_open(&amp;fil_obj, &quot;beton&quot;,   FA_WRITE );<br />f_lseek(&amp;fil_obj, fil_obj.fsize);<br />f_puts(&quot;1&quot;,&amp;fil_obj);<br /> */<br /><br />res = f_close(&amp;fil_obj);<br />if (res) { put_rc(res, PSTR(&quot;f_close&quot;)); return 0; }<br />else usart_putstring(&quot;f_close&quot;);<br /><br />res = f_mount(0, NULL);<br />if (res) { put_rc(res, PSTR(&quot;f_mount deinit&quot;)); return 0; }<br />else usart_putstring(&quot;f_mount deinit&quot;);<br /><br />res = disk_initialize(0);<br />if (res) { put_rc(res, PSTR(&quot;f_disk_init&quot;)); return 0; }<br />else usart_putstring(&quot;f_disk init&quot;);<br /><br />res = f_mount(0, &amp;FATFS_Obj);<br />if (res) { put_rc(res, PSTR(&quot;f_mount init sec&quot;)); return 0; }<br />else usart_putstring(&quot;f_mount init sec&quot;);<br /><br />res = f_open(&amp;fil_obj, &quot;beton&quot;, FA_READ);<br />if (res) { put_rc(res, PSTR(&quot;f_open sec&quot;)); return 0; }<br />else usart_putstring(&quot;f_open sec&quot;);<br /><br />if(!f_gets(rxbuf,sizeof(rxbuf),&amp;fil_obj))<br />{<br />usart_putstring(&quot;f_gets&quot;);<br />return 0;<br />}<br />else usart_putstring(rxbuf);<br /><br />res = f_close(&amp;fil_obj);<br />if (res) { put_rc(res, PSTR(&quot;f_close sec&quot;)); return 0; }<br />else usart_putstring(&quot;f_close sec&quot;);<br /><br />res = f_mount(0, NULL);<br />if (res) { put_rc(res, PSTR(&quot;f_mount deinit sec&quot;)); return 0; }<br />else usart_putstring(&quot;f_mount deinit sec&quot;);<br /><br /><br />return 0;<br />} [/c]<br /><br />W Putty:<br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">f_mount init<br />f_open<br />rc=13<br /> FR_NO_FILE_SYSTEM<br /><br />Command:f_puts<br /></div><br /><br />Wynika z tego, że f_mount zwraca FR_OK, f_open tworzy plik (na karcie SD jest plik &quot;BETON&quot;) i też zwraca FR_OK, a f_puts zwraca FR_NO_FILESYSTEM. Próbowałem formatować kartę i po tym problem ten sam jak powyżej. Używam karty GOODRAM 8GB. Czy to problem z kartą?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3945">JungleMan</a> — 7 gru 2015, o 12:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2015-12-01T22:06:17+01:00</updated>
<published>2015-12-01T22:06:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146865#p146865</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146865#p146865"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146865#p146865"><![CDATA[
<div class="quotetitle">JungleMan napisał(a):</div><div class="quotecontent"><br />Używam bibliotek autora, przerobionych zgodnie z BB. Niestety, aktualnie nie mam przy sobie płyty. Jutro spróbuję odpalić kod z płyty.<br /></div><br /><br />odpal kod z płyty tam wszystko działa ... jedyne z czym możesz mieć problem (sam to przerabiałem)<br />wykrywanie karty i to nie problem bibliotek a karty ... niektóre karty trzeba zakleić taśmą papierową na wcięciu, może to wynikać z jakości użytego gniazda ...<br />pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 1 gru 2015, o 22:06</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[JungleMan]]></name></author>
<updated>2015-12-01T21:58:18+01:00</updated>
<published>2015-12-01T21:58:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146860#p146860</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146860#p146860"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146860#p146860"><![CDATA[
Używam bibliotek autora, przerobionych zgodnie z BB. Niestety, aktualnie nie mam przy sobie płyty. Jutro spróbuję odpalić kod z płyty.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3945">JungleMan</a> — 1 gru 2015, o 21:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2015-12-01T21:53:42+01:00</updated>
<published>2015-12-01T21:53:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146855#p146855</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146855#p146855"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146855#p146855"><![CDATA[
a używasz przerobionych bibliotek z Mirka książki czy napisanych przez autora ??<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 1 gru 2015, o 21:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[JungleMan]]></name></author>
<updated>2015-12-01T16:35:51+01:00</updated>
<published>2015-12-01T16:35:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146802#p146802</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146802#p146802"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146802#p146802"><![CDATA[
Czy to może mieć związek z:<br />[c]<br />#define MMC_CD1/* Card detected.   yes:true, no:false, default:true */<br />#define MMC_WP0/* Write protected. yes:true, no:false, default:false */[/c]<br /><br />Ponieważ nie posiadam możliwości podłączenia tychże wyprowadzeń, ustawiłem to na sztywno. Czy to ma zły wpływ?<br /><br />Napomknę też, że funkcja f_read działa bez zarzutów. Niestety po wywołaniu f_write usuwany jest plik, który utworzyłem w celu odczytania danych testowych i powstają krzaki jak na powyższym zrzucie.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3945">JungleMan</a> — 1 gru 2015, o 16:35</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2015-12-01T15:06:37+01:00</updated>
<published>2015-12-01T15:06:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146787#p146787</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146787#p146787"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146787#p146787"><![CDATA[
Też nie miałem takich krzaków. Coś masz nie tak podłączone lub w sofcie.<br /><br />Namazane ze smarta.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 1 gru 2015, o 15:06</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[MirkoT]]></name></author>
<updated>2015-12-01T14:58:45+01:00</updated>
<published>2015-12-01T14:58:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146785#p146785</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146785#p146785"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146785#p146785"><![CDATA[
Coś Ci sieje po FAT'cie.<br />Nie miałem takich problemów.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=189">MirkoT</a> — 1 gru 2015, o 14:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[JungleMan]]></name></author>
<updated>2015-12-01T12:35:24+01:00</updated>
<published>2015-12-01T12:35:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146781#p146781</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146781#p146781"/>
<title type="html"><![CDATA[Re: [FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146781#p146781"><![CDATA[
Rozwiązałem problem. Nie należy używać w moim przypadku <em>disk_initialize(0)</em> oraz <em>f_mount (NULL, &quot;&quot;, 0)</em> przy deinicjalizacji. Teraz drugi problem. Po zapisie do pliku .txt na karcie tworzą się jakieś dziwne pliki (co widać na screenie) o niebotycznych rozmiarach (np. 3GB), lecz mimo tego rozmiaru widzianego w eksploratorze rozmiar zajmowany na dysku to rozmiar pliku .txt, który sam stworzyłem. Jak można się pozbyć problemu tworzenia tychże plików?<br /><a href="https://obrazkiforum.atnel.pl/3945/66f149f2195ebd8456e019193fd27977.png"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/3945/66f149f2195ebd8456e019193fd27977.png" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3945">JungleMan</a> — 1 gru 2015, o 12:35</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[JungleMan]]></name></author>
<updated>2015-11-30T22:28:19+01:00</updated>
<published>2015-11-30T22:28:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146764#p146764</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146764#p146764"/>
<title type="html"><![CDATA[[FatFS][Atmega 128] Zawieszenie na f_open]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13728&amp;p=146764#p146764"><![CDATA[
Witam.<br /><br />Do zapisu na kartę danych użyłem biblioteki FatFS. Problem polega na tym, że funkcja się zacina przy wywołaniu deselect(). Kod wygląda tak:<br />[c]BYTE res;<br /><br />Timer0_init();<br />USART_init();<br />sei();<br /><br />res = disk_initialize(0);<br />if (res) { put_rc(res); return 0; }<br /><br />res = f_mount(&amp;FatFs[0], &quot;&quot;, 0);<br />if (res) { put_rc(res); return 0; }<br /><br />check_flag = 1;<br />res = f_open(&amp;File[0], &quot;first.txt&quot;, FA_WRITE);<br />if (res) { put_rc(res); return 0; }[/c] <br /><br />Poprzez debugowanie za pomocą diody LED odtworzyłem ścieżkę po której następuje zawieszenie; wewnątrz <em>f_open</em>:<br />[c][...]<br />#if !_FS_READONLY<br />mode &amp;= FA_READ | FA_WRITE | FA_CREATE_ALWAYS | FA_OPEN_ALWAYS | FA_CREATE_NEW;<br />if(check_flag == 1) check_flag = 2;<br />res = find_volume(&amp;dj.fs, &amp;path, (BYTE)(mode &amp; ~FA_READ));<br />#else<br />mode &amp;= FA_READ;<br />res = find_volume(&amp;dj.fs, &amp;path, 0);<br />#endif<br />[...][/c]<br /><br />Potem wewnątrz <em>find_volume</em>:<br />[c][...]<br />bsect = 0;<br />if(check_flag == 2) check_flag = 3;<br />fmt = check_fs(fs, bsect);<br />[...][/c]<br /><br />Następnie wewnątrz <em>check_fs</em>:<br />[c][...]<br />fs-&gt;wflag = 0; fs-&gt;winsect = 0xFFFFFFFF;/* Invaidate window */<br />if(check_flag == 3) check_flag = 4;<br />if (move_window(fs, sect) != FR_OK)/* Load boot record */<br />return 3;<br />[...][/c]<br /><br />Wewnątrz <em>move_window</em>:<br />[c][...]<br />                if(check_flag == 4) check_flag = 5;<br />if (res == FR_OK) {/* Fill sector window with new data */<br />if (disk_read(fs-&gt;drv, fs-&gt;win, sector, 1) != RES_OK) {<br />sector = 0xFFFFFFFF;/* Invalidate window if data is not reliable */<br />res = FR_DISK_ERR;<br />}<br />fs-&gt;winsect = sector;<br />}<br />[...][/c]<br /><br />Następnie wewnątrz <em>disk_read</em>:<br />[c][...]<br />        if(check_flag == 5) check_flag = 6;<br />if (send_cmd(cmd, sector) == 0) {<br />do {<br />if (!rcvr_datablock(buff, 512)) break;<br />buff += 512;<br />} while (--count);<br />if (cmd == CMD18) send_cmd(CMD12, 0);/* STOP_TRANSMISSION */<br />}<br />[...][/c]<br /><br />Aż w końcu w <em>send_cmd</em>:<br />[c][...]<br />         if (cmd != CMD12) {<br />deselect();<br />if(check_flag == 6) PORTA |= (1&lt;&lt;PA4);<br />if (!select()) return 0xFF;<br />}<br />[...][/c]<br /><br />Zawieszenia zachodzi podczas wywołania deselect(). A dokładnie na <em>loop_until_bit_is_set</em>, z czego wynika, że bit SPIF nie ustawia się przy próbie otwarcia pliku. Wcześniej robiłem to samo za pomocą PetitFS i działało bez zarzutu. Nie wiem jak to rozwiązać. Czy ktoś wie co z tym zrobić?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3945">JungleMan</a> — 30 lis 2015, o 22:28</p><hr />
]]></content>
</entry>
</feed>