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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-02-03T18:05:48+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=10492&amp;mode</id>
<entry>
<author><name><![CDATA[Radzio M.]]></name></author>
<updated>2015-02-03T18:05:48+01:00</updated>
<published>2015-02-03T18:05:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=10492&amp;p=117051#p117051</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=10492&amp;p=117051#p117051"/>
<title type="html"><![CDATA[PETITFS Atmega32]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=10492&amp;p=117051#p117051"><![CDATA[
Witam. Chcę zapisywać pomiary z GPSa na SD, po kliknięciu na klawisz. <br />Próbuję to zrobić korzystając z PetitFS. Z tego co wyczytałem można tylko edytować istniejący plik nie zmieniając jego rozmiaru.<br />No to myk .... tworzę sobie plik test.txt z taką zawartością '#' 100x '*'<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************</div><br /><br /><br />Takie informację chcę wpisywać w kolejne wiersze pliku test.txt<br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">1: 0S0m0s*******************************************************************************************<br />2: 0S0m0s*******************************************************************************************<br />3: 0S0m0s*******************************************************************************************<br />4: 0S0m0s*******************************************************************************************<br />5: 0S0m0s*******************************************************************************************<br />6: 0S0m0s*******************************************************************************************</div><br /><br />Są to niepełne komunikaty, zawsze ma być 101 znaków, tzn. , że komunikat może być różnej długości lecz pozostałe <br />znaki będą jako '*'.<br /><br /><br />A to otrzymuję :<br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">0: 0S0m0s*******************************************************************************************                                                            ˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙˙*<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br />#****************************************************************************************************<br /></div><br /><br /><br />Kod :<br />[syntax=c]void put_LAT_LONG_ALT(void){<br />uint8_t i = 0;<br /><br /><br />//uart_puts(GPS_log_data);<br />//new_line<br /><br /><br />if( res == FR_OK ) {<br />res = pf_mount(&amp;fs);<br />if( res == FR_OK ) {<br />res = pf_open(file_name);<br />if( res == FR_OK ) {<br /><br />res = pf_read(latitude_longitude_altitude, sizeof(latitude_longitude_altitude), &amp;s1);<br /><br />if( res == FR_OK ) {<br />latitude_longitude_altitude&#91;s1+1&#93; = 0;<br />//lcd_str(bufor);<br /><br /><br /><br />lcd_locate(0,0);<br />lcd_str(&quot;zapis-&gt; test.txt&quot;);<br /><br />if(latitude_longitude_altitude&#91;0&#93;=='#') {<br />sprintf(latitude_longitude_altitude,<br />&quot;%d: %dS%dm%ds%c,%dS%dm%ds%c,%d.%d%c&quot;,<br />ramka,<br />measure.Latitude_dd,<br />measure.Latitude_mm_d,<br />measure.Latitude_mm_u,<br />measure.N_S_indicator,<br />measure.Longlitude_ddd,<br />measure.Longlitude_mm_d,<br />measure.Longlitude_mm_u,<br />measure.W_E_indicator,<br />measure.MSL_altitude_d,<br />measure.MSL_altitude_u,<br />measure.units);<br /><br />for(i=0;*(latitude_longitude_altitude + i) != '\0'; i++);<br />if(i &lt; 100){<br />memset(latitude_longitude_altitude + i, '*', 101-i);<br />}<br />}<br />//else sprintf(latitude_longitude_altitude, &quot;&quot;);<br /><br />s1=0;<br />res = pf_write(latitude_longitude_altitude, sizeof(latitude_longitude_altitude), &amp;s1);<br />write_close();<br /><br />if( res != FR_OK ) {<br />lcd_locate(0,0);<br />lcd_str(&quot;write file error&quot;);<br />} else {<br />lcd_locate(1,0);<br />lcd_str(&quot;OK,   zresetuj  &quot;);<br />}<br /><br />pf_mount(NULL);<br /><br /><br /><br />} else lcd_str(&quot;read error&quot;);<br /><br />} else lcd_str(&quot;opern file error&quot;);<br />} else lcd_str(&quot;mount error&quot;);<br />} else lcd_str(&quot;disk init error&quot;);<br /><br /><br /><br />//sprintf(latitude_longitude_altitude,<br />//&quot;%d: %dS%dm%ds%c,%dS%dm%ds%c,%d.%d%c&quot;,<br />//ramka,<br />//measure.Latitude_dd,<br />//measure.Latitude_mm_d,<br />//measure.Latitude_mm_u,<br />//measure.N_S_indicator,<br />//measure.Longlitude_ddd,<br />//measure.Longlitude_mm_d,<br />//measure.Longlitude_mm_u,<br />//measure.W_E_indicator,<br />//measure.MSL_altitude_d,<br />//measure.MSL_altitude_u,<br />//measure.units);<br />//for(i=0;*(latitude_longitude_altitude + i) != '\0'; i++);<br />//if(i &lt; 100){<br />//memset(latitude_longitude_altitude + i, '*', 100-i);<br />//}<br /><br />uart_puts(latitude_longitude_altitude);<br />new_line<br />new_line<br /><br />//lcd_locate(0,0);<br />//lcd_str(&quot;SAT:= &quot;);<br />//lcd_int(measure.Satellites_used);<br />//lcd_locate(1,0);<br />//lcd_str(&quot;FIX:= &quot;);<br />//lcd_int(measure.Position_fix_indicator);<br /><br /><br /><br />ramka++;<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=396">Radzio M.</a> — 3 lut 2015, o 18:05</p><hr />
]]></content>
</entry>
</feed>