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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-12-16T19:40:17+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=30&amp;t=13880&amp;mode</id>
<entry>
<author><name><![CDATA[Kazik323]]></name></author>
<updated>2015-12-16T19:40:17+01:00</updated>
<published>2015-12-16T19:40:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148247#p148247</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148247#p148247"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148247#p148247"><![CDATA[
Źle sie wyraziłem, funkcja parsująca działa sobie niezależnie sama wywołuje sie gdy coś wpadnie do bufora, tylko moja funkcja odczytuje zmienne odebranie i odebranie2 co około 2s za sprawą timera.<br /><br /><br />Mój problem został rozwiązany, dziękuje bardzo za pomoc. <br />pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1193">Kazik323</a> — 16 gru 2015, o 19:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wojtekr51]]></name></author>
<updated>2015-12-16T17:49:57+01:00</updated>
<published>2015-12-16T17:49:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148234#p148234</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148234#p148234"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148234#p148234"><![CDATA[
<div class="quotetitle">Kazik323 napisał(a):</div><div class="quotecontent"><br />Panowie pod jaką kombinacją klawiszy w programie putty znajduje się znak &quot;LF&quot;?<br /></div>Możesz wpisać poprzez wciśnięcie i przytrzymanie prawego altu i wpisaniu nr znaku.<br />CR - 013<br />LF - 010<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1760">wojtekr51</a> — 16 gru 2015, o 17:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2015-12-16T17:26:48+01:00</updated>
<published>2015-12-16T17:26:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148232#p148232</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148232#p148232"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148232#p148232"><![CDATA[
<div class="quotetitle">Kazik323 napisał(a):</div><div class="quotecontent"><br />Panie Mirku, dlaczego zakłada pan że mam w swoim programie pełno delay?<br /></div><br />Nie wiem czy używasz delay ale jeśli sam piszesz, że:<br /><div class="quotetitle">Kazik323 napisał(a):</div><div class="quotecontent"><br />Gdy uruchomiłem funkcje w docelowym programie (pętla trwa ok 2s)<br /></div><br />to nie ważne czy używasz delay czy nie to, że tak powiem &quot;w diabły&quot; idzie idea prawidłowego i poprawnego działania parsowania danych poprzez obsługę zdarzeń.<br /><br /><div class="quotetitle">Kazik323 napisał(a):</div><div class="quotecontent"><br />Dlaczego pan uważa że nie wiem co to jest funkcja nie blokująca ?<br /></div><br />Oczywiście mogę źle zakładać - ale jak piszesz, że uruchomiłeś funkcję parsującą co 2 sekundy to do tego się to sprowadza<br /><br /><div class="quotetitle">Kazik323 napisał(a):</div><div class="quotecontent"><br />Dlaczego pan uważa że nie wiem co mi nadajnik wysyła?<br /></div><br />Powiedz mi oczekujesz pomocy i podpowiedzi czy chcesz mi coś zarzucać albo mówić mi że wszystko robisz dobrze - tylko że ci nie działa. No skoro nie działa to podpowiadam ci jak umiem na co możesz nie zwracać uwagi. tym bardziej, że wcale o tym nie napisałeś i nie odniosłeś się do tego - a już drugi raz napisałem o sprawdzaniu tego co dolatuje do bufora. Więc trzeba umieć sobie to debugować i po to się wypowiadam - a nie po to żebym miał komuś coś zarzucać że wie albo nie wie, że ma jakiś tam poziom wiedzy czy nie ma go .... no toż to chore troszkę podejście. Piszę i pomagam - ale jeśli źle to ok - nie będę pisał.<br /><br /><div class="quotetitle">Kazik323 napisał(a):</div><div class="quotecontent"><br />Nadajnik wysyła mi znaki CR LF.<br /></div><br />LF masz ładnie ignorowany w biblitece z GB o ile tej biblioteki używasz - a ty nadal ani się nie odniosłeś do tego że urządzenie może wysłać podwójne CRLF i że to żaden problem w obsłudze - ale ok .... wyłączam się.<br /><br />Może ktoś inny lepiej ode mnie pomoże.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 16 gru 2015, o 17:26</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kazik323]]></name></author>
<updated>2015-12-16T17:05:41+01:00</updated>
<published>2015-12-16T17:05:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148231#p148231</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148231#p148231"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148231#p148231"><![CDATA[
<div class="quotetitle">mirekk36 napisał(a):</div><div class="quotecontent"><br /><div class="quotetitle">Kazik323 napisał(a):</div><div class="quotecontent">Gdy uruchomiłem funkcje w docelowym programie (pętla trwa ok 2s) to wszystko ładnie działa.<br /></div><br />Już któryś raz na forum słyszę tak przedziwne, żeby nie powiedzieć straszne pomysły - no panowie panowie .... pomyślcie chwilę co to znaczy funkcja nieblokująca i zdarzenie. I jak macie to opóźniać to w zasadzie bez sensu w ogóle korzystać z takich mechanizmów. Napisz sobie wtedy program na delayach <br /></div><br /><br />Panie Mirku, dlaczego zakłada pan że mam w swoim programie pełno delay?<br />W swoim programie nie mam mam żadnego dalaya z wyjątkiem tego w bibliotece 1 wire. <br />Dlaczego pan uważa  że nie wiem co to jest funkcja nie blokująca ? <br />Dlaczego pan uważa że nie wiem co mi nadajnik wysyła? <br /><br />Nadajnik wysyła mi znaki CR LF.<br /><br />Panowie pod jaką kombinacją klawiszy w programie putty znajduje się znak  &quot;LF&quot;?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1193">Kazik323</a> — 16 gru 2015, o 17:05</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2015-12-16T16:16:10+01:00</updated>
<published>2015-12-16T16:16:10+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148226#p148226</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148226#p148226"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148226#p148226"><![CDATA[
<div class="quotetitle">Kazik323 napisał(a):</div><div class="quotecontent"><br />Gdy uruchomiłem funkcje w docelowym programie (pętla trwa ok 2s) to wszystko ładnie działa.<br /></div><br />Już któryś raz na forum słyszę tak przedziwne, żeby nie powiedzieć straszne pomysły - no panowie panowie .... pomyślcie chwilę co to znaczy funkcja nieblokująca i zdarzenie. I jak macie to opóźniać to w zasadzie bez sensu w ogóle korzystać z takich mechanizmów. Napisz sobie wtedy program na delayach <br /><br />Wracając do tego że co jakiś czas jest zero zamiast wartości - to pisałem już wyżej, co za problem wyświetlać sobie na LCD co ci tam przylatuje i wprowadzić później warunki które to wyeliminują .... Często takie urządzenia wysyłają np dwa znaki ENTER i jak myślisz co się wtedy dzieje ?<br /><br />dostajesz do funkcji parsującej pusty string! i jak myślisz na co jest to przerabiane przez atoi() ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 16 gru 2015, o 16:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kazik323]]></name></author>
<updated>2015-12-16T15:40:53+01:00</updated>
<published>2015-12-16T15:40:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148223#p148223</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148223#p148223"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148223#p148223"><![CDATA[
Witam, sam zrobiłem identyczna funkcje, zanim pan to opublikował.<br /><br />Zastanawia mnie jedna rzecz gdy w pętli niema żadnych opóźnień, to zmienna raz posiada wartość, a raz jest zerem.<br />x.yy<br />0.0<br />x.yy<br />0.0<br />Gdy uruchomiłem funkcje w docelowym programie (pętla trwa ok 2s) to wszystko ładnie działa. <br /><br /><br />Waszym zdanie co mogło być tego powodem ? ?<br /><br />Dziękuje za pomoc, <br />pozdrawiam.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1193">Kazik323</a> — 16 gru 2015, o 15:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2015-12-15T08:39:26+01:00</updated>
<published>2015-12-15T08:39:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148071#p148071</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148071#p148071"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148071#p148071"><![CDATA[
[syntax=c]void odbieraj_rs232 (char * buf ){<br /> <br /> <br />        char* wsk;<br /> <br />        wsk =strtok(buf, &quot; &quot;);  // tu łapiemy spację<br />if( !strcmp(wsk, &quot;SI&quot;)){<br />        wsk=strtok( NULL, &quot;.&quot; );  // tu łapiemy kropkę i pierwszą część liczby<br />        odebranie =atoi(wsk);<br />        wsk=strtok( NULL, &quot;k&quot; ); // tu łapiemy literkę k i drugą część liczby<br />        odebranie2 =atoi(wsk);<br /> <br />                        }<br />        }<br />}[/syntax]<br /><br />sprawdź - bo zobacz że u siebie próbujesz dwa razy łapać spację<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 15 gru 2015, o 08:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kazik323]]></name></author>
<updated>2015-12-14T23:15:50+01:00</updated>
<published>2015-12-14T23:15:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148047#p148047</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148047#p148047"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148047#p148047"><![CDATA[
waga wysyła mi taki string <br /><br /><a href="https://obrazkiforum.atnel.pl/1193/524d3256ad840c885997453652eede7e.JPG"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/1193/524d3256ad840c885997453652eede7e.JPG" alt="Obrazek" /></a><br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 28 minutach ]</span></strong><br /><br />panowie połowiczny sukces, ta funkcja do kropki mi wyświetla dobrze zmienną. niestety jeszcze po przecinku caly czas jest zero :<br />  <br />[syntax=c]void odbieraj_rs232 (char * buf ){<br /><br /><br />char* wsk;<br /><br />wsk =strtok(buf, &quot; &quot;);<br />if( !strcmp(wsk, &quot;SI&quot;)){<br />wsk=strtok( NULL, &quot; &quot; );<br />odebranie =atoi(wsk);<br />wsk=strtok( NULL, &quot;.&quot; );<br />odebranie2 =atoi(wsk);<br /><br />}<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1193">Kazik323</a> — 14 gru 2015, o 23:15</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[florekSi]]></name></author>
<updated>2015-12-14T23:14:18+01:00</updated>
<published>2015-12-14T23:14:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148045#p148045</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148045#p148045"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148045#p148045"><![CDATA[
lewy górny róg ekranu. wiadomości prywatne.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=11956">florekSi</a> — 14 gru 2015, o 23:14</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2015-12-14T23:04:41+01:00</updated>
<published>2015-12-14T23:04:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148042#p148042</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148042#p148042"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148042#p148042"><![CDATA[
<div class="quotetitle">Kazik323 napisał(a):</div><div class="quotecontent"><br />tak kropka mnie martwi, a ja zapisuje to jako &quot;int&quot;<br /></div><br /><br />No i dobrze, że cię martwi <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> no pewnie że to jeszcze trzeba rozbić na kolejne dwa tokeny - czyli kropkę potraktować jako token bo przecież funkcja atoi() to Ascii To Integer a nie ASCII TO FLOAT <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=54">mirekk36</a> — 14 gru 2015, o 23:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kazik323]]></name></author>
<updated>2015-12-14T22:53:54+01:00</updated>
<published>2015-12-14T22:53:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148035#p148035</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148035#p148035"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148035#p148035"><![CDATA[
Mam taki program napisany:<br /><br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 25-11-2015<br /> *      Author: Kazik<br /><br /><br /><br /><br /> */<br />#include &lt;avr/wdt.h&gt;<br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;string.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;stdlib.h&gt;<br />#include &lt;stdio.h&gt;<br /><br />//#include &quot;1Wire/ds18x20.h&quot;<br />#include &quot;MK_USART/mkuart.h&quot;<br /><br /><br />volatile int8_t odebranie = 245;<br /><br /><br />/************inicjalizacja funkcji*********************/<br />//float odbieraj_rs232 (char * buf );<br />void odbieraj_rs232 (char * buf ); // Miejsce na funkcje odbierajaca UART<br />void wysylanie_uart(uint8_t y);<br /><br /><br /><br />char uart_buf&#91;20&#93;; //bufor odbioru uart<br />char waga_1&#91;20&#93;; //bufor odbioru uart<br /><br /><br /><br /><br />int main(void){<br /><br /><br /><br />/****************** ustawienie TIMER0 dla F_CPU=16MHz *************************************/<br /><br />TCCR0 |= (1&lt;&lt;WGM01);/* tryb CTC */<br />TCCR0 |= (1&lt;&lt;CS02)|(1&lt;&lt;CS00);/* preskaler = 1024 */<br />OCR0 = 107;/* dodatkowy podział przez 107 (rej. przepełnienia) */<br />TIMSK |= (1&lt;&lt;OCIE0);/* zezwolenie na przerwanie CompareMatch */<br />/* przerwanie wykonywane z częstotliwością ok 10ms (100 razy na sekundę) */<br />/* do naszych celów nie musi być to bardzo dokładne 10ms */<br /><br /><br /><br />USART_Init(__UBRR);   //inicjalizacja predkosci transmisji<br />register_uart_str_rx_event_callback( odbieraj_rs232 );  // funkcja odbierajaca<br /><br /><br /><br />sei();<br /><br /><br />uart_puts (&quot;dzialam \r\n &quot;);<br />while (1){<br /><br />wysylanie_uart(1);<br />UART_RX_STR_EVENT (uart_buf);<br /><br />} // koniec while<br />}  // koniec main void<br /><br /><br /><br />void wysylanie_uart(uint8_t y) {<br />uint32_t i;<br />for (i = 0; i &lt; 230000; i++)<br /><br /><br /><br />uart_putint(odebranie, 10);<br />uart_puts(&quot;  \r\n&quot;); // nowa linia<br /><br /><br /><br />}<br /><br />void odbieraj_rs232 (char * buf ){<br /><br /><br />char* wsk;<br /><br />wsk =strtok(buf, &quot; &quot;);<br />if( !strcmp(wsk, &quot;SI&quot;)){<br />wsk=strtok( NULL, &quot; &quot; );<br />odebranie =atoi(wsk);<br />             wsk=strtok( NULL, &quot; &quot; );<br />}<br /><br />//wsk=strtok( NULL, &quot;k&quot; );<br />}[/syntax]<br /><br /><br /><br />Ta funk zwraca zero chyba dlatego, że otrzymuje ratość xx.yy    tak kropka mnie martwi, a ja zapisuje to jako &quot;int&quot;  prosze o pomoc, jak za zmienna zdefiniować.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1193">Kazik323</a> — 14 gru 2015, o 22:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2015-12-14T22:28:05+01:00</updated>
<published>2015-12-14T22:28:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148026#p148026</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148026#p148026"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148026#p148026"><![CDATA[
<div class="quotetitle">Kazik323 napisał(a):</div><div class="quotecontent"><br />SI 8.02kg -- tu mamy 7 spacj<br />SI 5.52kg --tu mamy 7 spacj <br />SI 15.02kg -- tu jest juz tylko 6 spacj<br />SI 30.02kg -- tu jest juz tylko 6 spacj<br /></div><br />Ja tak się zapytam nieśmiało - panie kolego czy ty wiesz w ogóle co oznacza słowo SPACJA ? Bo z tego co tu napisałeś wydaje mi się że nie wiesz - ale napisz to wtedy pewnie się wyjaśni bo przez to jakieś mega babole pewnie robisz<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 2 minutach ]</span></strong><br /><br />No ale nie - kod swojej funkcji napisałeś niby dobrze - uwzględniając spację jako token - więc nie rozumiem o co chodziło ci z tym rozpisaniem że tam widzisz po 7 czy 6 spacji<br /><br />Jak ci ta funkcja nie działa to sobie spróbuj to debugować - czyli albo wyświetlać na LCD co ci wpada do tej funkcji do buf bo pewnie czasem coś innego<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 14 gru 2015, o 22:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kazik323]]></name></author>
<updated>2015-12-14T21:41:41+01:00</updated>
<published>2015-12-14T21:41:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148011#p148011</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148011#p148011"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148011#p148011"><![CDATA[
teraz zauważyłem, że strona nie pokazuje ale mam <br /><br /><br />SI  8.02kg   -- tu mamy 7 spacj<br />SI  5.52kg   --tu mamy 7 spacj <br />SI 15.02kg   -- tu jest juz tylko 6 spacj<br />SI 30.02kg  -- tu jest juz tylko 6 spacj<br /><br /> tych dwóch spacji nie potrafię obsłużyć.<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 20 minutach ]</span></strong><br /><br />napisaem taką funkcje:<br /><br />[syntax=c]void odbieraj_rs232 (char * buf ){<br />char* wsk;<br /><br />wsk =strtok(buf, &quot; &quot;);<br /><br />wsk=strtok( NULL, &quot;k&quot; );<br />odebranie =atoi(wsk);<br />}[/syntax]<br /><br />niestety nadal zwracane mam zero<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1193">Kazik323</a> — 14 gru 2015, o 21:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2015-12-14T21:34:14+01:00</updated>
<published>2015-12-14T21:34:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148010#p148010</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148010#p148010"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148010#p148010"><![CDATA[
<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />SI 8.02kg <br />SI 5.52kg <br />SI 15.02kg <br />SI 30.02kg<br /></div><br />Panie no to masz ŚLICZNE DWA tokeny<br /><br />- pierszy token to SPACJA<br />- drugi token to litera 'k'<br /><br />i od razu z marszu masz wskaźnik dla stringa do atoi()<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 14 gru 2015, o 21:34</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kazik323]]></name></author>
<updated>2015-12-14T21:27:45+01:00</updated>
<published>2015-12-14T21:27:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148008#p148008</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148008#p148008"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=148008#p148008"><![CDATA[
Panie &quot;&quot;atmel&quot;&quot;<br />jako mogę przypisać zwróconą funkcje &quot;atof&quot;  do zmiennej &quot; odebranie&quot;<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1193">Kazik323</a> — 14 gru 2015, o 21:27</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[atmel]]></name></author>
<updated>2015-12-14T21:08:19+01:00</updated>
<published>2015-12-14T21:08:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147999#p147999</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147999#p147999"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147999#p147999"><![CDATA[
Funkcja &quot;atoi&quot; będzie zwracać 0 ponieważ jako parametr podajesz &quot;S&quot;.<br /><br />Tak to może wyglądać:<br />[syntax=c]float odbieraj (char * buf ){<br />   strtok(buf, &quot; &quot;);<br />   return atof(strtok(NULL, &quot;&quot;));<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1183">atmel</a> — 14 gru 2015, o 21:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kazik323]]></name></author>
<updated>2015-12-14T20:51:41+01:00</updated>
<published>2015-12-14T20:51:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147995#p147995</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147995#p147995"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147995#p147995"><![CDATA[
próbowałem takiej funkcji <br /><br />[syntax=c]void odbieraj (char * buf ){<br />char* wsk;<br /><br />wsk =strtok(buf, &quot;I&quot;);<br />odebranie =atoi(wsk);[/syntax]<br /> niestety funkcja zwraca mi zawsze zero <br /><br />waga wysyłą mi takie stringi:<br /><br /> SI       8.02kg <br /> SI       5.52kg <br /> SI      15.02kg <br /> SI      30.02kg<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1193">Kazik323</a> — 14 gru 2015, o 20:51</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[atmel]]></name></author>
<updated>2015-12-14T20:43:23+01:00</updated>
<published>2015-12-14T20:43:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147993#p147993</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147993#p147993"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147993#p147993"><![CDATA[
Nie znam tej biblioteki w związku z tym nie wiem czym jest &quot;uart_buf&quot; oraz jaki komunikat błędu otrzymujesz przy jakim kodzie.<br />Można stosować FSM (skończona maszyna stanów), ale jeżeli ta biblioteka ma zaimplementowany jakiś bufor, wtedy w zasadzie oczekujesz na znak 'k' lub też koniec łańcucha '\0' i dalej postępujesz tak jak napisałem w poprzednim poście. Jeżeli w &quot;MK_USART&quot; został użyty bufor pierścieniowy i brak jest funkcji zwracającej N ostatnich bajtów, musisz pamiętać o &quot;zawijaniu się&quot; tego bufora.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1183">atmel</a> — 14 gru 2015, o 20:43</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2015-12-14T20:34:32+01:00</updated>
<published>2015-12-14T20:34:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147991#p147991</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147991#p147991"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147991#p147991"><![CDATA[
<div class="quotetitle">Kazik323 napisał(a):</div><div class="quotecontent"><br />Witam, potrzebuje linijki kodu która zapisze string z wagi &quot;SI 0.02kg&quot; tak bym mógł go odebrać samą wartość wagi. <br />Parsować stringi umiem, ale nie widzę w tym stringu żadnego tokenu.<br /></div><br />Jak to nie ma tokenu ? a SPACJA to co ?<br /><br />porównaj poza tym kilka stringów, z różnymi wartościami bo jeśli tam np przy wartości SI12.02kg brak spacji no to widać wyraźnie, że podejść tu można na zasadzie wycięcia stringa ze środka od znaku nr X i zakończenia na znaku Y<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 14 gru 2015, o 20:34</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kazik323]]></name></author>
<updated>2015-12-14T20:16:56+01:00</updated>
<published>2015-12-14T20:16:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147987#p147987</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147987#p147987"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147987#p147987"><![CDATA[
Chodzi o to to że ten string będzie przysyłany przez uart cały czas, a wartość będzie zmienną zmieniającą się.  potrzebuje zapisać string przylatujący do &quot;uart_buf&quot; z biblioteki MK_USART.<br /><br />^^ funkcja nie kompiluje się gdy wstawię  &quot;uart_buf&quot;.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1193">Kazik323</a> — 14 gru 2015, o 20:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[atmel]]></name></author>
<updated>2015-12-14T19:58:57+01:00</updated>
<published>2015-12-14T19:58:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147986#p147986</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147986#p147986"/>
<title type="html"><![CDATA[Re: zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147986#p147986"><![CDATA[
Można to zrobić iteracyjnie, ale nie ma sensu wyważać otwartych drzwi:<br /><br />[syntax=c]#include &lt;stdio&gt;<br />// ...<br />char s&#91;&#93; = &quot;SI 0.02kg&quot;;<br />float Waga;<br />sscanf(s + 3, &quot;%f&quot;, &amp;Waga);[/syntax]<br />Teraz w zmiennej &quot;Waga&quot; znajduje się wartość 0.02.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1183">atmel</a> — 14 gru 2015, o 19:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kazik323]]></name></author>
<updated>2015-12-14T19:45:15+01:00</updated>
<published>2015-12-14T19:45:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147980#p147980</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147980#p147980"/>
<title type="html"><![CDATA[zapis stringu z USART do pamieci]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13880&amp;p=147980#p147980"><![CDATA[
Witam, potrzebuje linijki kodu która zapisze string z wagi &quot;SI       0.02kg&quot;  tak bym mógł go odebrać samą wartość wagi. <br />Parsować stringi umiem, ale nie widzę w tym stringu żadnego tokenu.  <br /> <br /><br />posiadam bluebooka, greenbooka, strosuje bliblioteke MK_USART z greenbooka.  <br /><br />Proszę o pomoc <br />Dziękuje pozdrawiam.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1193">Kazik323</a> — 14 gru 2015, o 19:45</p><hr />
]]></content>
</entry>
</feed>