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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-11-06T07:29:22+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=4675&amp;mode</id>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-06T07:29:22+01:00</updated>
<published>2013-11-06T07:29:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55611#p55611</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55611#p55611"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55611#p55611"><![CDATA[
Nie zgodze sie z toba ale kazdy ma swoje zdanie. Mimo petli for aktualnie program nie blokuje innych procesow.<br /><br />Wysłane z teflonu [url='http://tapatalk.com/m?id=10']now Free[/url]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 6 lis 2013, o 07:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[savian86]]></name></author>
<updated>2013-11-05T19:08:09+01:00</updated>
<published>2013-11-05T19:08:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55550#p55550</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55550#p55550"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55550#p55550"><![CDATA[
<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />No i jestem w domku pierwsze co zrobiłem swoją pierwszą myśl i działa nie blokuje zegarka.<br />Blokuje pozostałe przyciski ale to mi nie przeszkadza bo podtrzymanie jest 3 sekundowe.<br /></div><br /><br />Czyli osiągnąłeś dokładnie ten sam rezultat co w przypadku zastosowania _delay_ms w pętli for, zegarek dalej chodzi bo jest wykonywany w przerwaniu, a pozostała część programu jest ZAWIESZONA.<br /><br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Savian86 proponuje mi wstawienie delay co mi w tomencie zawiesi procka i zegar nie bedzie liczyl. Dlatego nie chce delay. Chce petle for obsluzyc bez delay wiec zegar dalej bedzie cykal.<br /></div><br /><br />Proponowałem Tobie abyś zaskoczył jaki efekt osiągniesz upierając się na tego fora. Natomiast nie proponowałem jako rozwiązania docelowego.  Bardzo dobrze, że nie chcesz używać delayów, ale inne mechanizmy również trzeba wykorzystywać prawidłowo<br /><br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />Robienie wszystkiego w petli glownej? Ze jak definiowanie wejsc wyjsc timerow tez? To to by nie dzialalo<br /></div><br /><br />I właśnie dlatego odesłałem Ciebie do niebieskiej książki, gdybyś wykonał tamten przykład, to nie napisałbyś takiego stwierdzenia. A uproszczonym szablonem na to jest mój drugi post.<br /><br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />savian86 mieszasz mieszasz nic nowego nie wnosisz. Czytales mojego podprzedniego posta ?<br /><br />A warunek wyjscia z petli zostanie osiagniety bo inkrementacja zwielszac bedzie sie w przerwaniu. <br /><br />Jak nie chcesz podac wedki do petli for to nie mieszaj bardzo cie prosze.<br /></div><br /><br />Jeśli nie potrafiłeś wyciągnąć wniosków z powyższych, to sorry faktycznie nie będę Ci już mieszał. Pisząc program nie jest ważne tylko wykonanie tego czego się chce, ale też panowanie nad nim i wiedza co się w nim dzieje. Twój program nie jest skomplikowany, jeśli go mocniej rozbudujesz to pogubisz się w nim. <br /><br />Nie obraź się ale wykonanie tego zadania w tym temacie przypomina mi trochę naprawę auta u &quot;mechanika&quot;: na początek wymienimy to... nie pomogło? to teraz wymienimy to... znowu nie pomogło? no to wymieniamy tamto... o teraz już działa, dziękuję zapraszam ponownie.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=393">savian86</a> — 5 lis 2013, o 19:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[PJS]]></name></author>
<updated>2013-11-05T18:36:00+01:00</updated>
<published>2013-11-05T18:36:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55546#p55546</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55546#p55546"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55546#p55546"><![CDATA[
Te przypisania przed for:<br /><br />[syntax=c]flaga_podtrzymania =0;[/syntax]<br /><br />są chyba niepotrzebne, skoro w for inicjalizujesz.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1614">PJS</a> — 5 lis 2013, o 18:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-05T16:40:28+01:00</updated>
<published>2013-11-05T16:40:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55526#p55526</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55526#p55526"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55526#p55526"><![CDATA[
No i jestem w domku pierwsze co zrobiłem swoją pierwszą myśl i działa nie blokuje zegarka.<br />Blokuje pozostałe przyciski ale to mi nie przeszkadza bo podtrzymanie jest 3 sekundowe.<br /><br /><br />[syntax=c]if( sprawdz_przycisk( KL2 ) ){<br />flaga_podtrzymania =0;<br />for(flaga_podtrzymania=0 ; flaga_podtrzymania &lt; 3 ; ){<br />wyswietl_temperature_zewnetrzna();<br />}<br /><br />}else if( sprawdz_przycisk( KL3 ) ){<br />flaga_podtrzymania =0;<br />for(flaga_podtrzymania=0 ; flaga_podtrzymania &lt; 3 ;){<br />wyswietl_temperature_wewnetrzna();<br />}<br />}else{<br />wyswietl_zegar();<br />wyswietl_temperature();<br />}[/syntax]<br /><br />a w timerze:<br /><br />[syntax=c]ISR(TIMER2_OVF_vect){<br /><br />sekunda++;<br />flaga_sekundy = 1;<br />flaga_sekundy_temp = 1;<br />flaga_podtrzymania++;<br /><br />}[/syntax]<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 21 minutach ]</span></strong><br /><br />No i zrobiłem tak że przyciski się nie blokują .... wczoraj widać już było za późno<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 5 lis 2013, o 16:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-05T14:56:29+01:00</updated>
<published>2013-11-05T14:56:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55509#p55509</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55509#p55509"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55509#p55509"><![CDATA[
Juz juz nie daleko 1h30m drogi i w domku to potestuje moje zamysly.<br /><br />Wysłane z Tapatalk2 [url='http://tapatalk.com/m?id=10']now Free[/url]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 5 lis 2013, o 14:56</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-05T14:55:06+01:00</updated>
<published>2013-11-05T14:55:06+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55508#p55508</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55508#p55508"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55508#p55508"><![CDATA[
Tak sekundy zlicza myslalem o tym wczoraj ale guzik by dzialal gdyby byl wcosniety miedzy 00 a 10 sekunda czy sie myle ?<br /><br />Wysłane z Tapatalk2 [url='http://tapatalk.com/m?id=10']now Free[/url]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 5 lis 2013, o 14:55</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[PJS]]></name></author>
<updated>2013-11-05T14:02:03+01:00</updated>
<published>2013-11-05T14:02:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55497#p55497</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55497#p55497"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55497#p55497"><![CDATA[
Zamiast for użyj while(czas&lt;10). I może wykorzystaj twój zegar - chyba zlicza sekundy?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1614">PJS</a> — 5 lis 2013, o 14:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-05T13:37:19+01:00</updated>
<published>2013-11-05T13:37:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55490#p55490</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55490#p55490"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55490#p55490"><![CDATA[
w peli glownej mam tylko sprawszanie przyciskow i wyswietlanie zegarka i temp. Samo wyswietlanie. Panowie pisze ze program dziala jak zakladalem. Zostalo mi podtrzymanie przyciskow ale spokojnie mam juz koncepcje. Wroce to potestuje.<br /><br />Robienie wszystkiego w petli glownej? Ze jak definiowanie wejsc wyjsc timerow tez? To to by nie dzialalo<br /><br />Wysłane z Tapatalk2<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 5 lis 2013, o 13:37</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[icer_cmg]]></name></author>
<updated>2013-11-05T13:29:54+01:00</updated>
<published>2013-11-05T13:29:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55489#p55489</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55489#p55489"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55489#p55489"><![CDATA[
Wydaje mi się, ze założenie działania całego programu jest nie do końca poprawne. Czy nie lepszym rozwiązaniem byłoby robienie wszystkiego w głównej pętli, a w przerwaniach ustawianie jedynie flag, zlecanie aktualizacji danych czy zmianę wyświetlanych danych?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1636">icer_cmg</a> — 5 lis 2013, o 13:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-05T11:28:49+01:00</updated>
<published>2013-11-05T11:28:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55473#p55473</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55473#p55473"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55473#p55473"><![CDATA[
Zegar chodzi w obsludze przerwania wiec bedzie czas liczyl dalej. Natomiast te podtrzymanie potrzebne mi jest by zamiast temperatur pokazalo mi pamiec temperatury. <br /><br />Jezeli trzymam przecisk to wyswietla pamiec i chodzi zegar wiec defacto by nie trzymac przycisku wystarczy fetla for w jego obsludze by podtrzymac wyswietlenie pieci np o 3 sekundy.<br /><br />Savian86 proponuje mi wstawienie delay co mi w tomencie zawiesi procka i zegar nie bedzie liczyl. Dlatego nie chce delay. Chce petle for obsluzyc bez delay wiec zegar dalej bedzie cykal.<br /><br />Wysłane z Tapatalk2 [url='http://tapatalk.com/m?id=10']now Free[/url]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 5 lis 2013, o 11:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[PJS]]></name></author>
<updated>2013-11-05T10:14:03+01:00</updated>
<published>2013-11-05T10:14:03+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55465#p55465</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55465#p55465"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55465#p55465"><![CDATA[
<div class="quotetitle">majster napisał(a):</div><div class="quotecontent"><br />A warunek wyjscia z petli zostanie osiagniety bo inkrementacja zwielszac bedzie sie w przerwaniu.<br /></div><br />Mogę się mylić, bo nie znam całego kodu, ale jak wejdziesz w for (pętla główna programu?) to nie opuścisz jej do spełnienia warunku i żadna inna funkcja z pętli głównej nie będzie w tym czasie obsłużona. To, że przerwanie przyjdzie to pętle for &quot;zawiesi&quot; na czas obsługi przerwania, a potem wróci ponownie do for i dopiero, gdy przy którymś tam z kolei przerwaniu (po 10s) ustawi się warunek opuszczenia pętli for, zostaną obsłużone pozostałe funkcje pętli głównej. De facto zatem przez 10s wisisz w pętli for.<br />Jak więc widać savian86 nie miesza.<br /><br />Chyba, że cały pozostały program chodzi w obsłudze przerwania.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1614">PJS</a> — 5 lis 2013, o 10:14</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-05T09:59:13+01:00</updated>
<published>2013-11-05T09:59:13+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55462#p55462</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55462#p55462"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55462#p55462"><![CDATA[
Delay nie moge uzyc jak juz pisalem wyzej bo rownoczesnie wyswietlany jest czas i delay z automatu opozni mi moj zegarek o 10 sekund. savian86 mieszasz mieszasz nic nowego nie wnosisz. Czytales mojego podprzedniego posta ?<br /><br />A warunek wyjscia z petli zostanie osiagniety bo inkrementacja zwielszac bedzie sie w przerwaniu. <br /><br />Jak nie chcesz podac wedki do petli for to nie mieszaj bardzo cie prosze.<br /><br />Wysłane z Tapatalk2 [url='http://tapatalk.com/m?id=10']now Free[/url]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 5 lis 2013, o 09:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[savian86]]></name></author>
<updated>2013-11-05T08:53:56+01:00</updated>
<published>2013-11-05T08:53:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55460#p55460</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55460#p55460"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55460#p55460"><![CDATA[
Jeśli w pętli for nie zrobisz inkrementacji zmiennej, to jedyna droga wykonania sie tej pętli to ustawienie zmiennej podtrzymanie jako volatile i zwiększanie jej bezpośrednio w przerwaniu od timera. No bo niby jak zostanie osiągnięty warunek wyjścia z pętli ?<br /><br />Ale przy takim rozwiązaniu wracamy do pierwszego mojego postu i równie dobrze można zastosować _delay_ms bo program w tym czasie nie będzie wykonywać nic innego, chyba że w przerwaniu.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=393">savian86</a> — 5 lis 2013, o 08:53</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-05T07:30:05+01:00</updated>
<published>2013-11-05T07:30:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55458#p55458</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55458#p55458"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55458#p55458"><![CDATA[
Ale mozna to zrobic w petli for. I to chce osiagnac. I nawet mam pomysl jak to zrobic. Wroce z pracy i zobacze mozr zadziala.<br /><br />W timerze zrobic podtrzymanie++;<br /><br />W petli for zrobic.<br /><br />For(podtrymanie=0; podtrzymanie  &lt; 10 ; &gt;{<br />Warunek;<br />}<br /><br />I wtedy zobacze czy smiga jak zakladam.<br /><br />Wysłane z Tapatalk2 [url='http://tapatalk.com/m?id=10']now Free[/url]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 5 lis 2013, o 07:30</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[savian86]]></name></author>
<updated>2013-11-05T00:02:55+01:00</updated>
<published>2013-11-05T00:02:55+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55444#p55444</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55444#p55444"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55444#p55444"><![CDATA[
A czym popędzasz procka? Bo chyba nie sygnałem 1Hz? Niestety wykluczeń nie da się zrealizować na pętli, a program w dużej mierze opiera się właśnie o warunki. Ifa można zawsze zamienić na switcha <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=393">savian86</a> — 5 lis 2013, o 00:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-04T23:48:22+01:00</updated>
<published>2013-11-04T23:48:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55442#p55442</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55442#p55442"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55442#p55442"><![CDATA[
widzisz opierasz to na sporej ilosci  if a mozna to zawrzec we petli for<br />twoje rozwiazanie moze i dzialac ale mnie interesuje wykozystanie petli <br /><br />for<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 4 lis 2013, o 23:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[savian86]]></name></author>
<updated>2013-11-04T23:44:59+01:00</updated>
<published>2013-11-04T23:44:59+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55441#p55441</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55441#p55441"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55441#p55441"><![CDATA[
Nie chodzi tu o pokazywanie całego kodu, istotne jest jak masz zrobione &quot;kolejkowanie&quot; wykonywanych zadań w czasie. Właśnie w książce jest to elegancko pokazane, sama idea organizacji programu.<br /><br />Dobra, ale załóżmy że masz zrobione tyknięcie co 1sek. ale i tak wchodząc do pętli for wykona się ona prawie natychmiastowo i ślad po niej nie zostanie. Powinieneś pod przyciskiem ustawić flagę, a wyświetlanie zrobić w miejscu które wykonywane jest co 1sek. Coś takiego:<br />[syntax=c]uint8_t licznik;<br /><br />while(1)<br />{<br />if(nacisnieto_przycisk) { flaga=1; licznik=0; }<br /><br />if(cyknela_1sek)<br />{<br />               cyknela_1sek=0;<br />if(flaga)<br />{<br />wyswietl_temp();<br />}<br />else<br />{<br />wyswietl_tapete();<br />}<br /><br />if(licznik==10)<br />{<br />flaga = 0;<br />}<br />else licznik++;<br />}<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=393">savian86</a> — 4 lis 2013, o 23:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-04T23:26:53+01:00</updated>
<published>2013-11-04T23:26:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55440#p55440</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55440#p55440"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55440#p55440"><![CDATA[
odsyłanie do niebieskiej ksiązki mija się z celem.<br />Na razie nie pokażę całego kodu bo to łącznie już ok 1500 linii kodu.<br /><br />zakładając że zlicza to liczy do 10 w 1 setną sekundy,<br />jak ma liczyć do 10000 to na to samo wychodzi.<br /><br />Więc i tak ni jak się to ma do timera. ale ni jak się to ma do zliczania. bo kiedy przycisk puszczony ma robić coś innego i kombinuję tutaj z flagami ale też nic nie wychodzi :/<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 1 minucie ]</span></strong><br /><br />kombinuję z czymś takim, ma to działać jak pętla for .. no i działa ... nie zlicza <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> albo zlicza zajefajnie szybko:<br /><br />[syntax=c]if( sprawdz_przycisk( KL2 ) ){<br />uint8_t tw = 1;<br /><br />if(tw == 1){<br /><br />if (tw&gt;10){<br />tw=0;<br />}else{<br />wyswietl_temperature_zewnetrzna();<br />++tw;<br />}<br /><br /><br /><br />}[/syntax]<br /><br /><br /><br />Jeżeli wyhashuje else to wciśnięcie klawisza wyświetla wartości na stałe:<br /><br />[syntax=c]if( sprawdz_przycisk( KL2 ) ){<br />uint8_t flaga_podtrzymania;<br />for(flaga_podtrzymania=0 ; flaga_podtrzymania &lt; 10 ; flaga_podtrzymania++){<br />wyswietl_temperature_zewnetrzna();<br />}<br /><br />}else if( sprawdz_przycisk( KL3 ) ){<br />uint8_t flaga_podtrzymania;<br />for(flaga_podtrzymania=0 ; flaga_podtrzymania &lt; 10 ; flaga_podtrzymania++){<br />wyswietl_temperature_wewnetrzna();<br />}<br />}//else{<br /><br />//wyswietl_zegar();<br />//wyswietl_temperature();<br />//}[/syntax]<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 9 minutach ]</span></strong><br /><br /><div class="quotetitle">savian86 napisał(a):</div><div class="quotecontent"><br />Tak dla testu spróbuj dołożyć zwykłego delaya:<br />[syntax=c]if( sprawdz_przycisk( KL2 ) ){<br />                                                        uint8_t flaga_podtrzymania;<br />                                                                for(flaga_podtrzymania=0 ; flaga_podtrzymania &lt; 10 ; flaga_podtrzymania++){<br />                                                                             wyswietl_temperature_zewnetrzna();<br />                                                                             _delay_ms(1000);<br />                                                                }[/syntax]<br />Uzyskasz podtrzymanie na 10 sek, ale również będziesz miał &quot;zwieszony&quot; program na 10sek <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> odsyłam do niebieskiej książki -&gt; przykład z pseudo RTSem<br /></div><br /><br /><br />problem w tym że ja w kodzie nie mam _delay i nie chcę go mieć tak na łatwiznę też mogę iść ale po co ?<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 12 minutach ]</span></strong><br /><br />chcesz zobaczyć ustawienia timera proszę bardzo ale zegarek i pozostałe funkcję działają mi świetnie<br /><br />[syntax=c]ASSR  |= (1&lt;&lt;AS2);   // tryb pracy CTC<br />TCCR2  |= (1&lt;&lt;CS22)|(1&lt;&lt;CS20); // preskaler = 128<br />TIMSK  |= (1&lt;&lt;TOIE2);// odblokowanie przerwania CompareMatch[/syntax]<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 15 minutach ]</span></strong><br /><br />a i 367 podaje mi  flaga_podtrzymania tak pokazuje LCD ... dlaczego skoro zadeklarowałem ją jako 0 ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 4 lis 2013, o 23:26</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[savian86]]></name></author>
<updated>2013-11-04T23:23:59+01:00</updated>
<published>2013-11-04T23:23:59+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55439#p55439</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55439#p55439"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55439#p55439"><![CDATA[
<div class="quotetitle">majster napisał(a):</div><div class="quotecontent"><br />... ale nie zlicza od 0 do 10 :/ timer co 1 sek :/<br /></div><br /><br />A dlaczego twierdzisz, że nie zlicza? Wyświetl sobie zmienną <em>flaga_podtrzymania</em> zaraz po wykonaniu pętli, to zobaczysz jaką ma wartość.<br /><br />Piszesz, że timer cyka co 1sek, ale to jego cykanie ni w ząb nie jest zaimplementowane w pętlę która miałaby wykonać się w czasie 10sek (bo tak właśnie zrozumiałem zamysł zasady działania). Pokazałeś tylko mały wycinek programu, gdzie w żaden sposób nie wiadomo jak pracuje timer, i jak jest powiązany z całością.<br /><br />Tak dla testu spróbuj dołożyć zwykłego delaya:<br />[syntax=c]if( sprawdz_przycisk( KL2 ) ){<br />                                                        uint8_t flaga_podtrzymania;<br />                                                                for(flaga_podtrzymania=0 ; flaga_podtrzymania &lt; 10 ; flaga_podtrzymania++){<br />                                                                             wyswietl_temperature_zewnetrzna();<br />                                                                             _delay_ms(1000);<br />                                                                }[/syntax]<br />Uzyskasz podtrzymanie na 10 sek, ale również będziesz miał &quot;zwieszony&quot; program na 10sek <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> odsyłam do niebieskiej książki -&gt; przykład z pseudo RTSem<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=393">savian86</a> — 4 lis 2013, o 23:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-04T22:42:08+01:00</updated>
<published>2013-11-04T22:42:08+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55435#p55435</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55435#p55435"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55435#p55435"><![CDATA[
W którym miejscu bo nie wydaje mnie się <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> kompilacja przechodzi bez błędów ... klamry nie brakuje ... ale nie zlicza od 0 do 10 :/ timer co 1 sek :/<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 5 minutach ]</span></strong><br /><br />najlepsze jest to że pokazuje to co ma ale pętla for powinna to podtrzymać o 10 cykli timera czyli 10 sek .. a tu klapa :/<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 4 lis 2013, o 22:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kurnachatka]]></name></author>
<updated>2013-11-04T22:29:13+01:00</updated>
<published>2013-11-04T22:29:13+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55431#p55431</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55431#p55431"/>
<title type="html"><![CDATA[Re: pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55431#p55431"><![CDATA[
A nie brakuje ci na końcu klamry zamykającej '}'<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=930">kurnachatka</a> — 4 lis 2013, o 22:29</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[majster]]></name></author>
<updated>2013-11-04T21:48:31+01:00</updated>
<published>2013-11-04T21:48:31+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55425#p55425</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55425#p55425"/>
<title type="html"><![CDATA[pętla for ? gdzie mogę mieć bubla ?]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4675&amp;p=55425#p55425"><![CDATA[
Generalnie chodzi o to że mam eliminację drgań styków itp :<br /><br />natomiast mam mały problem gdy wcisnę przycisk ... pokazuje mi to co chcę ale nie działa podtrzymanie klawisza ... chciałem to zrobić pętlą for ale nie za bardzo mi to wychodzi może ktoś powiedzieć dlaczego ?<br /><br />Poniżej fragment kodu:<br />[syntax=c]if( sprawdz_przycisk( KL2 ) ){<br />uint8_t flaga_podtrzymania;<br />for(flaga_podtrzymania=0 ; flaga_podtrzymania &lt; 10 ; flaga_podtrzymania++){<br />wyswietl_temperature_zewnetrzna();<br />}<br /><br />}else if( sprawdz_przycisk( KL3 ) ){<br />uint8_t flaga_podtrzymania;<br />for(flaga_podtrzymania=0 ; flaga_podtrzymania &lt; 10 ; flaga_podtrzymania++){<br />wyswietl_temperature_wewnetrzna();<br />}<br />}else{<br /><br />wyswietl_zegar();<br />wyswietl_temperature();<br />}[/syntax]<br /><br />Męczę się z tym 2h i nie mogę nic wykombinować :/<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1628">majster</a> — 4 lis 2013, o 21:48</p><hr />
]]></content>
</entry>
</feed>