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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2016-02-09T09:33:29+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=14395&amp;mode</id>
<entry>
<author><name><![CDATA[Cyrku8787]]></name></author>
<updated>2016-02-09T09:33:29+01:00</updated>
<published>2016-02-09T09:33:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=153144#p153144</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=153144#p153144"/>
<title type="html"><![CDATA[Re: Flaga]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=153144#p153144"><![CDATA[
<div class="quotetitle">DanielM napisał(a):</div><div class="quotecontent"><br />No tak, zaczajone <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><br />za dużo czasu przed kompem dzisiaj chyba i już mózg nie pracuje<br /></div><br /><br />Nadmiar komputera nie sprzyja szybkiemu myśleniu <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> Znam to ...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=12926">Cyrku8787</a> — 9 lut 2016, o 09:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[DanielM]]></name></author>
<updated>2016-02-03T21:37:07+01:00</updated>
<published>2016-02-03T21:37:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152583#p152583</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152583#p152583"/>
<title type="html"><![CDATA[Re: Flaga]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152583#p152583"><![CDATA[
No tak, zaczajone <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /><br />za dużo czasu przed kompem dzisiaj chyba i już mózg nie pracuje<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=9010">DanielM</a> — 3 lut 2016, o 21:37</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[rskup]]></name></author>
<updated>2016-02-03T21:25:39+01:00</updated>
<published>2016-02-03T21:25:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152580#p152580</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152580#p152580"/>
<title type="html"><![CDATA[Re: Flaga]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152580#p152580"><![CDATA[
Ale te dwie wersje się różnią warunkami. Pierwszy działa tak po naciśnięciu klawisza:<br />- jeżeli (flaga_zbiornika == 2) =&gt; wyświetl &quot;Zanurzanie: STOP&quot; na LCD i ustaw flaga_zbiornika = 0<br />- jeżeli (flaga_zbiornika == 0) =&gt; wyświetl &quot;Zanurzanie start&quot; na LCD i wstaw flaga_zbiornika = 2<br />Czyli jak wykona się pierwsza część to od razu wykonuje się druga i start nadpisuje STOP.<br />W drugim jak masz gdy (flaga_zbiornika == 0) wyświetlasz napis start i ustawiasz flaga_zbiornika = 2 a STOP wyświetlasz gdy masz 0, więc w tym wywołaniu nie zostanie to wykonane. <br /><br />-- <br />Pozdrawiam,<br />Robert<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 1 minucie ]</span></strong><br /><br />Musisz rozpisać sobie wartości flagi i co przy nich robisz oraz kiedy je zmieniasz. I będzie mógł korzystać ze swoich dodatkowych funkcji.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3427">rskup</a> — 3 lut 2016, o 21:25</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[DanielM]]></name></author>
<updated>2016-02-03T21:03:04+01:00</updated>
<published>2016-02-03T21:03:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152575#p152575</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152575#p152575"/>
<title type="html"><![CDATA[Re: Flaga]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152575#p152575"><![CDATA[
Tylko ja chciałbym to sprawdzanie flagi mieć w osobnej funkcji i dla kilku różnych wartości flagi, coś w ten sposób co stworzyłem, tylko rozbudowane.<br />Przypisanie jakiejś wartości do zmiennej globalnej blokuje wykonanie funkcji. Ktoś może wytłumaczyć czemu tak się dzieje?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=9010">DanielM</a> — 3 lut 2016, o 21:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Bartek123]]></name></author>
<updated>2016-02-03T20:45:40+01:00</updated>
<published>2016-02-03T20:45:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152570#p152570</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152570#p152570"/>
<title type="html"><![CDATA[Re: Flaga]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152570#p152570"><![CDATA[
Troszeczkę nie rozumiem i nie umiem ci wytłumaczyć, ale zobacz jak to powinno być wykonane.<br />[syntax=c]while(1)<br />{<br />          if( !(PINA &amp; KL3) ) {<br />                        _delay_ms(DRGANIA);     // prosta obsługa drgań styków<br />                        if( !(PINA &amp; KL3) ) {<br />                                _delay_ms(200);<br />                                if(flaga_zbiornika == 0) { // || (flaga_zbiornika == 4)<br /> <br />                                        lcd_cls();<br />                                        lcd_locate(0,0);<br />                                        lcd_str(&quot;Kl3   &quot;);<br />                                        lcd_locate(1,0);<br />                                        lcd_str(&quot;Zanurzanie start&quot;);<br />                                        flaga_zbiornika = 2;<br />                                }<br />                                else<br />                                {<br />                                  flag_zbiornika = 0;<br />                                }<br />                        }<br />                }<br />         if(flaga_zbiornika == 0)<br />         {<br />                       lcd_cls();<br />                lcd_locate(0,1);<br />                lcd_str(&quot;Zanurzanie:&quot;);<br />                lcd_locate(1,6);<br />                lcd_str(&quot;STOP&quot;);<br />          }<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10617">Bartek123</a> — 3 lut 2016, o 20:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[DanielM]]></name></author>
<updated>2016-02-03T20:01:58+01:00</updated>
<published>2016-02-03T20:01:58+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152565#p152565</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152565#p152565"/>
<title type="html"><![CDATA[Re: Flaga]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152565#p152565"><![CDATA[
<div class="quotetitle">rskup napisał(a):</div><div class="quotecontent"><br />W programie wchodzisz w funkcję kontrola_flagi_KL3_KL4() i jak masz wartość 2 dla zmiennej flaga_zbiornika ustawiasz ją na 0 a następnie wywołujesz if-a który od razu zmienia ją na 2.<br /><br />Pewnie zmienna jest jeszcze gdzieś indziej używana, bo musi być między innymi zainicjalizowana oraz obsługiwane inne działania o których wspominasz a ich nie pokazałeś.<br />Czy przypadkiem nie zmieniasz tej zmiennej gdzieś w przerwaniach?<br /><br />-- <br />Pozdrawiam,<br />Robert<br /></div><br />No właśnie flaga ma być też sterowana w przerwaniu, ale narazie powyłączałem wszystko z nią związane i zainicjowałem ją jako zmienna globalna. Przerwanie jest włączone od timera1, ale odpowiada ono za transmisje 433MHz, nie ma tam nic z tą flagą.<br />Dodałem pod przycisk kod:<br />[syntax=c]lcd_cls();<br />lcd_locate(0,0);<br />lcd_str(&quot;Kl3   &quot;);<br />lcd_locate(1,0);<br />lcd_str(&quot;Zanurzanie start&quot;);[/syntax]<br /><br />Powinno działać teraz, że na zmianę na LCD wyświetla mi &quot;KL3 zanurzenie start&quot; i &quot;Zanurzenie stop&quot;. Po odpaleniuprogramu włącza się &quot;Zanurzenie start&quot; i dalej nie reaguje przycisk. Gdy zakomentuje flaga_zbiornika = 0; działa tak jak powinno czyli &quot;Zanurzenie start&quot; potem &quot;Zanurzenie stop&quot; i koniec, czyli się zgadza<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=9010">DanielM</a> — 3 lut 2016, o 20:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[rskup]]></name></author>
<updated>2016-02-03T19:41:25+01:00</updated>
<published>2016-02-03T19:41:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152562#p152562</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152562#p152562"/>
<title type="html"><![CDATA[Re: Flaga]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152562#p152562"><![CDATA[
W programie wchodzisz w funkcję kontrola_flagi_KL3_KL4() i jak masz wartość 2 dla zmiennej flaga_zbiornika ustawiasz ją na 0 a następnie wywołujesz if-a który od razu zmienia ją na 2.<br /><br />Pewnie zmienna jest jeszcze gdzieś indziej używana, bo musi być między innymi zainicjalizowana oraz obsługiwane inne działania o których wspominasz a ich nie pokazałeś.<br />Czy przypadkiem nie zmieniasz tej zmiennej gdzieś w przerwaniach?<br /><br />-- <br />Pozdrawiam,<br />Robert<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3427">rskup</a> — 3 lut 2016, o 19:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[DanielM]]></name></author>
<updated>2016-02-03T19:50:30+01:00</updated>
<published>2016-02-03T18:56:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152558#p152558</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152558#p152558"/>
<title type="html"><![CDATA[Flaga]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=14395&amp;p=152558#p152558"><![CDATA[
Witam,<br />mam problem z działaniem zaprogramowanej flagi.<br />Tworzę flagę jako zmienną globalną<br />[syntax=c]uint8_t flaga_zbiornika;[/syntax]<br />Przy jej pomocy chciałbym wywoływać odpowiednio dane funkcje po wciśnięciu przycisku<br />[syntax=c]if( !(PINA &amp; KL3) ) {<br />_delay_ms(DRGANIA);// prosta obsługa drgań styków<br />if( !(PINA &amp; KL3) ) {<br />_delay_ms(200);<br />kontrola_flagi_KL3_KL4();<br />if(flaga_zbiornika == 0) { // || (flaga_zbiornika == 4)<br /><br />lcd_cls();<br />lcd_locate(0,0);<br />lcd_str(&quot;Kl3   &quot;);<br />lcd_locate(1,0);<br />lcd_str(&quot;Zanurzanie start&quot;);<br />flaga_zbiornika = 2;<br />}<br />}<br />}<br /><br />void kontrola_flagi_KL3_KL4() {<br />if(flaga_zbiornika == 2)  {<br />//stan_napelnienia = heart_1s_down;<br /><br />lcd_cls();<br />lcd_locate(0,1);<br />lcd_str(&quot;Zanurzanie:&quot;);<br />lcd_locate(1,6);<br />lcd_str(&quot;STOP&quot;);<br />flaga_zbiornika = 0;<br />}<br />}[/syntax]<br /><br />Funkcje są oczywiście zadeklarowane<br />Program nie działa w miejscu gdy w kontrola_flagi_KL3_KL4 przypisuje flaga_zbiornika = 0;<br />Chciałbym aby przy pierwszym wciśnięciu, wykonało się to co będzie po wciśnięciu przycisku. Kiedy wcisnę przycisk kolejny raz ma się wyświetlić &quot;Zanurzenie STOP&quot; i tak na zmianę. <br />Co może być z tym nie tak? Dla mnie teoretycznie wygląda wszystko dobrze, a jednak nie działa <img src="https://forum.atnel.pl/images/smilies/icon_eek.gif" alt=":shock:" title="Zaszokowany" />  <br />Pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=9010">DanielM</a> — 3 lut 2016, o 18:56</p><hr />
]]></content>
</entry>
</feed>