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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2011-11-11T11:47:10+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=49&amp;mode</id>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2011-11-11T11:47:10+01:00</updated>
<published>2011-11-11T11:47:10+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=49&amp;p=329#p329</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=329#p329"/>
<title type="html"><![CDATA[Re: Problem teoretyczny do rozwiazania...]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=329#p329"><![CDATA[
Masz racje Mirku troche zamotałem ale faktycznie wydaje mi się iż użycie algorytmu Boole'a ma sens<br />choć szukam szybszego rozwiazania, które by pozwalało odczytać stan switcha porównać, odczytaną <br />wartość z maską i przekazać tą informacje do programu , który wykona w zależności od  wartości określonej przez powyższe .... wykonać przypisane procedury:)<br /><br />---------<br />a teraz przedstawie kawałek układanki <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br /><a href="http://img689.imageshack.us/i/sc2441661.jpg/"  class="postlink"><img src="http://img689.imageshack.us/img689/1121/sc2441661.jpg" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 11 lis 2011, o 11:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2011-11-11T01:44:00+01:00</updated>
<published>2011-11-11T01:44:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=49&amp;p=328#p328</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=328#p328"/>
<title type="html"><![CDATA[Re: Problem teoretyczny do rozwiazania...]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=328#p328"><![CDATA[
Wiesz ... obsługę to można zrobić na miliard dwieście tysięcy sposobów, w zależności od potrzeb <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> .... ja jednak nie za bardzo jakby nadal widzę tego co chcesz uzyskać - tzn nie widzę całości/celu .... dlatego ciężko mi np coś jeszcze innego zaproponować czy wnieść do dyskusji. <br /><br />Tzn np nie rozumiem po co ci aż tyle zmiennych tych chkDipX ???? skoro masz tylko jeden rotor i możliwa jest tylko jego jedna wartość przecież. <br /><br />przecież po odczycie wartości portu (zakładając, że rotor podłączony jest do najstarszych bitów)<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">uint8_t chkDip = PINB &gt;&gt; 4;</div><br /><br />masz od razu w takiej jednej zmiennej wartość binarną wybraną przez tenże rotor (wartości od 0 do 15)<br /><br />więc teraz gdybym chciał sprawdzić czy aktywna jest wartość 7 to wystarczyłby warunek:<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">if( chkDip == 7 ) .....</div><br /><br />albo wczytanie do innej zmiennej wartości true lub false:<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">wartosc = chkDip == 7;</div><br /><br />i wtedy wartosc = 1 (<strong>true</strong>) jeśli rotor jest w pozycji 7 albo wartosc = 0 (<strong>false</strong>) jeśli jest w innej pozycji.<br /><br />No chyba że ty go chcesz użyć właśnie w jakimś takim celu o jakim ja nie mam pojęcia? <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> — 11 lis 2011, o 01:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2011-11-11T00:04:22+01:00</updated>
<published>2011-11-11T00:04:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=49&amp;p=327#p327</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=327#p327"/>
<title type="html"><![CDATA[Re: Problem teoretyczny do rozwiazania...]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=327#p327"><![CDATA[
Idąc dalej teraz Switha widze w innym świetle i traktuje go jak powinienem czyli :<br />czyli poprostu jako zwykły 16 pozycyjny coder binarny <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />a więc mniej więcej obsługę widzę tak:<br />używając bit maskingu:<br />[syntax=c]<br /> int wartosc; // tu będa zapisywane wartości kodera z zakresu 0 - 7<br /> long wynik; // będzie to zmienna do przechowywania naszych zamaskowanych wartości  <br /> <br />wynik = 1 &amp; wartość;        //maska  wartości przed  0001<br />        chkDip1 = wynik == 1 ? true : false; //przypisanie  'true' lub 'false' do zmiennej chkDip1<br />wynik = 2 &amp; wartość;        // 0011<br />        chkDip2 = rezultat == 2 ? true : false;<br />wynik = 3 &amp; wartość;        //0111<br />        chkDip3 = wynik == 3 ? true : false;<br />wynik = 4 &amp; wartość;        //<br />        chkDip4 = wynik == 4 ? true : false;<br />wynik = 5 &amp; wartość;      //<br />        chkDip5 = wynik == 5 ? true : false;<br />wynik = 6 &amp; wartość;      //<br />        chkDip6 = wynik == 6 ? true : false;<br />wynik = 7 &amp; wartość;      <br />        chkDip7 = wynik == 7 ? true : false;<br />wynik = 8 &amp; wartosc;    <br />        chkDip8 = wynik == 8 ? true : false;<br /><br />[/syntax]<br /><br />oczywiście w tej chwili niema znaczenia prawidłowość  bo chodzi mi o zobrazowanie jak się za to coś zabrać <br /><br />Jak to działa? <br /><br />Bit masking jest techniką, w którym binarne operacje są używane do pobierania danych.  Wykorzystuje proste algorytmy Boole'a do ustalenia, czy konkretna wartość znajduje się w zestawie bitów.  &quot;wynik = X &amp; wartość&quot; jest to fragment  procedury maskowania.  Zmienna &quot;Wartość&quot; reprezentuje &quot;zdemaskowane&quot; dane odczytane z przełacznika, &quot;X&quot; jest maską, a zamaskowane dane reprezentuje zmienna &quot;wynik&quot;.  Maskowanie Bitów jest procesem analizy związanej z bitami i zbieraniem wyników.  Odbywa się to za pomocą operacji logicznych i operatora AND. W efekcie jeśli zamaskowane dane są takie same jak maska , a maska jest obecna jako podzbiór danych następuje porównanie. <br /><br />Przykładowo:<br />Analiza wartości dla 7 pozycji SWitcha -- sprawdzenie czy jest aktywny<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">0111   wartość binarna odczytana przez mikrokontroler<br />1000   maska  określająca pozycje 7 reprezentujaca SW7<br />-------------<br />0111   wynik  0x07  włacznik aktywny na pozycji 7<br /><br /> <br /></div><br />hmmm  no mam nadzieje ze nie zamotałem zabardzo<br /><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=58">SunRiver</a> — 11 lis 2011, o 00:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2011-11-10T15:47:35+01:00</updated>
<published>2011-11-10T15:47:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=49&amp;p=324#p324</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=324#p324"/>
<title type="html"><![CDATA[Re: Problem teoretyczny do rozwiazania...]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=324#p324"><![CDATA[
No tak Mirku coś w tym jest , ale jakie ma to znaczenie jakimi portami czytam skoro odczytana wartośc z pozycji przykładowej &quot;B&quot; = 1101   wiec czy podepne to tak czy inaczej ta wartość nie ulega zmianie <br />bo czytam z rotora 1101 , chyba sam się już zaplątałem i już widzę gdzie popełniłniam bład. I przez traktowanie go na siłę jako hexagona  stracvilem wątek <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br /><br />faktycznie powinienem czytać  go odwrotnie  wtedy  pod pozycją  &quot;B&quot; mam 1011 a nie 1101  co z koleji wzięło się z używania 10 pozycyjnych z kodowaniem BCD i teraz pokutuje.<br /><br />W istocie fizycznie ten sw wystawia przecierz stan binarnie i tu łatwo się z nim rozprawić <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />a ja oczywiście zamotałem się na konwersji konwersji z postaci bin na BCD , BCD na HEX i HEX na ASCII<br /><br />ot widzisz na starość człowiek głupieje <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />Dzieki za pomoc. Bo sam się na siłe zamotałem <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br /><span style="color: #BF0000">Oczywiście jak masz jakiś ciekawy pomysł lub ktos inny z tym oto ustrojem to zapraszam do pogawędki <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /></span><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 10 lis 2011, o 15:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2011-11-09T23:57:27+01:00</updated>
<published>2011-11-09T23:57:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=49&amp;p=323#p323</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=323#p323"/>
<title type="html"><![CDATA[Re: Problem teoretyczny do rozwiazania...]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=323#p323"><![CDATA[
<div class="quotetitle">SunRiver napisał(a):</div><div class="quotecontent"><br />podłaczenie  jak updatowałem wyżej  czyli  wejścia C po jednym na VCC i GND <br />a PINY 1,2,4,8  do portów mikrokontrolera np PORTB bity 4,5,6,7   czyli PB4 ,  itd   przez rezystory 220om<br /></div><br /><br />No to może jednak tutaj kolega się myli ? Już mówię o co chodzi. Bo jeśli dla ciebie ustawienie pozycji <strong>B</strong> na rotorze to wartość <strong>0x0D</strong> to by oznaczało, że pozycja <strong>E</strong> na rotorze to wartość <strong>0x07</strong> tak ??? a np pozycja <strong>1</strong> to wartość <strong>0x08</strong> tak ??<br /><br />No to nawet nie można powiedzieć, że to zależy <span style="color: #8000FF">&quot;jak na to spojrzeć&quot;</span>, bo to przecież zależy tylko i wyłącznie <span style="color: #BF00FF">&quot;jak to podłączyć&quot;</span>.<br /><br />Spójrz może na ten rysunek poniżej czy nie mam racji - że punkt widzenia zależy od podłączenia ? <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br /><a href="http://forum.atnel.pl/_obrazki/o/54_040944dcbd8e0872b19093f9dffa1725.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/54_040944dcbd8e0872b19093f9dffa1725.jpg" alt="Obrazek" /></a><br /><br />dlatego jeśli podłączysz sobie wg tego sposobu po prawej to masz ładnie po kolei stany na wyjściach rotora zgodne z kodami, wtedy pozycja B to będzie kod 0x0B , pozycja E to będzie kod 0x0E <em>(tzn tak mi się wydaje - bo nigdy takich rotorków nie miałem okazji używać)</em><br /><br />a skoro tak ? no to wystarczy sobie już bez żadnego problemu zamienić wartość binarną odczytaną na pinach portu i zamienić ją na postać HEX. Jeśli podłączysz do jednak do 1 - PB4, 2 - PB5, 4 - PB6, 8 - PB7<br /><br />no to sam zapewne już widzisz że przed konwersją BIN na HEX wystarczy zrobić sobie przesunięcie:<br /><br />[syntax=c]uint8_t val = PINB &gt;&gt; 4;[/syntax]<br /><br />i teraz jakąś funkcją wywalić na LCD, np:<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">lcd_put_string( bin_to_hex( val ) );</div><br /><br />albo zrobić sobie tablicę stringów:<br /><br />[syntax=c]char text[16][] = {<br />    &quot;napis1&quot;,<br />    &quot;napis2&quot;,<br />    //........<br />    &quot;napis16&quot;<br />};[/syntax]<br /><br />i potem:<br /><br />[syntax=c]lcd_put_string( &amp;text[val][0] );[/syntax]<br /><br />dobrze mówię ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 9 lis 2011, o 23:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2011-11-09T23:14:21+01:00</updated>
<published>2011-11-09T23:14:21+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=49&amp;p=321#p321</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=321#p321"/>
<title type="html"><![CDATA[Re: Problem teoretyczny do rozwiazania...]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=321#p321"><![CDATA[
Sprawa jest prosta mamy :<br /><br />mamy dwa wejscia C - sygnałów  GND i VCC <br />oraz 4 wyjscia (4bity)  rotor  ma oznaczenie hexagonalne czyli 0123456789ABCDEF <br /><br />dla wybranego  rotorem wskazania B układ na wyjściach 1,2,4,8 bedzie obrazowany przez stany <br />odpowiednio 1101 binarnie co w hexie jest równe 0D   dlatego dla B dostaniemy 0D <br />to tyle co wynika z tabelki <br /><br />podłaczenie  jak updatowałem wyżej  czyli  wejścia C po jednym na VCC i GND <br />a PINY 1,2,4,8  do portów mikrokontrolera np PORTB bity 4,5,6,7   czyli PB4 ,  itd   przez rezystory 220om  <br /><br />i nparzykład na tej podstawie chcę wyswietlić  np wybrane B na rotorze <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />to tylko przykład teoretyczny bo układ jak napisałem to ma służyć docelowo wybieraniu 16 mozliwych ustawień programu , ale utknołem właśnie na czytaniu tego wrednego hex obrotowego , <br />zaczynam się zastanawiac czy czasem jakoś źle go nie potraktowałem bo przeca uzywałem z powodzeniem mniejszych braci mających 10 pozycji tyle że one generowały na wyjściu BCD<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 9 lis 2011, o 23:14</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2011-11-09T22:59:01+01:00</updated>
<published>2011-11-09T22:59:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=49&amp;p=318#p318</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=318#p318"/>
<title type="html"><![CDATA[Re: Problem teoretyczny do rozwiazania...]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=318#p318"><![CDATA[
Ja przepraszam, bo po całym dzisiejszym dniu mogę być zakręcony. Co do tabelki i pierwszej części pytania to jak dla mnie &quot;mucha nie siada&quot; <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> .... ale .... hmmm teraz jeszcze bardziej nie rozumiem i proszę o wyrozumiałość dla mnie <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />piszesz, że gdy wybierzesz B to uzyskasz na wyjściach kod 0D w HEX - ale jakim cudem? tzn zaraz - może ustalmy właśnie jak go np podłączamy, czy piny 1,2,4,8 podłączasz np kolejno do bitów 0,1,2,3 jakiegoś portu ??? czy odwrotnie ? bo nijak nie mogę zrozumieć dlaczego wybranie B daje ci 0x0D ??? przecież to powinno dać albo 0x0B albo 0x04 po zanegowaniu. (czy może właśnie wyjścia RSDW 1,2,4,8 łączysz z bitami 1,2,3,4 jakiegoś portu?)<br /><br />ale abstrahując od powyższego - czy np w efekcie końcowym chcesz uzyskać na LCD np jakiś &quot;napis1&quot;, napis2&quot;,..... , &quot;napis16&quot; ???? czy wystarczy właśnie że pokaże się sam kod HEX, np 0x0B ???? <br /><br />na prawdę sorki jeśli coś mieszam za mocno - ale jak nie zrozumiem po kolejnym twoim wyjaśnieniu - to wtedy spróbuję to przeczytać dopiero jutro <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> tymczasem czekam na wyjaśnienie - może jeszcze dzisiaj<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 9 lis 2011, o 22:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2011-11-09T22:44:20+01:00</updated>
<published>2011-11-09T22:44:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=49&amp;p=317#p317</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=317#p317"/>
<title type="html"><![CDATA[Re: Problem teoretyczny do rozwiazania...]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=317#p317"><![CDATA[
Mirku np zgodny z wybranym na RDSW  -- masz w tabelce  0-9 A-F <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />Chodzi o powiazanie  wskazania rotora z tym co się wyswietli gdziekolwiek ....<br /><br />np. wybrałem  B więc zgodnie z tabelką uzyskam na wyjściach kod 0D w HEX  <br />     co z kolei powoduje ustawienie na np. PB1-4 ustawienie 1101<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 9 lis 2011, o 22:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2011-11-09T22:24:14+01:00</updated>
<published>2011-11-09T22:24:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=49&amp;p=316#p316</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=316#p316"/>
<title type="html"><![CDATA[Re: Problem teoretyczny do rozwiazania...]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=316#p316"><![CDATA[
Ale możesz podać przykład o jaki napis na LCD albo na terminalu chodzi ? tzn w jakiej postaci chcesz to mieć ? w postaci liczby HEX ? czy dziesiętnej ? czy jeszcze jakoś inaczej ? Albo może ja czegoś jeszcze nie zrozumiałem do końca?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 9 lis 2011, o 22:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2011-11-09T22:57:59+01:00</updated>
<published>2011-11-09T22:13:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=49&amp;p=315#p315</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=315#p315"/>
<title type="html"><![CDATA[Problem teoretyczny do rozwiazania...]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=49&amp;p=315#p315"><![CDATA[
Witam <br /><br />Piszę ponieważ mam dylemat ..<br />Problem polega na tym, że zwykle do kodowania czy zmiany konfiguracji programu używałem/używam <br />typowych przełaczników listwowych zwanych DIP SWITH, każdy wie jak takie ustrojstwo wygląda prawda??<br /><br />Stosuje w tedy kodowanie 4/6/8 bit  czyli odpowiednie ułożenie switchy wybiera konfiguracje programu<br />np:<br /><br />używam 4 pinow procka dla 4 bitowego kodu DIPSwitch mam do dyspozycji parę kombinacji :<br /><br />0000  <br />0001<br />0011<br />0111<br />1001 <br /><br />itd ... <br /><br />Sprawa prosta programowo do zrealizowania  zero problemu  z wykonaniem  itd.<br /><br />Więc dlaczego piszę ??<br /><br />Ano dlatego że ze wzgledu na rozmiar urządzenia, i mały procek M168  oraz konieczność użycia 16 wariantów<br />konfiguracji programu, jedyną możliwością  jest użycie obrotowego dipswitcha pracującego w trybie hexagonalnym <br />i tu mam problem ...  <br /><br />Jak wspomniałem wymagany do realizacji projektu jest ustrojstwo hexagonalne:<br /><img src="http://www.te.com/catalog/common/images/PartImages/prdr_d.jpg" alt="Obrazek" /><br />które wygląda tak jak na fotce wyżej , <br />Tu jest nota ustroju z której jasno wynika tryb pracy switcha :<br /><a href="http://www.te.com/commerce/DocumentDelivery/DDEController?Action=showdoc&amp;DocId=Customer+Drawing%7F1825008%7FA4%7Fpdf%7FEnglish%7FENG_CD_1825008_A4.pdf%7F1825008-4"  class="postlink">http://www.te.com/commerce/DocumentDelivery/DDEController?Action=showdoc&amp;DocId=Customer+Drawing%7F1825008%7FA4%7Fpdf%7FEnglish%7FENG_CD_1825008_A4.pdf%7F1825008-4</a><br /><br /><br />I tu mały opis działania dla chętnych pomocy w rozgryzieniu ustrojstwa:<br />- cały swith ma 8 wyprowadzeń  <br />  2 z nich to wejście oznaczone w tabelce jako &quot;C&quot;  tu podajemy stan  GND lub VCC <br />  zależnie od potrzeby<br />- pozostałe 4  to wyjścia kodu hex  gdzie pojawiają się nam stany zgodnie z tabelką<br />  gdzie X to 1 a 0 to poprostu brak stanu ustalonego (jakby noga wisiała w powietrzu)<br /><br /><br />I tu teraz pytanie jak to ugryźć w &quot;C&quot; dla AVR ?? <br />Chodzi o np. uzyskanie napisu na terminalu lub LCD odpowiadającemu wyborowi na RDSW<br /><br />* RDSW  -- Rotary Dip Switch <br /><br />--- odrazu powiem ze kombinowanie z switch case mija się z celem <br />     probowałem konwersji hex ASCII  i też nic mi to nie dało<br />     <br />Z 10 pozycyjnymi RDSW nie mam problemu , ale one pracuja w kodzie BCD , <br />w zwiazku z czym próbowałem konwersji HEX -&gt; BCD z mizernym skutkiem <br /><br />I w związku z tym pytam tu bowiem już mi brakło pomysłów , nie podaję kodów źródłowych<br />dlatego, że chciałbym aby rozwiązanie powstało nie jako od zera bez powielania moich nawyków <br />i błedów .<br /><br />No i czekam na propozycje ugryzienia problemu.<br /><br />UPS...<span style="color: #FF0000">  Wkradł się bład w opisie działania RDSW --<br />mianowicie żle opisałem , a powinno być tak :<br /><br /><a href="http://img89.imageshack.us/i/przechwytywaniegr.jpg/"  class="postlink"><img src="http://img89.imageshack.us/img89/9105/przechwytywaniegr.jpg" alt="Obrazek" /></a><br /><br />piszę tu bo to moze wpłynąc na ocenę działania <br /><br />a teraz jasno wynika ze X = 1 a 0 = 0  w tabelce .<br /></span><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 9 lis 2011, o 22:13</p><hr />
]]></content>
</entry>
</feed>