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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2021-12-05T12:39:28+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=30&amp;t=24033&amp;mode</id>
<entry>
<author><name><![CDATA[mario2015]]></name></author>
<updated>2021-12-05T12:39:28+01:00</updated>
<published>2021-12-05T12:39:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234444#p234444</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234444#p234444"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234444#p234444"><![CDATA[
<div class="quotetitle">RadekB86 napisał(a):</div><div class="quotecontent"><br />Ja stawiam że to jest problem sprzętowy a nie programowy bo jeśli wszystko na wyświetlaczu LED 5V ci działa a tutaj nie to ewidentnie  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />  zainteresuj się typem tego ULNa <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> (bo może powinieneś dać z negacją)<br /></div><br />Na pewno jeszcze wrócę do tego rozwiązania. Podejrzewam też,że winą jest połączenie pomiędzy wyświetlaczem a prockiem.<br />Wszystko odbywa się na skrętkach, tzn. pojedynczych żyłach wziętych ze zwykłej skrętki. Być może sygnały się zakłócają.<br />Tym czasem muszę wracać do kursu ESP a zegarem zajmę się później.<br />Jak już go opanuję, to dam znać co było problemem.<br />Jeszcze raz wszystkim dziękuję za podpowiedzi.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8867">mario2015</a> — 5 gru 2021, o 12:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[RadekB86]]></name></author>
<updated>2021-12-04T19:16:03+01:00</updated>
<published>2021-12-04T19:16:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234442#p234442</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234442#p234442"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234442#p234442"><![CDATA[
Ja stawiam że to jest problem sprzętowy a nie programowy bo jeśli wszystko na wyświetlaczu LED 5V ci działa a tutaj nie to ewidentnie  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" />  zainteresuj się typem tego ULNa <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> (bo może powinieneś dać z negacją)<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1837">RadekB86</a> — 4 gru 2021, o 19:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2021-12-04T18:49:47+01:00</updated>
<published>2021-12-04T18:49:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234441#p234441</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234441#p234441"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234441#p234441"><![CDATA[
Dla czego poprostu nie wrzucisz zdjęć?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 4 gru 2021, o 18:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mario2015]]></name></author>
<updated>2021-12-04T18:35:11+01:00</updated>
<published>2021-12-04T18:35:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234440#p234440</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234440#p234440"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234440#p234440"><![CDATA[
Dzięki wszystkim za podpowiedzi. Niestety dalej nic się nie zmieniło odnośnie tego projektu i na obecną chwilę muszę się poddać. Chyba zrobię drugi taki wyświetlacz ale na 5V.<br />Na razie projekt idzie w odstawkę. Jeszcze raz wszystkim dziękuję za pomoc.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8867">mario2015</a> — 4 gru 2021, o 18:35</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2021-11-28T14:12:56+01:00</updated>
<published>2021-11-28T14:12:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234416#p234416</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234416#p234416"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234416#p234416"><![CDATA[
<img src="https://forum.atnel.pl/images/smilies/icon_eek.gif" alt=":shock:" title="Zaszokowany" /> <br />Coś jest nie tak. Według schematów jakie wrzuciłeś, układ UDN jest podłączony do wspólnych anod (czyli wspólnych &quot;+&quot; wyświetlacza). Układ nie odwraca fazy więc wyłączenie wyjścia następuje w momencie podania stanu 0 na wejście.<br />I teraz linijka wygaszająca jaką zaproponowałem: [syntax=c]ANODY_PORT = (ANODY_PORT &amp; (~MASKA_ANODY));// wygaszenie wszystkich wyświetlaczy[/syntax]powinna wygasić wszystkie wyświetlacze, maska u Ciebie jest:<br />[syntax=c]#define MASKA_ANODY (CA1|CA2|CA3|CA4|CA5|CA6)[/syntax]czyli binarnie 0x00111111.<br />Więc kod powinien na anody wystawić:<br />[syntax=c]ANODY_PORT = (ANODY_PORT &amp; 0x11000000);// wygaszenie wszystkich wyświetlaczy[/syntax] czyli wszystkie piny anod zostaną ustawione w stan 0 bo cokolwiek pomnożone przez zero da zero, natomiast najstarsze dwa bity na których stoją 1 pozostaną bez zmian.<br />Natomiast druga sekcja zapalająca właściwy wyświetlacz:<br />[syntax=c]ANODY_PORT = (ANODY_PORT &amp; 0x11000000) | licznik;// cykliczne przełączanie kolejnej anody w każdym przerwaniu[/syntax]robi to samo co ta poprzednia linijka plus binarnie sumuje wyliczoną wartość z zawartością zmiennej licznik (de facto część kodu z maskowaniem w tej linijce można by pominąć bo teoretycznie chwilę wcześniej już ta operacja została na porcie zrobiona) który zawiera zawsze jedną jedynkę na którymś pinie anod więc siłą rzeczy powinien się zapalać zawsze jeden wyświetlacz w danej chwili. Tak więc moim zdaniem sekcja sterująca adnodami jest tu poprawna, oczywiście jeśli masz to dobrze podłączone, zgodnie ze schematami jakie umieściłeś, no i pod warunkiem, że gdzieś we fragmentach kodu których tu nie wkleiłeś, nie ingerujesz w porty które sterują wyświetlaczem. No i zakładam że sekcję sterowania katodami masz ok, bo wcześniej cyfry się wyświetlały poprawnie ale &quot;rozłaziły&quot; się po innych wyświetlaczach co ewidentnie wskazywało na problem ze sterowaniem anodowym, najpierw elektryczny, a później chyba programowy.<br />Chyba że masz coś zamienione np. anody z katodami, lub wyświetlacz nie jest ze wspólnymi anodami, a wspólnymi katodami...<br />No ale to już tylko domysły. Musiałbyś wrzucić fotki tak by można było prześledzić podłączenia pasków ze sobą, i z całą resztą.<br />Generalnie układ jest dosyć prosty w diagnozowaniu, możesz sobie w kodzie przerwania powstawiać pułapki programowe z wyzwalaczem, jak ja to nazywam, czyli nic innego jak to, co Mirek podawał w poradnikach o debugowaniu, ale dodatkowo wpięty w to przycisk umożliwiający przeskoczenie do kolejnej pułapki. Dzięki temu będziesz mógł zobaczyć krok po kroku jak zachowuje się sterowanie wyświetlaczami. Wtedy może szybciej dojdziesz co jest źle... Bo mi niestety już skończyły się pomysły. A nie widząc jak to jest podłączone to ciężko coś dalej wymyślać...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 28 lis 2021, o 14:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mario2015]]></name></author>
<updated>2021-11-27T17:45:20+01:00</updated>
<published>2021-11-27T17:45:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234413#p234413</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234413#p234413"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234413#p234413"><![CDATA[
<div class="quotetitle">xentis napisał(a):</div><div class="quotecontent"><br />Ok, teraz jasne.<br />Wygaszenie powinno wyglądać tak:<br />[syntax=c]ANODY_PORT = (ANODY_PORT &amp; (~MASKA_ANODY));// wygaszenie wszystkich wyświetlaczy[/syntax]<br />natomiast cykliczne przełączanie tak:<br />[syntax=c]ANODY_PORT = (ANODY_PORT &amp; (~MASKA_ANODY)) | licznik;// cykliczne przełączanie kolejnej anody w każdym przerwaniu[/syntax]<br />i powinno działać... mam nadzieję...<br /></div><br />Po tej operacji to dopiero cuda się dzieją.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8867">mario2015</a> — 27 lis 2021, o 17:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2021-11-25T22:31:00+01:00</updated>
<published>2021-11-25T22:31:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234409#p234409</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234409#p234409"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234409#p234409"><![CDATA[
Ok, teraz jasne.<br />Wygaszenie powinno wyglądać tak:<br />[syntax=c]ANODY_PORT = (ANODY_PORT &amp; (~MASKA_ANODY));// wygaszenie wszystkich wyświetlaczy[/syntax]<br />natomiast cykliczne przełączanie tak:<br />[syntax=c]ANODY_PORT = (ANODY_PORT &amp; (~MASKA_ANODY)) | licznik;// cykliczne przełączanie kolejnej anody w każdym przerwaniu[/syntax]<br />i powinno działać... mam nadzieję...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 25 lis 2021, o 22:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mario2015]]></name></author>
<updated>2021-11-24T23:59:02+01:00</updated>
<published>2021-11-24T23:59:02+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234403#p234403</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234403#p234403"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234403#p234403"><![CDATA[
<div class="quotetitle">RadekB86 napisał(a):</div><div class="quotecontent"><br />Może głupie pytanie ale jak podłączyłeś masę układu UDN981A czy jest razem z masą procka czy dałeś zasilanie czyl;i 12V i gnd oddzielnie?<br /></div><br />Masy 12V i 5V są połączone razem.<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 17 minutach ]</span></strong><br /><br /><div class="quotetitle">xentis napisał(a):</div><div class="quotecontent"><br />Ok to rozpisz mi Makra:<br />MASKA_ANODY<br />ANODY_PORT<br />LED_DATA<br /></div><br /><br />[syntax=c]#define MASKA_ANODY (CA1|CA2|CA3|CA4|CA5|CA6)[/syntax]<br />[syntax=c]#define ANODY_PORT PORTB<br />#define CA1 (1&lt;&lt;PB0)<br />#define CA2 (1&lt;&lt;PB1)<br />#define CA3 (1&lt;&lt;PB2)<br />#define CA4 (1&lt;&lt;PB3)<br />#define CA5 (1&lt;&lt;PB4)<br />#define CA6 (1&lt;&lt;PB5)[/syntax]<br />[syntax=c]#define LED_DATA PORTA[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8867">mario2015</a> — 24 lis 2021, o 23:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[RadekB86]]></name></author>
<updated>2021-11-24T21:27:10+01:00</updated>
<published>2021-11-24T21:27:10+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234402#p234402</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234402#p234402"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234402#p234402"><![CDATA[
Może głupie pytanie ale jak podłączyłeś masę układu UDN981A czy jest razem z masą procka czy dałeś zasilanie czyl;i 12V i gnd  oddzielnie? <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />  <br /> Możesz dać fotkę jak to wygląda?<br /><br />Swoją drogą poruszyłeś dobry temat bo też mam takie czerwone listwy LEDOWE na 12V i też bym sobie zegary porobił bo po co ma to się leżeć i kurzyć <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=1837">RadekB86</a> — 24 lis 2021, o 21:27</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2021-11-24T20:42:38+01:00</updated>
<published>2021-11-24T20:42:38+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234401#p234401</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234401#p234401"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234401#p234401"><![CDATA[
<img src="https://forum.atnel.pl/images/smilies/icon_e_surprised.gif" alt=":o" title="Zdziwiony" /> <br />Ok to rozpisz mi Makra:<br />MASKA_ANODY<br />ANODY_PORT<br />LED_DATA<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 24 lis 2021, o 20:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mario2015]]></name></author>
<updated>2021-11-24T20:38:05+01:00</updated>
<published>2021-11-24T20:38:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234400#p234400</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234400#p234400"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234400#p234400"><![CDATA[
Jak wprowadziłem poprawki, które wskazałeś, to wyświetlacze całkiem przestały działać.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8867">mario2015</a> — 24 lis 2021, o 20:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2021-11-24T19:09:20+01:00</updated>
<published>2021-11-24T19:09:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234399#p234399</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234399#p234399"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234399#p234399"><![CDATA[
Chym, no to nie trafiłem <img src="https://forum.atnel.pl/images/smilies/icon_lol.gif" alt=":lol:" title="Śmieje się" />. <br />Wygląda dobrze.<br /><br />Ale kod lepiej usuń bo nie wolno na forum wrzucać...<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 9 minutach ]</span></strong><br /><br />co u Ciebie zawiera makro MASKA_ANODY?<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 21 minutach ]</span></strong><br /><br />Wydaje mi się że masz błąd tu:<br />[syntax=c]ANODY_PORT = (ANODY_PORT | MASKA_ANODY);// wygaszenie wszystkich wyświetlaczy[/syntax]<br />a powinno być:<br />[syntax=c]ANODY_PORT = (ANODY_PORT &amp; MASKA_ANODY);// wygaszenie wszystkich wyświetlaczy[/syntax]<br />Oczywiście jeśli makro MASKA_ANODY ma poprawną wartość 0xC0.<br />Nie wiem też czemu zmienna licznik jest 16bitowa, wystarczyła by 8bitowa, ale to już nie wpływa na działanie, ale bardziej kwestia optymalizacyjna...<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 37 minutach ]</span></strong><br /><br />no i końcówka przerwania też do poprawy, zamiast:<br />[syntax=c]ANODY_PORT = (ANODY_PORT &amp; ~MASKA_ANODY) | (~licznik &amp; MASKA_ANODY);// cykliczne przełączanie kolejnej anody w każdym przerwaniu[/syntax]<br />powinno być:<br />[syntax=c]ANODY_PORT = (ANODY_PORT &amp; MASKA_ANODY) | licznik;// cykliczne przełączanie kolejnej anody w każdym przerwaniu[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 24 lis 2021, o 19:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mario2015]]></name></author>
<updated>2021-11-24T19:05:37+01:00</updated>
<published>2021-11-24T19:05:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234398#p234398</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234398#p234398"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234398#p234398"><![CDATA[
<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Podejrzewam, że kod przepisywałeś z książki, a jest tam mały chochlik. Dam Ci podpowiedź: porównaj kod z książki z kodem przykładu z kodów źródłowych dołączonych do książki, zwróć uwagę na zawartość procedury obsługi przerwania...<br /></div><br /><br />Procedura przerwania wygląda tak:<br />[syntax=c]ISR(TIMER0_COMP_vect) {<br />static uint16_t licznik = 1;// zmienna do przełączania kolejno anod wyrwietlacza<br /><br />ANODY_PORT = (ANODY_PORT | MASKA_ANODY);// wygaszenie wszystkich wyświetlaczy<br /><br />if (licznik == 1)<br />LED_DATA = pgm_read_byte(&amp;cyfry&#91;cy1&#93;);// gdy zapalony wyśw.1 podaj stan zmiennej cy1<br />else if (licznik == 2)<br />LED_DATA = pgm_read_byte(&amp;cyfry&#91;cy2&#93;);// gdy zapalony wyśw.2 podaj stan zmiennej cy2<br />else if (licznik == 4)<br />LED_DATA = pgm_read_byte(&amp;cyfry&#91;cy3&#93;);// gdy zapalony wyśw.3 podaj stan zmiennej cy3<br />else if (licznik == 8)<br />LED_DATA = pgm_read_byte(&amp;cyfry&#91;cy4&#93;);// gdy zapalony wyśw.4 podaj stan zmiennej cy4<br />else if (licznik == 16)<br />LED_DATA = pgm_read_byte(&amp;cyfry&#91;cy5&#93;);// gdy zapalony wyśw.4 podaj stan zmiennej cy5<br />else if (licznik == 32)<br />LED_DATA = pgm_read_byte(&amp;cyfry&#91;cy6&#93;);// gdy zapalony wyśw.4 podaj stan zmiennej cy6<br /><br />ANODY_PORT = (ANODY_PORT &amp; ~MASKA_ANODY) | (~licznik &amp; MASKA_ANODY);// cykliczne przełączanie kolejnej anody w każdym przerwaniu<br /><br />// operacje cyklicznego przesuwania bitu zapalającego anody w zmiennej licznik<br />licznik &lt;&lt;= 1;// przesunięcie zawartości bitów licznika o 1 w lewo<br />if (licznik &gt; 32)<br />licznik = 1;// jeśli licznik większy niż 32 to ustaw na 1<br />}[/syntax]<br /><br />No i jak pisałem wcześniej, na zwykłym wyświetlaczu LED 5V, biblioteka działa prawidłowo.<br />Kodu nie przepisywałem, tylko skopiowałem z CD dołączonego do książki z II edycji.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8867">mario2015</a> — 24 lis 2021, o 19:05</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2021-11-24T18:44:10+01:00</updated>
<published>2021-11-24T18:44:10+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234397#p234397</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234397#p234397"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234397#p234397"><![CDATA[
Ok, mnie to wygląda na nie do końca prawidłową procedurę obsługi multipleksowania.<br />Bazujesz na kodzie z bluebooka?<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 15 minutach ]</span></strong><br /><br />Podejrzewam, że kod przepisywałeś z książki, a jest tam mały chochlik. Dam Ci podpowiedź: porównaj kod z książki z kodem przykładu z kodów źródłowych dołączonych do książki, zwróć uwagę na zawartość procedury obsługi przerwania...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 24 lis 2021, o 18:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mario2015]]></name></author>
<updated>2021-11-24T19:00:03+01:00</updated>
<published>2021-11-24T18:42:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234396#p234396</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234396#p234396"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234396#p234396"><![CDATA[
<div class="quotetitle">xentis napisał(a):</div><div class="quotecontent"><br />Ok, a jak masz wszystkie wyświetlacze podłączone i ustawisz by się na wszystkich zaświeciła cyfra &quot;1&quot;, to się wyświetlają prawidłowo same segmenty B i C, czy świecą wszystkie segmenty na wszystkich wyświetlaczach?<br /></div><br />Jak ustawię wszystkie wyświetlacze na wyświetlanie tej samej cyfry np: same 1-nki albo same 4-ki itp., wtedy na każdej pozycji dana cyfra jest wyświetlana prawidłowo.<br />Jeśli tylko zmienię choćby jedną cyfrę na inną np: ustawię same 1-nki a na jednej pozycji ustawię 2, to na wszystkich pozycjach te cyfry nakładają się na siebie,<br />tyle tylko, że segmenty od 2-ki świecą trochę słabiej.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8867">mario2015</a> — 24 lis 2021, o 18:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2021-11-24T18:03:50+01:00</updated>
<published>2021-11-24T18:03:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234395#p234395</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234395#p234395"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234395#p234395"><![CDATA[
Ok, a jak masz wszystkie wyświetlacze podłączone i ustawisz by się na wszystkich zaświeciła cyfra &quot;1&quot;, to się wyświetlają prawidłowo same segmenty B i C, czy świecą wszystkie segmenty na wszystkich wyświetlaczach?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 24 lis 2021, o 18:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mario2015]]></name></author>
<updated>2021-11-24T14:49:15+01:00</updated>
<published>2021-11-24T14:49:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234388#p234388</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234388#p234388"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234388#p234388"><![CDATA[
<div class="quotetitle">xentis napisał(a):</div><div class="quotecontent"><br />Dokładnie tak.<br /></div><br />No i po kilku dniach odpoczynku dalej walczę z tym wyświetlaczem i lipa.<br />To znaczy, klucz tranzystorowy (rezystor 10k na bazie bo poniżej 10k żadnych zmian) zadziałał ale tylko wtedy gdy jest podłączony jeden wyświetlacz.<br />Jak dołączę drugi, to już pojawiają się duszki a jak trzeci to już same 8-ki świecą.<br />Biblioteka oczywiście przerobiona na sterowanie tranzystorów stanem wysokim.<br />Wymieniłem UDN-a i dalej to samo.<br />Nie wiem co dalej, nie mam żadnego pomysłu.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8867">mario2015</a> — 24 lis 2021, o 14:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2021-11-21T14:12:27+01:00</updated>
<published>2021-11-21T14:12:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234362#p234362</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234362#p234362"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234362#p234362"><![CDATA[
Dokładnie tak.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 21 lis 2021, o 14:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mario2015]]></name></author>
<updated>2021-11-21T13:55:26+01:00</updated>
<published>2021-11-21T13:55:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234361#p234361</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234361#p234361"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234361#p234361"><![CDATA[
<div class="quotetitle">xentis napisał(a):</div><div class="quotecontent"><br /><div class="quotetitle">mario2015 napisał(a):</div><div class="quotecontent">Problemy się zaczynają jak wyświetlacz podłączę do zestawu ATB i obojętnie czy wyświetlacz wbudowany w zestawie jest podłączony czy też nie. Oczywiście masa zestawu i UDN-a są połączone.<br /></div> Widzisz, zacząć trzeba od początku. Paski led mają segmentowo połączone diody w szereg i dodatkowo jeszcze w każdym szeregu wstawiony jest jeszcze rezystor. Ów rezystor to taki najprostszy z prostych stabilizator prądu, dopierany tak by przy nominalnym napięciu (w tym wypadku 12V), przez diody płynął ich nominalny prąd.<br />I teraz clou problemu. Diody świecące zaczynają świecić przy napięciu w przybliżeniu 1,5~2V, zależy to od ich technologi wykonania i barwy światła, ale dla uproszczenia przyjmijmy że będzie to 2V.<br />I teraz Twoje paski led w wyświetlaczu mają po 3 diody, to po szybkich przeliczeniach 3diody x 2V = 6V, czyli diody zaczynają świecić przy ok 6V, oczywiście nie pełnym światłem tylko będą się jarzyć i w miarę zwiększania napięcia będą świecić mocniej. Rezystor pominiemy w rozważaniach, ponieważ w momencie gdy diody się ledwo świecą, prąd przez nie płynący jest bardzo mały, więc i spadek napięcia na rezystorze będzie pomijalnie mały.<br />I teraz Twój układ, załóżmy że zatrzymujemy czas i w chwili obecnej załączony jest pierwszy wyświetlacz i powinna się wyświetlać cyfra &quot;1&quot; czyli zapalone segmenty B i C: układ UDN wystawia 12V na anody diod. Procek wystawia na piny dla segmentów A, D, E, F, G stan wysoki, czyli 5V, żeby zgasić te segmenty, natomiast na segmenty B i C stan niski czyli ~0V żeby się zaświeciły.<br />I teraz znów matematyka, dla segmentów które powinny być zgaszone:<br />12V z układu UDN - 5V jakie wystawia procek = 7V, i to jest napięcie jakie występuje na pasku który powinien być zgaszony. Dzieląc to na 3 diody 7/3=2,333...V - więc nie dziwota że diody zaczynają świecić.<br />Już pominę fakt, iż w razie przypadkowego zwarcia na pasku, na procek może polecieć 12V które w najlepszym wypadku uszkodzi diodę zabezpieczającą wbudowaną w każdy pin procka, powodując prawdopodobnie trwałe zwarcie na tym pinie do 5V.<br />Generalnie to co podpowiada kolega jerrylu może pomoże w pewnym stopniu, choć obniży również jasność świecenia całego wyświetlacza no i jak sam napisał jest to mało elegancki sposób.<br />Tutaj najsłuszniejszym rozwiązaniem były by tranzystorki npn lub jakiś układ załączający masą, wpięte pomiędzy wyświetlacze a piny uC.</div><br /><br />Czy Tobie chodzi o takie sterowanie tranzystorem jak na poniższym obrazku?<br /><br /><a href="https://obrazkiforum.atnel.pl/8867/f9efeb829476c9c69cae5cd610162957.jpg"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/8867/f9efeb829476c9c69cae5cd610162957.jpg" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8867">mario2015</a> — 21 lis 2021, o 13:55</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jerrylu]]></name></author>
<updated>2021-11-20T19:57:11+01:00</updated>
<published>2021-11-20T19:57:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234351#p234351</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234351#p234351"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234351#p234351"><![CDATA[
No i to jest pięknie wytłumaczenie tego zagadnienia. <br />Zawsze twierdziłem, że nie mam daru tłumaczenia (w odróżnieniu od Xentisa ).<br />Zbytnio uciekam w skróty myślowe, zakładając, że odbiorca &quot;odbiera na tych samych falach&quot; <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br />Mam nadzieję, że Mario teraz już ma pełny obraz sytuacji.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8719">jerrylu</a> — 20 lis 2021, o 19:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2021-11-20T19:25:28+01:00</updated>
<published>2021-11-20T19:25:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234350#p234350</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234350#p234350"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234350#p234350"><![CDATA[
<div class="quotetitle">mario2015 napisał(a):</div><div class="quotecontent"><br />Problemy się zaczynają jak wyświetlacz podłączę do zestawu ATB i obojętnie czy wyświetlacz wbudowany w zestawie jest podłączony czy też nie. Oczywiście masa zestawu i UDN-a są połączone.<br /></div> Widzisz, zacząć trzeba od początku. Paski led mają segmentowo połączone diody w szereg i dodatkowo jeszcze w każdym szeregu wstawiony jest jeszcze rezystor. Ów rezystor to taki najprostszy z prostych stabilizator prądu, dopierany tak by przy nominalnym napięciu (w tym wypadku 12V), przez diody płynął ich nominalny prąd.<br />I teraz clou problemu. Diody świecące zaczynają świecić przy napięciu w przybliżeniu 1,5~2V, zależy to od ich technologi wykonania i barwy światła, ale dla uproszczenia przyjmijmy że będzie to 2V.<br />I teraz Twoje paski led w wyświetlaczu mają po 3 diody, to po szybkich przeliczeniach 3diody x 2V = 6V, czyli diody zaczynają świecić przy ok 6V, oczywiście nie pełnym światłem tylko będą się jarzyć i w miarę zwiększania napięcia będą świecić mocniej. Rezystor pominiemy w rozważaniach, ponieważ w momencie gdy diody się ledwo świecą, prąd przez nie płynący jest bardzo mały, więc i spadek napięcia na rezystorze będzie pomijalnie mały.<br />I teraz Twój układ, załóżmy że zatrzymujemy czas i w chwili obecnej załączony jest pierwszy wyświetlacz i powinna się wyświetlać cyfra &quot;1&quot; czyli zapalone segmenty B i C: układ UDN wystawia 12V na anody diod. Procek wystawia na piny dla segmentów A, D, E, F, G stan wysoki, czyli 5V, żeby zgasić te segmenty, natomiast na segmenty B i C stan niski czyli ~0V żeby się zaświeciły.<br />I teraz znów matematyka, dla segmentów które powinny być zgaszone:<br />12V z układu UDN - 5V jakie wystawia procek = 7V, i to jest napięcie jakie występuje na pasku który powinien być zgaszony. Dzieląc to na 3 diody 7/3=2,333...V - więc nie dziwota że diody zaczynają świecić.<br />Już pominę fakt, iż w razie przypadkowego zwarcia na pasku, na procek może polecieć 12V które w najlepszym wypadku uszkodzi diodę zabezpieczającą wbudowaną w każdy pin procka, powodując prawdopodobnie trwałe zwarcie na tym pinie do 5V.<br />Generalnie to co podpowiada kolega jerrylu może pomoże w pewnym stopniu, choć obniży również jasność świecenia całego wyświetlacza no i jak sam napisał jest to mało elegancki sposób.<br />Tutaj najsłuszniejszym rozwiązaniem były by tranzystorki npn lub jakiś układ załączający masą, wpięte pomiędzy wyświetlacze a piny uC.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 20 lis 2021, o 19:25</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jerrylu]]></name></author>
<updated>2021-11-20T15:53:14+01:00</updated>
<published>2021-11-20T15:53:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234348#p234348</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234348#p234348"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234348#p234348"><![CDATA[
Mario, wczoraj byłem zakręcony w pracy i oczywiście nie doczytałem o pasku ledowym, jako segment wyświetlacza. SORRY!<br />Moje propozycje zasilania 5V o kant .. potłuc. Co nie zmienia faktu, że przyczyna świecenia jest taka, jak podałem.<br />Zrobiłem przed chwilą test na zasilaczu laboratoryjnym i takim pasku.<br />Diody gasną mi dopiero przy ok. 7,2V. U Ciebie może być trochę inaczej - zależy od diód najwyraźniej. <br />U mnie wygasiłyby się przy różnicy potencjałów 12-5V = 7V, przy podaniu stanu wysokiego na porty uC.<br />Możesz zrobić prosty eksperyment na szybko, jak zadziała można zostawić taką opcję - trochę &quot;druciarstwo&quot; <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br />Daj proszę szeregowo katodą (paskiem na diodzie) dowolną diodę impulsową/prostowniczą do pinu procesora od katody wyświetlacza.<br />Może taki półśrodek zadziała. Na diodzie będzie spadek ok. 0.6 /0.7V tylko nie dawaj Shotkiego one mają ok.0.2V spadku.<br />To spowoduje spadek napięcia zasilania o taką wartość. Może już odetnie prąd. Wtedy dajesz 8 takich diód szeregowo z segmentami i nic nie zmieniasz w programie.<br />W innym przypadku tylko dodatkowy element kluczujący na katodzie. Może być tranzystor npn lub scalak.<br />Wymagać to będzie odwrócenia (zanegowania) sygnałów załączających segmenty.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8719">jerrylu</a> — 20 lis 2021, o 15:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mario2015]]></name></author>
<updated>2021-11-20T13:56:08+01:00</updated>
<published>2021-11-20T13:56:08+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234347#p234347</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234347#p234347"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234347#p234347"><![CDATA[
Do jony15<br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Na sam start odłącz wyświetlacz i UDN-a i spróbuj statycznie nim sterować czy zaświecają się poszczególne segmenty - uwaga na UDN-a 5V do sterowania, a katody raz do GND a przy wyłączeniu do 5V, ( na próbę i kilka innych katod też podłącz do 5V ). Nie zapomnij o rezystorach ograniczających prąd na segmentach.<br /></div><br /><br />Statycznie w celu sprawdzenia jak podłączyłem jeden wyświetlacz i jeden segment, to zapala się tylko ten segment, który podłączyłem.<br />Problemy się zaczynają jak wyświetlacz podłączę do zestawu ATB i obojętnie czy wyświetlacz wbudowany w zestawie jest podłączony czy też nie. Oczywiście masa zestawu i UDN-a są połączone.<br />Niestety efekt dalej ten sam. Co do rezystorów na wyświetlacz (jak ktoś tam wyżej pisał) to nie są one konieczne, ponieważ każdy segment ma wbudowany rezystor. Pisałem wcześniej,<br />że wyświetlacz jest zrobiony z pociętej taśmy led 12V.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8867">mario2015</a> — 20 lis 2021, o 13:56</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[fofex]]></name></author>
<updated>2021-11-19T22:20:40+01:00</updated>
<published>2021-11-19T22:20:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234340#p234340</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234340#p234340"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234340#p234340"><![CDATA[
No tak, słusznie. Brakuje klucza na dole<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=21072">fofex</a> — 19 lis 2021, o 22:20</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jerrylu]]></name></author>
<updated>2021-11-19T21:15:41+01:00</updated>
<published>2021-11-19T21:15:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234338#p234338</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234338#p234338"/>
<title type="html"><![CDATA[Re: Problem z wyświtlaniem LED 7-seg 12V multiplex]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=24033&amp;p=234338#p234338"><![CDATA[
No tak, jak pisze jonny15, podwójne elementy kluczujące na anodzie i katodzie rozwiązałyby kwestię zasilania +12.<br />Osobiście jednak uważam, że to niepotrzebna rozbudowa układu, skoro i tak musimy dostarczyć do zasilania 5V<br />i zastosować to napięcie także do wyświetlacza.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8719">jerrylu</a> — 19 lis 2021, o 21:15</p><hr />
]]></content>
</entry>
</feed>