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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2021-04-11T20:53:48+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=23714&amp;mode</id>
<entry>
<author><name><![CDATA[Marhef]]></name></author>
<updated>2021-04-11T20:53:48+01:00</updated>
<published>2021-04-11T20:53:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231932#p231932</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231932#p231932"/>
<title type="html"><![CDATA[Re: zabawy z timerem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231932#p231932"><![CDATA[
Wstaw <span style="text-decoration: underline">cały</span> swój program przed ostatnią zmianą. Wtedy na pewno ktoś wyjaśni, gdzie popełniłeś błąd.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=12752">Marhef</a> — 11 kwi 2021, o 20:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Zgred]]></name></author>
<updated>2021-04-11T19:55:46+01:00</updated>
<published>2021-04-11T19:55:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231927#p231927</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231927#p231927"/>
<title type="html"><![CDATA[Re: zabawy z timerem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231927#p231927"><![CDATA[
<strong>Dzięki mario2015, wywaliłem przed pętlę i stał się cud - obie diody migają razem</strong>. Na razie do końca nie rozumiem dlaczego tak jest, sądziłem ,ze w zależności od rozmiarów pętli i miejsca w którym program akurat się znajduje gdy nadejdzie żądanie przerwania zależy czas startu obsługi tego przerwania, ale umieściłem timer_ini w pustej pętli i diody niemal zwariowały, znaczy ta druga, czasami widać było że gubi mrugnięcia. Posiedzę nad tym kiedyś, żeby to pojąć dogłębnie, a na razie <strong>przerwania przed pętlę i tyle!</strong><br />Cały kod działał dobrze, tylko zastanawiało mnie dlaczego miganie diod się rozjeżdża. Te diody stanowią tylko pomoc przy zabawach z timerami. Jak się okazało bardzo cenną, gdyby nie one nie zauważyłbym że cos nie jest ok, przynajmniej na tym etapie. <strong>Jeszcze raz dzięki!</strong><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=555">Zgred</a> — 11 kwi 2021, o 19:55</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mario2015]]></name></author>
<updated>2021-04-11T14:36:18+01:00</updated>
<published>2021-04-11T14:36:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231922#p231922</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231922#p231922"/>
<title type="html"><![CDATA[Re: zabawy z timerem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231922#p231922"><![CDATA[
Funkcji inicjalizującej timer [syntax=c]timer1_ini();[/syntax]  nie możesz używać w pętli głównej, tylko w funkcji main.<br />A funkcję [syntax=c]sei();[/syntax] najlepiej jest umieszczać bezpośrednio przed pętlą główną [syntax=c]while(1)[/syntax]<br />Inaczej cały kod ci się rozjedzie.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=8867">mario2015</a> — 11 kwi 2021, o 14:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[auers]]></name></author>
<updated>2021-04-10T22:23:07+01:00</updated>
<published>2021-04-10T22:23:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231913#p231913</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231913#p231913"/>
<title type="html"><![CDATA[Re: zabawy z timerem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231913#p231913"><![CDATA[
To nie stos.<br />Jakiego typu są te f1.<br />Robisz z tym coś jeszcze?   <br />Najlepiej pokaż cały kod który Ci źle działa.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7806">auers</a> — 10 kwi 2021, o 22:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Zgred]]></name></author>
<updated>2021-04-10T22:02:25+01:00</updated>
<published>2021-04-10T22:02:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231911#p231911</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231911#p231911"/>
<title type="html"><![CDATA[Re: zabawy z timerem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231911#p231911"><![CDATA[
Hmmm, wygląda na to jakby obsługa przerwania spowalniała działanie, to pewnie sprawa stosu, tak cos czuje..... jak pozostawiłem tylko miganie w obsłudze przerwania, to działa zacnie, a przynajmniej nie widać róznicy, jak dodam zliczanie, to się zaczyna spóźniac<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=555">Zgred</a> — 10 kwi 2021, o 22:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[auers]]></name></author>
<updated>2021-04-10T22:00:19+01:00</updated>
<published>2021-04-10T22:00:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231910#p231910</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231910#p231910"/>
<title type="html"><![CDATA[Re: zabawy z timerem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231910#p231910"><![CDATA[
Masz w kodzie coś co wpływa na te diody poza częścią którą już pokazałeś.<br />Uruchomiłem ten kod u siebie i diody chodzą równiutko jak w zegarku.<br />Mogę Ci nawet zrzut z analizatora zrobić. <br />Natomiast łatwo je nieświadomie &quot;rozjechać&quot;.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7806">auers</a> — 10 kwi 2021, o 22:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Zgred]]></name></author>
<updated>2021-04-10T21:51:51+01:00</updated>
<published>2021-04-10T21:51:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231909#p231909</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231909#p231909"/>
<title type="html"><![CDATA[Re: zabawy z timerem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231909#p231909"><![CDATA[
W pętli głównej mam tylko polecenie wywołanie timer1_ini(), i niestety rozjeżdża się jeszcze bardziej, nawet sei() wywaliłem przed pętlę i obsługę diod w sensie kierunku portu.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=555">Zgred</a> — 10 kwi 2021, o 21:51</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[auers]]></name></author>
<updated>2021-04-10T21:41:13+01:00</updated>
<published>2021-04-10T21:41:13+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231908#p231908</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231908#p231908"/>
<title type="html"><![CDATA[Re: zabawy z timerem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231908#p231908"><![CDATA[
Jak nie namieszasz w pętli głównej to obie diody migają prawidłowo.<br />Mam podejrzenia co do twojego problemu, ale nie pokazałeś co masz w kodzie, to tylko mogę wróżyć ze szklanej kuli, ale niech będzie.<br />Robisz jakąś inną operację na porcie C poza przerwaniem.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7806">auers</a> — 10 kwi 2021, o 21:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Zgred]]></name></author>
<updated>2021-04-10T21:34:24+01:00</updated>
<published>2021-04-10T21:34:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231906#p231906</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231906#p231906"/>
<title type="html"><![CDATA[Re: zabawy z timerem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231906#p231906"><![CDATA[
Owszem w Pętli jest kod, ale przecież obsługa przerwania ma priorytet, a miganie obu diod jest z nim powiązane. Generalnie chodzi mi o to jaki to ma wpływ na precyzje odmierzania czasu, bo jeśli pierwsza dioda, ta na OC1A jest obsługiwana wyłącznie sprzętowo, to można chyba uznać, że jej miganie jest precyzyjne, co natomiast z miganiem w obsłudze przerwania. Korci mnie żeby napisać jakąś funkcję porównującą liczbę mignięć obu diod w funkcji czasu. Biorę pod uwagę, ze w przypadku drugiej diody, mogą to być oscylacje wokół punktu odniesienia, a nie gubienie zdarzeń.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=555">Zgred</a> — 10 kwi 2021, o 21:34</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[auers]]></name></author>
<updated>2021-04-10T18:37:25+01:00</updated>
<published>2021-04-10T18:37:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231900#p231900</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231900#p231900"/>
<title type="html"><![CDATA[Re: zabawy z timerem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231900#p231900"><![CDATA[
Wygląda na to, że częstotliwość diody podłączonej do PC1 jest 2 razy mniejsza od częstotliwości z OC1.<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 42 minutach ]</span></strong><br /><br />Jednak to nie to.<br />Czy w pętli main masz jeszcze jakiś kod? <br />Bo to on może być przyczyną.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7806">auers</a> — 10 kwi 2021, o 18:37</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Zgred]]></name></author>
<updated>2021-04-10T16:17:12+01:00</updated>
<published>2021-04-10T16:17:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231897#p231897</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231897#p231897"/>
<title type="html"><![CDATA[zabawy z timerem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=23714&amp;p=231897#p231897"><![CDATA[
Prośba o odpowiedź w żołnierskich słowach.<br />Timer po inicjalizacji mruga sobie na skutek zgłoszenia przerwania CTC diodą podłączona do wyjścia OC1(PD5). Jednocześnie obsługa przerwania zarządza miganiem innej diody podłączonej do pinu PC1. Według mojego rozumowania, które ni msi być właściwie, obie diody powinny mrugać synchronicznie, mozliwe ze ta w obsłudze przerwania może być lekko opóźniona, ale to opóźnienie powinno być stałe, natomiast w rzeczywistości diody sie rozjeżdząja z upływem czasu, raz migaja naprzemiennie, a raz synchronicznie. Dlaczego?<br />Przerwanie wywoływane jest ok. 8 razy na sekundę.<br />Poniżej zarządzający tym miganiem kod.<br /><br />Zgred<br />[syntax=c]void timer1_ini(void)//incjalizacja timera nr1 w trybie CTC Compare Output<br /> {<br /><br />TCCR1B |=(1&lt;&lt;WGM12)|(1&lt;&lt;CS12)|(1&lt;&lt;CS10);           //tryb CTC,Prescaler na 1024<br />TCCR1A |= (1&lt;&lt;COM1A0);                           //tryb Compare Output dla wyjscia OC1A(PIN PD5)<br />OCR1A = FrDiv;//Załadowanie rejestru OCR1A <br />TIMSK |=(1&lt;&lt;OCIE1A);//Zezwolenie na przerwanie Compare Match<br />TIFR |= (1&lt;&lt;OCF1A);<br />DDRD |= (1&lt;&lt;PD5);               // ustawienie kierunku pinu PD5 jako wyjściowy<br />DDRC|= (1&lt;&lt;PC1);                // ustawienie kierunku pinu PC1 jako wyjściowy<br /><br /> }<br />ISR(TIMER1_COMPA_vect)<br />{<br /><br />PORTC ^= (1&lt;&lt;PC1);                                       //miganie diody w obsłudze przerwania<br /><br />f1=f1+1;                                                        //jakieś działanie bez związku z miganiem diod<br /><br /><br /><br /><br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=555">Zgred</a> — 10 kwi 2021, o 16:17</p><hr />
]]></content>
</entry>
</feed>