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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2016-01-11T23:56:46+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=14149&amp;mode</id>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2016-01-11T23:56:46+01:00</updated>
<published>2016-01-11T23:56:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150306#p150306</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150306#p150306"/>
<title type="html"><![CDATA[Re: parsowanie danych  i wyłuskiwanie zmiennych]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150306#p150306"><![CDATA[
nie mylisz się - tak właśnie jest z tym strtok_r()<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 11 sty 2016, o 23:56</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[driver0207]]></name></author>
<updated>2016-01-11T23:18:57+01:00</updated>
<published>2016-01-11T23:18:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150304#p150304</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150304#p150304"/>
<title type="html"><![CDATA[Re: parsowanie danych  i wyłuskiwanie zmiennych]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150304#p150304"><![CDATA[
Nom identycznego nie ma w książce ale jest coś podobnego zgadza się, to są takie moje merytoryczne rozważania .<br />W książce jest dokładnie przykład :<br />[syntax=c]char tab &#91;&#93; = &quot;AT+LCD = 1,5,tekst&quot;;<br />chat* cmd_wsk ;<br />char* reszta;<br /><br /><br />cmd_wsk = strtok_r(tab,&quot;=&quot;, &amp;reszta);  //ten rozumiem zapis  w cmd_wsk otrzymujemy to co przed separatorem a w reszta to co po separatorze <br /><br /><br />cmd_wsk = strtok_r(NULL, &quot;,&quot; , &amp;reszta); //nie rozumiem tego zapisu  nie wiem gdzie jest ten analizowany string[/syntax]<br /><br /><br />z tego co widzę z pierwszego wariantu to funkcja działa tak:<br /><br />wynik _przed_separatorem =strtok_r(analizowany_string, separator, reszta_po separatorze);   <br /><br /><br />ale mogę się mylić:/<br /><br /><br /><br />Ale dla pewności jutro przeanalizuje jeszcze raz greenbook'a i bluebook'a i płytkę.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2199">driver0207</a> — 11 sty 2016, o 23:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2016-01-11T21:32:08+01:00</updated>
<published>2016-01-11T21:32:08+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150292#p150292</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150292#p150292"/>
<title type="html"><![CDATA[Re: parsowanie danych  i wyłuskiwanie zmiennych]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150292#p150292"><![CDATA[
<div class="quotetitle">driver0207 napisał(a):</div><div class="quotecontent"><br />Tak mam greenbooka lecz nie bardzo działa mi taka funkcja<br />cos nie do końca rozumiem . <br /><br /><br />Składnia: [ Pobierz ] [ Ukryj ]<br />język c<br />char buf [] = &quot;at+g=12&quot; ;<br />char* godzina;<br /> <br /> <br />buf =  strtok_r(NULL,&quot;=&quot;,&amp;godzina);<br />GeSHi<br /><br /><br />taki zapis w wyniku powinen mi dać<br /><br />buf = &quot;at+g&quot;<br />godzina = &quot;12&quot;<br /></div><br />Ale posłuchaj w książce nie ma takiego przykładu i to co napisałeś wyżej nie ma prawa nawet działać <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /><br /><br />Zajrzyj na DVD, na początek jeśli jeszcze nie rozumiesz do końca jak działa strtok_r() to właśnie rób tak jak robisz czyli używaj strtok() bo to dwie nieco różne funkcje. Różnią się tym, że strtok_r() pozwala na uzyskanie wskaźnika do pozostałej reszty stringu dzięki czemu można tę resztę przekazywać dalej do kolejnej funkcji jako argument ... omawiam to już w Bluebooku przy UDP i parsowaniu ... no ale w GB również<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 11 sty 2016, o 21:32</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[driver0207]]></name></author>
<updated>2016-01-11T18:44:36+01:00</updated>
<published>2016-01-11T18:44:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150274#p150274</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150274#p150274"/>
<title type="html"><![CDATA[Re: parsowanie danych  i wyłuskiwanie zmiennych]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150274#p150274"><![CDATA[
Tak mam greenbooka lecz nie bardzo działa mi taka funkcja<br />cos nie do końca rozumiem . <br /><br /><br />[syntax=c]char buf &#91;&#93; = &quot;at+g=12&quot; ; <br />char* godzina;<br /><br /><br />buf =  strtok_r(NULL,&quot;=&quot;,&amp;godzina);[/syntax]<br />  <br />taki zapis w wyniku powinen mi dać<br /><br />buf = &quot;at+g&quot;<br />godzina = &quot;12&quot;<br /><br /><br /><br /><br /><br /><br /><br />lecz gdy zrobię tak ze w tablice ze stringiem wstawię w miejsce null to działa.<br /><br />a zwracał mi wynik NULL<br /><br /><br />obecnie rozwiązałem problem i moja funkcja do parsowania danych wygląda tak . <br />[syntax=c]void parse_rs232 (char * buf){<br /><br /><br /><br />char*wsk;<br />char*smieci;<br />char*godziny;<br />char*min;<br /><br /><br />wsk=strtok(buf,&quot;+&quot;);<br />wsk=strtok(NULL,&quot;+&quot;);<br /><br /><br />if( ! strncmp(&quot;start_heather&quot;,wsk,13)){<br /><br />ogrzewanie_wlacz();<br />}<br />if( ! strncmp(&quot;stop_heather&quot;,wsk,12)){<br /><br />ogrzewanie_wylacz();<br /><br />}<br />if( ! strncmp(&quot;lock_dor&quot;,wsk,8)){<br /><br />zamknij();<br /><br />}<br />if( ! strncmp(&quot;unlock_dor&quot;,wsk,10)){<br /><br />otworz();<br /><br />}<br />if( ! strncmp(&quot;g=&quot;,wsk,1)){<br /><br /><br />smieci =strtok_r(wsk, &quot;=&quot;, &amp;godziny);<br />h=atoi(godziny);<br /><br />}<br />if( ! strncmp(&quot;m=&quot;,wsk,1)){<br /><br /><br />smieci =strtok_r(wsk, &quot;=&quot;, &amp;min);<br />m=atoi(min);<br /><br />}<br /><br />}[/syntax]<br /><br /><br />Nie bardzo wiem jak to działa w książce . I broń borze nie mowie ze jest źle . Po prostu nie rozumiem . Konkretnie chodzi mi o strony 424 i 425. Nie wiem czemu analizowany string jest wstawiony w miejsce wyniku czyli przed znakiem =<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2199">driver0207</a> — 11 sty 2016, o 18:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matekogon]]></name></author>
<updated>2016-01-11T07:48:42+01:00</updated>
<published>2016-01-11T07:48:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150235#p150235</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150235#p150235"/>
<title type="html"><![CDATA[Re: parsowanie danych  i wyłuskiwanie zmiennych]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150235#p150235"><![CDATA[
Kolego najlepszym rozwiązaniem takiego problemu jest sobie wyświetlać  zawartość wsk na lcd lub terminalu. Żebyś wiedział co nadleciało w jakiej formie, następnie to analizując pisać instrukcje<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1380">matekogon</a> — 11 sty 2016, o 07:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[eMCe2]]></name></author>
<updated>2016-01-11T06:21:34+01:00</updated>
<published>2016-01-11T06:21:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150231#p150231</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150231#p150231"/>
<title type="html"><![CDATA[Re: parsowanie danych  i wyłuskiwanie zmiennych]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150231#p150231"><![CDATA[
A czy twoje kmendy nie wygladaja tak: AT+KOMENDA+ ? Bo wydaje mi sie ze brakuje drugiego plusa wiec twoj wsk leci w pioruny...<br />Poza tym grzalka po ang to heater bo heather to wrzos <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1363">eMCe2</a> — 11 sty 2016, o 06:21</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2016-01-10T23:34:11+01:00</updated>
<published>2016-01-10T23:34:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150221#p150221</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150221#p150221"/>
<title type="html"><![CDATA[Re: parsowanie danych  i wyłuskiwanie zmiennych]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150221#p150221"><![CDATA[
Zdaje mi się, że masz Greenbooka a tam masz wprost przykłady na takie parsowanie<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 10 sty 2016, o 23:34</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[driver0207]]></name></author>
<updated>2016-01-10T22:01:08+01:00</updated>
<published>2016-01-10T22:01:08+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150210#p150210</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150210#p150210"/>
<title type="html"><![CDATA[parsowanie danych  i wyłuskiwanie zmiennych]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14149&amp;p=150210#p150210"><![CDATA[
Witam witam mam problem trochę z parsowaniem danych . <br /><br />mam taką funkcję<br /><br />[syntax=c]void parse_rs232 (char * buf){<br /><br /><br /><br />char*wsk;<br />char*godziny;<br />char*min;<br /><br /><br />wsk=strtok(buf,&quot;+&quot;);<br />wsk=strtok(NULL,&quot;+&quot;);<br /><br /><br />if( ! strncmp(&quot;start_heather&quot;,wsk,13)){<br /><br />ogrzewanie_wlacz();<br />}<br />if( ! strncmp(&quot;stop_heather&quot;,wsk,12)){<br /><br />ogrzewanie_wylacz();<br /><br />}<br />if( ! strncmp(&quot;lock_dor&quot;,wsk,8)){<br /><br />zamknij();<br /><br />}<br />if( ! strncmp(&quot;unlock_dor&quot;,wsk,10)){<br /><br />otworz();<br /><br />}<br />if( ! strncmp(&quot;g&quot;,wsk,1)){        //tu jest problem<br /><br />godziny=strtok(buf,&quot;=&quot;);<br />godziny=strtok(NULL,&quot;=&quot;);<br /><br />h = atoi(wsk);<br />}<br /><br />}[/syntax]\<br /><br /><br />wszystko działa lecz mam problem z parsowaniem ostatniego stringa<br /><br /><br />dane nadlatujące to :<br />at+g=12<br />i chce gdy nadleci komenda at+g wtedy ma przypisać zawartość po znaku &quot;=&quot; do zmiennej h niestety nie działa mi to:( nie wiem jak to rozwiazac<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2199">driver0207</a> — 10 sty 2016, o 22:01</p><hr />
]]></content>
</entry>
</feed>