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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2016-12-13T16:53:13+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=17062&amp;mode</id>
<entry>
<author><name><![CDATA[Jarosław J]]></name></author>
<updated>2016-12-13T16:29:37+01:00</updated>
<published>2016-12-13T16:29:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177392#p177392</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177392#p177392"/>
<title type="html"><![CDATA[Re: Podwójne maskowanie bajtu]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177392#p177392"><![CDATA[
Dzięki anshar  Działa! Sam nie wiem dla czego na to nie wpadłem. Prosta  logika <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />  Ech zmęczenie...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=786">Jarosław J</a> — 13 gru 2016, o 16:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Daro69]]></name></author>
<updated>2016-12-13T16:20:17+01:00</updated>
<published>2016-12-13T16:20:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177390#p177390</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177390#p177390"/>
<title type="html"><![CDATA[Re: Podwójne maskowanie bajtu]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177390#p177390"><![CDATA[
&amp;(LED_DATA &amp; 0b00011000) ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=11549">Daro69</a> — 13 gru 2016, o 16:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2016-12-13T16:09:55+01:00</updated>
<published>2016-12-13T16:09:55+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177389#p177389</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177389#p177389"/>
<title type="html"><![CDATA[Re: Podwójne maskowanie bajtu]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177389#p177389"><![CDATA[
W tym wypadku obawiam się, że prostszego i szybszego rozwiązania nie ma. Stosuję takie zabiegi od lat na portach i jeszcze nic się nie pogryzło.<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 1 minucie ]</span></strong><br /><br />@anshar, a po maskowaniu skąd weźmiesz te dwa bity?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1922">SylwekK</a> — 13 gru 2016, o 16:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[anshar]]></name></author>
<updated>2016-12-13T16:09:11+01:00</updated>
<published>2016-12-13T16:09:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177388#p177388</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177388#p177388"/>
<title type="html"><![CDATA[Re: Podwójne maskowanie bajtu]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177388#p177388"><![CDATA[
[syntax=c]LED_DATA &amp;= ~( (pgm_read_byte (&amp;cyfrya&#91;cyfraa2&#93;) ) &amp; 0b11100111);[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7157">anshar</a> — 13 gru 2016, o 16:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jarosław J]]></name></author>
<updated>2016-12-13T16:06:20+01:00</updated>
<published>2016-12-13T16:06:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177386#p177386</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177386#p177386"/>
<title type="html"><![CDATA[Re: Podwójne maskowanie bajtu]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177386#p177386"><![CDATA[
Ech! No właśnie chciałem tego &quot;orania&quot; uniknąć.  Myślałem, że są na to jakieś sposoby, żeby przepisać tylko wybrane części bajtu - Jakaś maska.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=786">Jarosław J</a> — 13 gru 2016, o 16:06</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SylwekK]]></name></author>
<updated>2016-12-13T16:02:41+01:00</updated>
<published>2016-12-13T16:02:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177385#p177385</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177385#p177385"/>
<title type="html"><![CDATA[Re: Podwójne maskowanie bajtu]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177385#p177385"><![CDATA[
Maskowanie z oraniem, że się tak wyrażę <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> Najpierw pobierasz te dwa bity i zapamiętujesz gdzieś następnie robisz co masz zrobić z LCD i operatorem OR łączysz to co wyszło z zapamiętanymi bitami. Wszystko <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=1922">SylwekK</a> — 13 gru 2016, o 16:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jarosław J]]></name></author>
<updated>2016-12-13T15:53:36+01:00</updated>
<published>2016-12-13T15:53:36+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177384#p177384</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177384#p177384"/>
<title type="html"><![CDATA[Re: Podwójne maskowanie bajtu]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177384#p177384"><![CDATA[
Ale jak to zastosować? W linijce robię już przepisanie do portu D<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=786">Jarosław J</a> — 13 gru 2016, o 15:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Daro69]]></name></author>
<updated>2016-12-13T16:53:13+01:00</updated>
<published>2016-12-13T15:50:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177382#p177382</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177382#p177382"/>
<title type="html"><![CDATA[Re: Podwójne maskowanie bajtu]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177382#p177382"><![CDATA[
&amp; 0x11100111 ?<br /><br />...............................................:<br />tu oczywiście miało być nie &quot;0x&quot; tylko &quot;0b&quot;.  <img src="https://forum.atnel.pl/images/smilies/icon_rolleyes.gif" alt=":roll:" title="Udaje, że to nie on" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=11549">Daro69</a> — 13 gru 2016, o 15:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jarosław J]]></name></author>
<updated>2016-12-13T15:36:53+01:00</updated>
<published>2016-12-13T15:36:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177381#p177381</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177381#p177381"/>
<title type="html"><![CDATA[Podwójne maskowanie bajtu]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17062&amp;p=177381#p177381"><![CDATA[
Hej  Głowię się już jakiś czas, szukałem w internecie,  słuchałem tutoriali Mirka  ale coś mi zasłania oczy i umysł. Pomóżcie jeśli łaska:<br /><br /><br />Mam funkcję odczytującą z  tabeli dane  i chcę je wysłać na  wyświetlacz <br />Robię to po prostu:<br /><br />[syntax=c]#define SEG_A_1 (1&lt;&lt;1)// PIERWSZE TRZY BITY PORTU D<br />#define SEG_A_2 (1&lt;&lt;2)//<br />#define SEG_A_3 (1&lt;&lt;0)//<br /><br />// tu mam pozostałe bity ze środka  portu <br /><br />#define SEG_B_1 (1&lt;&lt;6)// <br />#define SEG_B_2 (1&lt;&lt;5)//<br />#define SEG_B_3 (1&lt;&lt;7)// OSTATNIE  TRZY BITY PORTU D<br /><br />LED_DATA = ~(pgm_read_byte (&amp;cyfrya&#91;cyfraa2&#93;));[/syntax]<br /><br />Tutaj wynik muszę mieć zanegowany z uwagi na sterowanie. Wszystko działa!<br /><br />Ale!! <br /><br />LED_DATA  u  mnie  przypisany  jest  do portu D!  Całego portu - definicją #define LED_DATA PORTB<br /><br />A na dwóch środkowych bitach tego portu mam podłączone inne rzeczy - na przykład diody LED. <br /><br />Wydawało mi się że  nie będzie problemu jeśli zastosuję maskowanie bajtu i zmodyfikuję  linijkę w ten sposób:<br /><br />[syntax=c]LED_DATA &amp;= ~(pgm_read_byte (&amp;cyfrya&#91;cyfraa2&#93;));[/syntax]<br /><br />No i działa ale  dalej zeruje mi dwa środkowe bity portu <br /><br />Podejrzewam, że robi to funkcja pgm_read_byte, i choć w tablicy  mam tylko trzy pozycje<br /><br />[syntax=c]uint16_t cyfrya&#91;8&#93; PROGMEM =<br />{<br />(SEG_A_1),// srodek<br />(SEG_A_2),// prawy<br />(SEG_A_3),// lewy<br />(SEG_A_1|SEG_A_2),// cyfra3<br />(SEG_A_2|SEG_A_3),//cyfra4<br />(SEG_A_2|SEG_A_3),//cyfra5<br />(SEG_A_1|SEG_A_2|SEG_A_3),<br />~(SEG_A_1|SEG_A_2|SEG_A_3)   //puste    10<br />};[/syntax]<br /><br /> to dopisuje mi zerami resztę bajtu<br /><br />W jaki sposób zrealizować maskowanie  dwóch bitów środkowych portu tak, aby linijka  <br />[syntax=c]LED_DATA &amp;= ~(pgm_read_byte (&amp;cyfrya&#91;cyfraa2&#93;));[/syntax] <br /> mi ich nie zmieniała?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=786">Jarosław J</a> — 13 gru 2016, o 15:36</p><hr />
]]></content>
</entry>
</feed>