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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-12-10T09:54:58+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=5074&amp;mode</id>
<entry>
<author><name><![CDATA[Paul Dirac]]></name></author>
<updated>2013-12-10T09:54:58+01:00</updated>
<published>2013-12-10T09:54:58+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5074&amp;p=60387#p60387</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5074&amp;p=60387#p60387"/>
<title type="html"><![CDATA[Re: kod enkodera - tablica]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5074&amp;p=60387#p60387"><![CDATA[
Temat uważam za zamkniety. Sunriver zarzucił rysunek i po jakimś czasie all obczaiłem.<br /><br />Polecam rozkminienie kodu encodera, pozwala to troche poszerzyc horyzonty programistyczne. A więc rysunek, kktóry dostałem od suna:<br /><a href="http://forum.atnel.pl/_obrazki/o/1035/bff2c24e116a1ed2c6f2d51099ec72d3.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/1035/bff2c24e116a1ed2c6f2d51099ec72d3.jpg" alt="Obrazek" /></a><br /><br />W sumie analiza kodu jest taka prosta, że wstyd o tym pisać. Ale gwarantuje jak obczaisz, to zapamietasz na całe zycie- ja tak mam. <br />A co do kodu suna, to juz w jednym z tematów jest jak to obczaic, w sumie któryś z uzytkowników rozpisał all w prawo i w lewo, więc można prześledzić jego rozumowanie. Jest jak najbardziej poprawne.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1035">Paul Dirac</a> — 10 gru 2013, o 09:54</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Paul Dirac]]></name></author>
<updated>2013-12-08T23:05:07+01:00</updated>
<published>2013-12-08T23:05:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5074&amp;p=60188#p60188</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5074&amp;p=60188#p60188"/>
<title type="html"><![CDATA[kod enkodera - tablica]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5074&amp;p=60188#p60188"><![CDATA[
Cześć!<br /><br />W sumie napisałem kod z poradnikiem wideo mirka i w sumie all działa. Ale nie rozumiem skąd ta tablica:<br />const int8_t table[16] PROGMEM = {0,1,-1,0,-1,0,0,1,1,0,0,-1,0,-1,1,0};<br />widac, że mozna ja podzielić na 4 część podobne:<br />{0,1,-1,0},{-1,0,0,1},{1,0,0,-1},{0,-1,1,0}<br />wdać w sumie, że 1 i 4 są takie same tylko odwórcone wartości. Podobnie jak 2 i 3. Nie wiem w przerwaniu mamy:<br />[syntax=c]static uint8_t last;<br />    static uint8_t last_ed;<br /><br />    last = (last &lt;&lt; 2)  &amp; 0x0F; <br />    if (PHASE_A) last |=2;<br />    if (PHASE_B) last |=1;<br />    ed += pgm_read_byte( &amp;table&#91;last&#93; );<br /><br />    if( last_ed != ed ) enc_flag=1;<br /><br />    last_ed=ed;[/syntax]<br />Jak mirek mówił w filmie jest to kod greya. Ale jak widać zmienna last ciągle przesuwa, w koncu sie zeruje co pozwala dodac do zmiennej ed 0 wiec spoko. W sumie jakieś sugestie mile widziane.<br />A właśnie jak widać w kodzie gdy dodamy do zmiennej last 2 znaczy 10 i w nastepnym przesuniemy o 2 i znowu dodamy 10 to mamy: 1010 = 10, znaczy zgodnie z tablicą dodajemy 0, czy tak powinno być?<br /><br /><br />Przedstawiam wam kod greya po moich poprawkach:<br />const int8_t table[16] PROGMEM = {0,1,-1,0,0,0,0,0,0,0,0,0,0,-1,1,0};<br />dziwne nie?<br />Ale czemu i by nie. Skoro wystaczy dokonac poprawki w evencie na: ecnt = ed&gt;&gt;1; ed &amp;= 0x01; i tez skacze co 1.  Mam nadzieje, że zamieszałem i to konkretnie <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=1035">Paul Dirac</a> — 8 gru 2013, o 23:05</p><hr />
]]></content>
</entry>
</feed>