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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-08-30T20:21:05+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=4013&amp;mode</id>
<entry>
<author><name><![CDATA[xamrex]]></name></author>
<updated>2013-08-30T20:21:05+01:00</updated>
<published>2013-08-30T20:21:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47540#p47540</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47540#p47540"/>
<title type="html"><![CDATA[Re: Zamiana switch na if]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47540#p47540"><![CDATA[
Może ktoś odpowie co zrobił markopololop źle <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=74">xamrex</a> — 30 sie 2013, o 20:21</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[PJS]]></name></author>
<updated>2013-08-30T06:59:20+01:00</updated>
<published>2013-08-30T06:59:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47444#p47444</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47444#p47444"/>
<title type="html"><![CDATA[Re: Zamiana switch na if]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47444#p47444"><![CDATA[
Przeanalizuj, co w jednym i drugim przypadku się stanie, gdy &quot;nadejdzie&quot; 0x0D.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1614">PJS</a> — 30 sie 2013, o 06:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[shoc]]></name></author>
<updated>2013-08-29T20:45:13+01:00</updated>
<published>2013-08-29T20:45:13+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47412#p47412</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47412#p47412"/>
<title type="html"><![CDATA[Re: Zamiana switch na if]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47412#p47412"><![CDATA[
Podpowiedź z mojej strony - zastanów się nad znaczeniem wyrażenia &quot;break;&quot; (tu jest ukryta różnica w działaniu jednego i drugiego kodu <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=269">shoc</a> — 29 sie 2013, o 20:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[markopololop]]></name></author>
<updated>2013-08-29T15:33:43+01:00</updated>
<published>2013-08-29T15:33:43+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47390#p47390</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47390#p47390"/>
<title type="html"><![CDATA[Re: Zamiana switch na if]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47390#p47390"><![CDATA[
Niestety ciągle nie widzę różnicy w działaniu pomiędzy jednym a drugim kodem. Wydaje mi się że jeśli nadleci tylko znak 0x0A to nie stanie się nic i znak zostanie całkowicie pominięty (i o to chodzi). Różnica jakaś musi być bo pierwszy  kod działa a drugi nie. Nie wiem co źle zrobiłem przerabiając to na instrukcje if.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1221">markopololop</a> — 29 sie 2013, o 15:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-08-29T11:46:05+01:00</updated>
<published>2013-08-29T11:46:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47382#p47382</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47382#p47382"/>
<title type="html"><![CDATA[Re: Zamiana switch na if]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47382#p47382"><![CDATA[
Teraz widzisz dlaczego dałem switch ? <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> zamiast IF'ów ? .... bo o wiele prościej można zapisać to w kodzie. Oczywiście da radę to zrobić z IF'ami <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> .... ale tak żeś pan zamieszał, że nie dziwię się że nie działa ... masz poważne byki w kodzie ...<br /><br />podpowiedź <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> .... a co się stanie u ciebie gdy nadleci tylko 0x0A ? może to cię naprowadzi <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> — 29 sie 2013, o 11:46</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[markopololop]]></name></author>
<updated>2013-08-29T11:39:26+01:00</updated>
<published>2013-08-29T11:39:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47380#p47380</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47380#p47380"/>
<title type="html"><![CDATA[Zamiana switch na if]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4013&amp;p=47380#p47380"><![CDATA[
Witam<br />Mam problem z następującym kodem, który był umieszczony w książce &quot;Język C. Pasja programowania mikrokontrolerów 8-bitowych&quot;. Zrobiłem w nim kilka zmian.<br /><br />Oto kod (działa jak chciałem):<br />[syntax=c]ISR (USART1_RX_vect,ISR_BLOCK){<br />uint8_t temp_head;<br />char data;<br /><br />data=UDR1;<br />temp_head = (uart_rx_head + 1) &amp; UART1_RX_BUF_MASK;<br />if(temp_head == uart_rx_tail){<br />uart_rx_head = uart_rx_tail; // utrata danuch w buforze<br />}<br />else{<br />switch (data){<br />case 0x0A: break;//ignorujemy znal LF<br />case 0x0D:<br />if (tog_value){<br />ascii_line++;//inkrementacja po każdym znaku CR<br />uart_rx_head = temp_head; uart_rx_buf&#91;uart_rx_head &#93; = data; <br />}<br />tog_value ^= 1;<br /><br />default: uart_rx_head = temp_head; uart_rx_buf&#91;uart_rx_head &#93; = data;<br />}<br />}<br />}[/syntax]<br /><br />Chciał bym zamienić instrukcje switch na if i nie mogę tego zrobić bo jak zrobię tak jak poniżej to nie działa <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /><br />[syntax=c]ISR (USART1_RX_vect,ISR_BLOCK){<br />uint8_t temp_head;<br />char data;<br /><br />data=UDR1;<br />temp_head = (uart_rx_head + 1) &amp; UART1_RX_BUF_MASK;<br />if(temp_head == uart_rx_tail){<br />uart_rx_head = uart_rx_tail; // utrata danuch w buforze<br />}<br />else{<br />if (data == 0x0A){}//ignorujemy znal LF<br />else if (data == 0x0D){<br />if (tog_value){<br />ascii_line++;//inkrementacja po każdym znaku CR<br />uart_rx_head = temp_head; uart_rx_buf&#91;uart_rx_head &#93; = data; // sprawdzenie<br />}<br />tog_value ^= 1;<br />}<br />else  { uart_rx_head = temp_head; uart_rx_buf&#91;uart_rx_head &#93; = data;}<br />}<br />}[/syntax]<br /><br />Proszę o pomoc.<br />Pozdrawiam <br />Marek<br /><br /><span style="color: #FF0000">Czyżby podczas pisania postu nie był widoczny napis:<br /><br />&quot;Do wstawiania kodu używamy znacznika 'syntax' zamiast znacznika 'code'&quot;??<br /><br />Różowy J.</span><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1221">markopololop</a> — 29 sie 2013, o 11:39</p><hr />
]]></content>
</entry>
</feed>