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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2017-01-07T23:17:37+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=58&amp;t=17272&amp;mode</id>
<entry>
<author><name><![CDATA[Marcin Bąk]]></name></author>
<updated>2017-01-07T23:17:37+01:00</updated>
<published>2017-01-07T23:17:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179363#p179363</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179363#p179363"/>
<title type="html"><![CDATA[Re: Zatrzymanie pętli i uruchomienie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179363#p179363"><![CDATA[
Właśnie się przekonuję że delaye to...są słabe.<br />Teraz się przekonuje co mówił Mirek w poradnikach i książce...<br /><br />Na delay-u jak chcę zrobić przycisk lub ten najprostszy licznik,to są opóźnienia...licznik się zatrzymuje...itd itp...<br /><br />Ok w takim razie idę dalej z programem a jak już ogarnę timery to wrócę tu  <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> <br /><br />Dzięki za rady.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6570">Marcin Bąk</a> — 7 sty 2017, o 23:17</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[skalarro]]></name></author>
<updated>2017-01-07T23:11:01+01:00</updated>
<published>2017-01-07T23:11:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179361#p179361</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179361#p179361"/>
<title type="html"><![CDATA[Re: Zatrzymanie pętli i uruchomienie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179361#p179361"><![CDATA[
Nie ucz się na delayach działać bo będzie ci ciężko przejść na przetrwania i timery (wiem po sobie).<br />Jak masz BB to od razu zrób na timerze. <br /><br />Wysłane z mojego SM-G850F przy użyciu Tapatalka<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4850">skalarro</a> — 7 sty 2017, o 23:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marcin Bąk]]></name></author>
<updated>2017-01-07T23:07:11+01:00</updated>
<published>2017-01-07T23:07:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179360#p179360</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179360#p179360"/>
<title type="html"><![CDATA[Re: Zatrzymanie pętli i uruchomienie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179360#p179360"><![CDATA[
No to mi się rozjaśniło....teraz to rozumiem Nie brałem pod uwagę że tam jest druga pętla...<br /><br />Mam jeszcze jedno pytanie czy jest możliwe(bez użycia przerwań i timerów-bo tego jeszcze nie ogarniam )aby 1 przycisk powodował odliczanie licznika z prędkością 10ms a naciśnięcie drugiego powiedzmy 100ms. <br />Chyba trzeba by było napisać funkcję dla delay-a ?<br />Chyba to ćwiczenie (moje ćwiczenie-cel do zrealizowania przy każdym rozdziale z BB) odpuszczę i wrócę jak poznam dobrze timery i przerwania.<br /><br />Dziękuję i pozdrawiam!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6570">Marcin Bąk</a> — 7 sty 2017, o 23:07</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[skalarro]]></name></author>
<updated>2017-01-07T22:50:22+01:00</updated>
<published>2017-01-07T22:50:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179359#p179359</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179359#p179359"/>
<title type="html"><![CDATA[Re: Zatrzymanie pętli i uruchomienie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179359#p179359"><![CDATA[
<div class="quotetitle">Marcin Bąk napisał(a):</div><div class="quotecontent"><br />Gdy nacisnę KEY_PIN1 program się zatrzymuje,a jak nacisnę KEY_PIN2 wznawia się odliczanie.<br /></div><br />tak ma być. <br />Co prawda nie pokazujesz co odlicza i jak odlicza ale po wcisnieciu KEY_PIN1 spełnia się warunek if(klawisz_wcisniety(KEY_PIN1))<br />i program wpada w while(1). Po wciśnięciu klawisza 2 spełnia się warunek wewnątrz pętli. <br /><div class="quotetitle">Marcin Bąk napisał(a):</div><div class="quotecontent"><br />będzie while(1) więc pętla nieskończona....powinno liczyć a się zatrzymuje.<br /></div><br />Zatrzymuje się w pętli while(1) która jest cały czas spełniona<br /><br />Po wciśnięciu KEY_PIN2 finkcja zwraza 1 czyli spełnie się warunek i wychodzi z pętli. nie wpadnie w nią do kolejnego wduszenie KEY_PIN1<br /><br /><br /><div class="quotetitle">Marcin Bąk napisał(a):</div><div class="quotecontent"><br />o istrukcja tego wyrażenia powinno być break...a po wciśnięciu KEY_PIN2 pętla rusza....<br /></div><br />Break nie znaczy że program się zatrzyma, tylko zakończy wykonywanie pętli w której się aktualnie kręci i pójdzie dalej<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=4850">skalarro</a> — 7 sty 2017, o 22:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Marcin Bąk]]></name></author>
<updated>2017-01-07T22:30:55+01:00</updated>
<published>2017-01-07T22:30:55+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179355#p179355</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179355#p179355"/>
<title type="html"><![CDATA[Zatrzymanie pętli i uruchomienie]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17272&amp;p=179355#p179355"><![CDATA[
Witam,ćwiczę z przyciskami i uruchamianiem pętli licznika Multi_led<br /><br />i nie mogę zrozumieć takiego zapisu:<br /><br />[syntax=c]if(klawisz_wcisniety(KEY_PIN1))<br />{<br />while(1)<br />{<br />if(klawisz_wcisniety(KEY_PIN2))break;<br />}<br />}[/syntax]<br /><br />Definicja funkcji wygląda tak:<br /><br />[syntax=c]uint8_t klawisz_wcisniety (uint8_t klawisz)<br />{<br />if(klawisz)<br />{<br />_delay_ms(80);<br />if(klawisz)<br />return 1;<br />}<br /><br />return 0;<br /><br />}[/syntax]<br /><br />Gdy nacisnę KEY_PIN1 program się zatrzymuje,a jak nacisnę KEY_PIN2 wznawia się odliczanie.<br /><br />Rozpisałem sobie to na kartce i sie pogubiłem bo warunek pierwszego &quot;if&quot; będzie spełniony po wciśnięciu KEY_PIN1 wynikiem tego będzie while(1) więc pętla nieskończona....powinno liczyć a się zatrzymuje. Natomiast jak się spełni 2 &quot;if&quot; to istrukcja tego wyrażenia powinno być break...a po wciśnięciu KEY_PIN2 pętla rusza....<br />Myślę że chodzi tu o zagnieżdżenie tego drugiego &quot;if&quot; ale nie mogę tego zrozumieć...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6570">Marcin Bąk</a> — 7 sty 2017, o 22:30</p><hr />
]]></content>
</entry>
</feed>