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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2017-01-22T15:41:55+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=17399&amp;mode</id>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2017-01-22T15:41:55+01:00</updated>
<published>2017-01-22T15:41:55+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180507#p180507</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180507#p180507"/>
<title type="html"><![CDATA[Re: Nie pożądane działanie urządzenia]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180507#p180507"><![CDATA[
<div class="quotetitle">budapreniak napisał(a):</div><div class="quotecontent"><br />przy każdym przycisku warto dodawać te elementy? Czy jeżeli w innych przyciskach nie widzę zakłóceń to odpuścić?<br /></div> Wszystko zależy od umiejscowienia przycisku względem procesora. Generalnie bezpieczniej jest dać, bo masz wtedy pewność że układ będzie  stabilniejszy i odporniejszy na zakłócenia pochodzące z otoczenia.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 22 sty 2017, o 15:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[budapreniak]]></name></author>
<updated>2017-01-22T15:33:04+01:00</updated>
<published>2017-01-22T15:33:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180506#p180506</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180506#p180506"/>
<title type="html"><![CDATA[Re: Nie pożądane działanie urządzenia]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180506#p180506"><![CDATA[
No właśnie nie posiadam, bo możliwe że jakbym go miał to bym posprawdzał przebiegi.<br />Dolutowałem rezystor i kondensator i chyba działa, zrobiłem około 9 tysięcy kroków enkodera i zero zakłóceń.<br /><br />Dzięki wielkie xentis, za zainteresowanie i pomoc w rozwiązaniu problemu <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />przy każdym przycisku warto dodawać te elementy? Czy jeżeli w innych przyciskach nie widzę zakłóceń to odpuścić?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7742">budapreniak</a> — 22 sty 2017, o 15:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2017-01-22T15:26:02+01:00</updated>
<published>2017-01-22T15:26:02+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180504#p180504</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180504#p180504"/>
<title type="html"><![CDATA[Re: Nie pożądane działanie urządzenia]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180504#p180504"><![CDATA[
<div class="quotetitle">budapreniak napisał(a):</div><div class="quotecontent"><br />Tylko dlaczego problem występuje przy kręceniu tylko w jedną stronę?<br /></div> Jak byś dysponował oscylem może uzyskał byś odpowiedź, a tak to można snuć jedynie domysły.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 22 sty 2017, o 15:26</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[budapreniak]]></name></author>
<updated>2017-01-22T15:07:21+01:00</updated>
<published>2017-01-22T15:07:21+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180500#p180500</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180500#p180500"/>
<title type="html"><![CDATA[Re: Nie pożądane działanie urządzenia]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180500#p180500"><![CDATA[
Na płytce enkoder był podłączany bezpośrednio w stykówkę i przez przewody. Dolutuję opornik i kondensator, warto spróbować. Tylko dlaczego problem występuje przy kręceniu tylko w jedną stronę?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7742">budapreniak</a> — 22 sty 2017, o 15:07</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2017-01-22T14:58:28+01:00</updated>
<published>2017-01-22T14:58:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180499#p180499</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180499#p180499"/>
<title type="html"><![CDATA[Re: Nie pożądane działanie urządzenia]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180499#p180499"><![CDATA[
Zauważ że styki enkodera podciągnąłeś rezystorami do VCC a już switcha to nie... nie wiem czy pamiętasz jak Mirek na poradnikach pokazywał jak wygląda przebieg z enkoderem. Tam pojawiają się czasem szpileczki a skoro enkoder jest połączony przewodem to takie szpileczki z przebiegów enkodera mogą indukować śmieci na przewodzie od switcha stąd mogą występować jego niezamierzone wzbudzenia. Na stykówce to dochodzą dodatkowe pojemności które prawdopodobnie akurat pomagają, i też pytanie czy na stykówce enkoder również był testowany na przewodach.<br />Moim zdaniem lekarstwem może być podciągnięcie tego switcha zewnętrznym rezystorem to VCC i jakiś kondensatorek ceramiczny też nie zaszkodzi.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 22 sty 2017, o 14:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[budapreniak]]></name></author>
<updated>2017-01-22T14:26:27+01:00</updated>
<published>2017-01-22T14:26:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180497#p180497</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180497#p180497"/>
<title type="html"><![CDATA[Re: Nie pożądane działanie urządzenia]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180497#p180497"><![CDATA[
Enkoder jest zwykły(3 pin i 2 pin) tylko że masa przycisku i enkodera jest połączona i na płytce jest tylko wtyczka do enkodera, a jest podłączony za pomocą przewodów. Raczej nie został przegrzany.<br /><br />Co do połączenia na płytce, to jak kondensatory nie łączyły to wtedy się działo ciekawie.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7742">budapreniak</a> — 22 sty 2017, o 14:26</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[xentis]]></name></author>
<updated>2017-01-22T14:09:48+01:00</updated>
<published>2017-01-22T14:09:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180495#p180495</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180495#p180495"/>
<title type="html"><![CDATA[Re: Nie pożądane działanie urządzenia]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180495#p180495"><![CDATA[
Jeszcze mógłbyś uzupełnić zdjęcia bo zostały usunięte bo były źle wklejone oraz przydałoby się zdjęcie i/lub źródło pochodzenie tych enkoderów bo jak widziałem wyprowadzenia miały jakby nietypowe (zwykle mają 3 piny enkodera i po drugiej stronie 2 piny przycisku).<br />Druga sprawa to pytanie czy podczas montażu nie przegrzałeś enkodera...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=6265">xentis</a> — 22 sty 2017, o 14:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jarecki]]></name></author>
<updated>2017-01-22T13:58:34+01:00</updated>
<published>2017-01-22T13:58:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180494#p180494</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180494#p180494"/>
<title type="html"><![CDATA[Re: Nie pożądane działanie urządzenia]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180494#p180494"><![CDATA[
Zwróciłem na to uwagę ale gdybyś oglądał te poradniki to byś widział jaki sposób połączenia enkodera do mikrokontrolera poleca pan Mirek <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> U Ciebie są kondensatory między masą a sygnałami z enkodera i rezystory podciągające. Wystarczy że na płytce stykowej te kondensatory nie łączyły, to jest bardzo prawdopodobne, teraz na PCB łączą znakomicie i pojawiają się problemy trudne do zlokalizowania....<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2511">Jarecki</a> — 22 sty 2017, o 13:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[budapreniak]]></name></author>
<updated>2017-01-22T13:45:48+01:00</updated>
<published>2017-01-22T13:45:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180493#p180493</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180493#p180493"/>
<title type="html"><![CDATA[Re: Nie pożądane działanie urządzenia]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180493#p180493"><![CDATA[
Zwróć uwagę że enkoder działa bezproblemowo na płytce stykowej co napisałem w pierszym poście, a problem występuje tylko na pcb. Po za tym oglądałem całą serie poradników o enkoderach i używam sposobu Pana Mirka ;p<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7742">budapreniak</a> — 22 sty 2017, o 13:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jarecki]]></name></author>
<updated>2017-01-22T13:40:37+01:00</updated>
<published>2017-01-22T13:40:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180492#p180492</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180492#p180492"/>
<title type="html"><![CDATA[Re: Nie pożądane działanie urządzenia]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180492#p180492"><![CDATA[
Obejrzyj to i skońćzą się Twoje problemy z enkoderem <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><!-- m --><a class="postlink" href="https://www.youtube.com/watch?v=IP5t_XzfRRM" >https://www.youtube.com/watch?v=IP5t_XzfRRM</a><!-- m --><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2511">Jarecki</a> — 22 sty 2017, o 13:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[budapreniak]]></name></author>
<updated>2017-01-22T14:20:07+01:00</updated>
<published>2017-01-22T13:30:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180491#p180491</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180491#p180491"/>
<title type="html"><![CDATA[Nie pożądane działanie urządzenia]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=17399&amp;p=180491#p180491"><![CDATA[
witam, <br />nie wiem w jakim dziale umieścić mój post.<br />Ostatnio zrobiłem stroboskopowy miernik prędkości obrotowych, na płytce stykowej wszystko działało dobrze. Na wytrawionej pcb już działa nie prawidłowo. Rozchodzi się o to, że podczas kręcenia enkoderem (z przyciskiem), ten przycisk się wciska ale nie fizycznie, tylko wykonuje się akcja w programie jakby został wciśnięty (czasem kilka razy pod rząd, a czasem raz na tysiąc kroków enkodera) dzieje się tak przy kręceniu tylko w jedną stronę, zwiększanie wartości, przy zmniejszaniu nie zaobserwowałem problemu. Wydaje mi się że winna jest płytka, ale zrobiłem drugą i jest to samo. Mam nadzieje że  pomożecie znaleźć co jest nie tak, bo tyle co wiem to sprawdziłem i niczego nie znalazłem co jest nie tak.<br />Jeżeli czegoś nie rozumiecie pytajcie, ponieważ nie wiem co mam więcej opisać<br />Poniżej zamieszczę kod, schemat i płytkę.<br /><br />[syntax=c]//****************   BIBLOTEKI   ************************************************<br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;string.h&gt;<br />#include &lt;stdlib.h&gt;<br />#include &quot;lcd44780.h&quot;<br /><br /><br />//****************   DEFINICJE   ************************************************<br />#define enkoder_e1 (1&lt;&lt;PD0)<br />#define enkoder_e2 (1&lt;&lt;PD2)<br />#define enkoder_s1 (1&lt;&lt;PD1)<br />#defineprzycisk_s2 (1&lt;&lt;PD3)<br />#define przycisk_s3 (1&lt;&lt;PD4)<br />#define LED (1&lt;&lt;PB1)<br />#define obrot_e1 (PIND &amp; (1&lt;&lt;PD0))<br />#define obrot_e2 (PIND &amp; (1&lt;&lt;PD2))<br />#define wcisniety_s1 (PIND &amp; (1&lt;&lt;PD1))<br />#define wcisniety_s2 (PIND &amp; (1&lt;&lt;PD3))<br />#define wcisniety_s3 (PIND &amp; (1&lt;&lt;PD4))<br />#define zerowanie_preskalera_timer1 (TCCR1B &amp;= ~( (1&lt;&lt;CS12) | (1&lt;&lt;CS11) | (1&lt;&lt;CS10) ))<br /><br /><br />//****************   ZMIENNE   ************************************************<br />volatile unsigned int obr_min=120;<br />volatile unsigned int plus_minus=1; // Wartosc o jaka zostaja inkrementowane/dekremenotwane<br />// obr/min przy obrocie enkodera<br />volatile unsigned int wypelnienie;<br />volatile unsigned int licznik_timer2=0;<br />unsigned int okres;<br />unsigned int preskaler=256;<br />unsigned int wypelnienie_cal; // wartosc wypelnienia do wyswietlenia (calkowita)<br />unsigned int wypelnienie_dzi; // wartosc wypelnienia do wyswietlenia (dziesietna)<br />volatile float  wyp=50; // wyp/10=wypelnienie<br />float czestotliwosc;<br />char f&#91;10&#93;;<br />uint8_t flaga_przycisk_enkoder=0;<br />uint8_t flaga_przycisk_mnozenia=0;<br />uint8_t flaga_przycisk_dzielenia=0;<br />uint8_t flaga_ekran=0;<br />uint8_t flaga_druk1=1;<br />uint8_t flaga_druk2=0;<br /><br /><br />//****************   PRZERWANIE TIMER 1   ************************************************<br /><br />ISR ( INT0_vect ){   // obsługa przerwania od obrotu enkodera<br /><br />if(flaga_ekran == 0){   //obsługa enkodera obroty/minute<br />static uint8_t dir;<br />if( !obrot_e2){<br />dir = obrot_e1;<br />} else {<br />if (dir != obrot_e1 ){<br />if (dir) obr_min = obr_min + plus_minus;<br />else obr_min = obr_min - plus_minus;<br />}<br />}<br />flaga_druk1=1;<br />}<br /><br />if(flaga_ekran == 1){    // obsługa enkodera wypelnienie<br />static uint8_t dir;<br />if( !obrot_e2){<br />dir = obrot_e1;<br />} else {<br />if (dir != obrot_e1){<br />if (dir) wyp = wyp + 1;<br />else wyp = wyp - 1;<br />}<br />}<br />flaga_druk2=1;<br />}<br />}<br /><br /><br />//****************   PRZERWANIE TIMER 2  ************************************************<br /><br />ISR(TIMER2_COMP_vect){  // obsługa przerwania od porownania timera 2<br />licznik_timer2++;<br />}<br /><br /><br />//****************   FUNKCJE   ************************************************<br />void ustaw_obroty(void){   // ustawianie granicznych wartości obrotów/minute<br />if(obr_min &lt; 120) obr_min=120;<br />if(obr_min &gt; 60000) obr_min = 120;<br />if(obr_min &gt; 30000) obr_min = 30000;<br />}<br /><br />void ustaw_preskaler(void){  // ustawinie preskalera w zależności od obr/min<br />if(obr_min &lt;= 250){<br />zerowanie_preskalera_timer1;<br />TCCR1B |= (1&lt;&lt;CS12); //256<br />preskaler = 256;<br />}<br />if(obr_min &gt; 250 &amp;&amp; obr_min &lt;= 2000){<br />zerowanie_preskalera_timer1;<br />TCCR1B |= (1&lt;&lt;CS11) | (1&lt;&lt;CS10); //64<br />preskaler = 64;<br />}<br />if(obr_min &gt; 2000 &amp;&amp; obr_min &lt;= 14660){<br />zerowanie_preskalera_timer1;<br />TCCR1B |= (1&lt;&lt;CS11); //8<br />preskaler = 8;<br />}<br />if(obr_min &gt; 14660){<br />zerowanie_preskalera_timer1;<br />TCCR1B |= (1&lt;&lt;CS10); //1<br />preskaler = 1;<br />}<br />}<br /><br />void ustaw_kursor(void){   // Ustawienie kursora na edytowanej pozycji<br />if(obr_min &gt;=120 &amp;&amp; obr_min &lt; 1000){<br />if (plus_minus == 1){<br />lcd_locate(0,4);<br />}<br />if (plus_minus == 10){<br />lcd_locate(0,3);<br />}<br />if (plus_minus == 100){<br />lcd_locate(0,2);<br />}<br />if (plus_minus == 1000){<br />lcd_locate(0,2);<br />lcd_str(&quot;0&quot;);<br />lcd_int(obr_min);<br />lcd_locate(0,2);<br />}<br />}<br /><br />if(obr_min &gt;= 1000 &amp;&amp; obr_min &lt;10000){<br />if (plus_minus == 1){<br />lcd_locate(0,5);<br />}<br />if (plus_minus == 10){<br />lcd_locate(0,4);<br />}<br />if (plus_minus == 100){<br />lcd_locate(0,3);<br />}<br />if (plus_minus == 1000){<br />lcd_locate(0,2);<br />}<br />}<br /><br />if(obr_min &gt;= 10000 &amp;&amp; obr_min &lt;= 30000){<br />if (plus_minus == 1){<br />lcd_locate(0,6);<br />}<br />if (plus_minus == 10){<br />lcd_locate(0,5);<br />}<br />if (plus_minus == 100){<br />lcd_locate(0,4);<br />}<br />if (plus_minus == 1000){<br />lcd_locate(0,3);<br />}<br />}<br />}<br /><br />void oblicz(void){ // funkacja wykonująca obliczenia<br />czestotliwosc=(float)obr_min/60;  // obliczanie czestotliwości<br />okres=(float)(16000000/(preskaler*czestotliwosc))-1; // obliczanie ilości korków procesora na pełny okres<br />ICR1 = (unsigned int)okres;<br />wypelnienie = (okres *(wyp/1000)); // obliczanie wypełnienia<br />OCR1A = (unsigned int) wypelnienie;<br />}<br /><br /><br />//****************   MAIN  ************************************************<br />int main(void){<br /><br />PORTD |= enkoder_e1 | enkoder_e2 | enkoder_s1 | przycisk_s2 | przycisk_s3; // Ustawienie pinów jako wejścia (przyciski i enkoder)<br />DDRB |= LED; // Ustawienie pinu jako wyjście (LED, kanał PWM OC1A)<br />GICR |= (1&lt;&lt;INT0) ;  // Zezwolenie na przerwania od przycisków i enkoder<br />MCUCR |=  (1&lt;&lt;ISC00) | (1&lt;&lt;ISC11) | (1&lt;&lt;ISC10); // Ustawienie reakcji na zbocza dla przerwań<br />TCCR1A|= (1&lt;&lt;WGM11) | (1&lt;&lt;COM1A1);// //Ustawienie trybu PWM dla timera 1 i ustawienie porównania<br />TCCR1B |= (1&lt;&lt;CS12) | (1&lt;&lt;WGM13) | (1&lt;&lt;WGM12);  // Ustawienie preskalera (256) i trybu PWM dla timera 1<br />TCCR2 |=  (1&lt;&lt;WGM21); // Ustawienie trybu CTC dal timera 2<br />OCR2 |= 155; // Ustawienie wartości porównania<br />TIMSK |= (1&lt;&lt;OCIE2); // Zezwolenie na przerwanie od porównania timera 2<br /><br />lcd_init(); // Inicjalizacja wyświetlacza<br /><br />//****Nazwa urządzenia*****<br />lcd_locate(0,2);<br />lcd_str(&quot;Obrotomierz&quot;);<br />lcd_locate(1,1);<br />lcd_str(&quot;Stroboskopowy&quot;);<br />_delay_ms(2000);<br />lcd_cls();<br /><br />lcd_blink_on();// Włączenie migającego kursora<br />sei();  // Włączenie przerwań<br /><br />//****************   PETLA GLOWNA   ************************************************<br />while(1){<br /><br />if(flaga_ekran == 0){<br /><br />if( !flaga_przycisk_enkoder &amp;&amp; !wcisniety_s1){  // obsługa wcisniecia s1<br />TCCR2 |=  (1&lt;&lt;CS20) | (1&lt;&lt;CS21) | (1&lt;&lt;CS22);<br />flaga_przycisk_enkoder=1;<br />plus_minus = plus_minus * 10; // zwiekszanie wartosci inkrementacji//dekrementacji<br />if (plus_minus == 10000){    // ogrniczenie wartosci inkrementacji//dekrementacji<br />plus_minus=1;<br />}<br />flaga_druk1=1;<br />}else if( flaga_przycisk_enkoder &amp;&amp; wcisniety_s1){  // zwolnienie s1<br />TCCR2 &amp;=  ~ ((1&lt;&lt;CS20) | (1&lt;&lt;CS21) | (1&lt;&lt;CS22));<br />flaga_przycisk_enkoder++;  // eliminacja drgan stykow<br />if(licznik_timer2&gt;300){ // jezeli s1 wcisniety &gt;3 sekund, przechodzi do ustawienia wypelnienia<br />flaga_ekran=1;<br />flaga_druk2=1;<br />lcd_cls();<br />}<br />licznik_timer2=0;<br />}<br /><br />if( !flaga_przycisk_mnozenia &amp;&amp; !wcisniety_s2){ // obsługa przycisku s2<br />flaga_przycisk_mnozenia=1;<br />obr_min=obr_min*2;<br />flaga_druk1=1;<br />}else if( flaga_przycisk_mnozenia &amp;&amp; wcisniety_s2)<br />flaga_przycisk_mnozenia++; // eliminacja drgan stykow<br /><br />if( !flaga_przycisk_dzielenia &amp;&amp; !wcisniety_s3){ // obsługa przycisku s3<br />flaga_przycisk_dzielenia=1;<br />obr_min=obr_min/2;<br />flaga_druk1=1;<br />}else if( flaga_przycisk_dzielenia &amp;&amp; wcisniety_s3)<br />flaga_przycisk_dzielenia++; // eliminacja drgan stykow<br /><br /><br />if(flaga_druk1==1){  // drukowanie informacji na LCD<br />ustaw_obroty();<br />ustaw_preskaler();<br />oblicz();<br />lcd_locate(0,0);    // ekran gówny linia 1<br />lcd_str(&quot;n:&quot;);<br />lcd_int(obr_min);<br />lcd_str(&quot;  &quot;);<br />lcd_int(plus_minus);<br />lcd_str(&quot;   &quot;);<br />dtostrf(czestotliwosc,3,3,f); // funkcja zmieniajaca float na char aby wyswietlic na LCD<br />lcd_locate(1,0);    // ekran główny linia 2<br />lcd_str(&quot;f:&quot;);<br />lcd_str(f);<br />lcd_str(&quot;   &quot;);<br />ustaw_kursor();<br />flaga_druk1=0;<br />}<br />}<br /><br />if(flaga_ekran == 1){<br />if( !flaga_przycisk_enkoder &amp;&amp; !wcisniety_s1){ //obsługa przycisku s1<br />flaga_przycisk_enkoder=1;<br />flaga_ekran=0;<br />flaga_druk2=0;<br />flaga_druk1=1;<br />lcd_cls();<br />}<br />else if( flaga_przycisk_enkoder &amp;&amp; wcisniety_s1) flaga_przycisk_enkoder++; // eliminacja drgan stykow<br /><br />if(flaga_druk2==1){ // drukowanie informacji na LCD<br />if(wyp &gt;=100) wyp=100;<br />if(wyp &lt;=1) wyp=1;<br />wypelnienie_cal= wyp/10;<br />wypelnienie_dzi= wyp-wypelnienie_cal*10;<br />lcd_locate(0,0);<br />lcd_str(&quot;wypelnienie&quot;);<br />lcd_locate(1,4);<br />lcd_int(wypelnienie_cal);<br />lcd_str(&quot;.&quot;);<br />lcd_int(wypelnienie_dzi);<br />lcd_str(&quot;%  &quot;);<br />lcd_locate(1,6);<br />if(wypelnienie_cal == 10) lcd_locate(1,7);<br />flaga_druk2=0;<br />}<br />}<br />}<br />}[/syntax]<br /><br /><a href="https://obrazkiforum.atnel.pl/7742/6fa794071cd63541380f9301659ebebf.png"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/7742/6fa794071cd63541380f9301659ebebf.png" alt="Obrazek" /></a><br /><br /><a href="https://obrazkiforum.atnel.pl/7742/5eab9cff3516816c3a525812ab1cfe0f.png"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/7742/5eab9cff3516816c3a525812ab1cfe0f.png" alt="Obrazek" /></a><br /><br />poprawione <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=7742">budapreniak</a> — 22 sty 2017, o 13:30</p><hr />
]]></content>
</entry>
</feed>