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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-12-15T20:57:26+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=13877&amp;mode</id>
<entry>
<author><name><![CDATA[Bartek123]]></name></author>
<updated>2015-12-15T20:57:26+01:00</updated>
<published>2015-12-15T20:57:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148160#p148160</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148160#p148160"/>
<title type="html"><![CDATA[Re: ATmega8 &quot;Inteligętne schody&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148160#p148160"><![CDATA[
Nie wiem który testowałeś ten pierwszy mój czy drugi, bo pierwszy nie działa, spróbuj zrobić tak:<br />[syntax=c]/*<br /> * Zapalanie diód od góry do dołu<br /> */<br />void DownDiodeOn()<br />{<br />        for(int8_t n = 4; n &gt;= 0; n--)                  // mysle ze tu jest blad<br />        {<br />                for(uint8_t i = 0; i &lt; 255; i++)<br />                {<br />                        pwm&#91;n&#93; = i;<br />                        _delay_ms(DELAY_PWM);<br />                }<br />        }<br />}<br /> <br />/*<br /> * Wygaszanie diód od góry do dołu<br /> */<br />void DownDiodeOff()<br />{<br />        for(int8_t n = 4; n &gt;= 0; n--)                  // i tu też<br />        {<br />                for(uint8_t i = 255; i &gt; 0; i--)<br />                {<br />                        pwm&#91;n&#93; = i;<br />                        _delay_ms(DELAY_PWM);<br />                }<br />        }<br />}[/syntax]<br />Jak nie działa to już nie mam pomysłu. Możesz spróbować jeszcze popatrzyć co się dzieje w programie na podstawie zapalenia diody i np warunku if i wtedy dowiesz się gdzie dokładnie leży problem. Sprawdziłem u siebie tę pętlę i mi dobrze działa(nie zapętla się). Sprawdziłem samą pętle a nie cały kod.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10617">Bartek123</a> — 15 gru 2015, o 20:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[lukaszc27]]></name></author>
<updated>2015-12-15T14:01:27+01:00</updated>
<published>2015-12-15T14:01:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148094#p148094</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148094#p148094"/>
<title type="html"><![CDATA[Re: ATmega8 &quot;Inteligętne schody&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148094#p148094"><![CDATA[
Rozwiązanie użytkownika Bartek123 już testowałem i powoduje ono zapętlenie programu <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> tak samo jak w przypadku użytkownika sz4t4n<br /><br />Na szybko rozwiązałem ten problem w ten sposób<br />[syntax=c]/*<br /> * Zapalanie diód od góry do dołu<br /> */<br />void DownDiodeOn()<br />{<br />for(uint8_t n = 5; n &gt; 0; --n)// mysle ze tu jest blad<br />{<br />for(uint8_t i = 0; i &lt; 255; i++)<br />{<br />pwm&#91;n&#93; = i;<br />_delay_ms(DELAY_PWM);<br />}<br />}<br /><br />// tymczasowe naprawienie błędu<br />for(uint8_t i = 0; i &lt; 255; i++) {<br />pwm&#91;0&#93; = i;<br />_delay_ms(DELAY_PWM);<br />}<br />}<br /><br />/*<br /> * Wygaszanie diód od góry do dołu<br /> */<br />void DownDiodeOff()<br />{<br />for(uint8_t n = 5; n &gt; 0; --n)// i tu też<br />{<br />for(uint8_t i = 255; i &gt; 0; i--)<br />{<br />pwm&#91;n&#93; = i;<br />_delay_ms(DELAY_PWM);<br />}<br />}<br /><br />// tymczasowe naprawienie błędu<br />for(uint8_t i = 255; i &gt; 0; i--) {<br />pwm&#91;0&#93; = i;<br />_delay_ms(DELAY_PWM);<br />}<br />}[/syntax]<br /><br />i działa prawidłowo tylko razi w oczy ten dodatkowy for  <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br />mimo wszystko dziękuję za zainteresowanie <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=10175">lukaszc27</a> — 15 gru 2015, o 14:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Bartek123]]></name></author>
<updated>2015-12-14T21:47:27+01:00</updated>
<published>2015-12-14T21:47:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148012#p148012</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148012#p148012"/>
<title type="html"><![CDATA[Re: ATmega8 &quot;Inteligętne schody&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148012#p148012"><![CDATA[
Ile programistów tyle rozwiązań <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> . Zmiennej n (nie jestem pewien na 100%) trzeba na początku dać 4 nie pięć taka mała uwaga. <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />PS: Poprawiłem kod który wstawiłem, bo dopiero w szkole zauważyłem, że jest zły.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10617">Bartek123</a> — 14 gru 2015, o 21:47</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sz4t4n]]></name></author>
<updated>2015-12-14T21:23:44+01:00</updated>
<published>2015-12-14T21:23:44+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148007#p148007</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148007#p148007"/>
<title type="html"><![CDATA[Re: ATmega8 &quot;Inteligętne schody&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148007#p148007"><![CDATA[
Ja bym jednak zmienił to w ten sposób <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />[syntax=c]void DownDiodeOn()<br />{<br />        for(int8_t n = 5; n &gt; -1; --n)<br />        {<br />                for(uint8_t i = 0; i &lt; 255; i++)<br />                {<br />                        pwm&#91;n&#93; = i;<br />                        _delay_ms(DELAY_PWM);<br />                }<br />        }<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=377">sz4t4n</a> — 14 gru 2015, o 21:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Bartek123]]></name></author>
<updated>2015-12-15T13:27:08+01:00</updated>
<published>2015-12-14T21:12:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148002#p148002</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148002#p148002"/>
<title type="html"><![CDATA[Re: ATmega8 &quot;Inteligętne schody&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=148002#p148002"><![CDATA[
A sprawdź czy tak będzie działać:<br />[syntax=c]/*<br /> * Zapalanie diód od góry do dołu<br /> */<br />void DownDiodeOn()<br />{<br />        for(int8_t n = 4; n &gt;= 0; --n)                  // mysle ze tu jest blad<br />        {<br />                for(uint8_t i = 0; i &lt; 255; i++)<br />                {<br />                        pwm&#91;n&#93; = i;<br />                        _delay_ms(DELAY_PWM);<br />                }<br />        }<br />}<br /> <br />/*<br /> * Wygaszanie diód od góry do dołu<br /> */<br />void DownDiodeOff()<br />{<br />        for(int8_t n = 4; n &gt;= 0; --n)                  // i tu też<br />        {<br />                for(uint8_t i = 255; i &gt; 0; i--)<br />                {<br />                        pwm&#91;n&#93; = i;<br />                        _delay_ms(DELAY_PWM);<br />                }<br />        }<br />}[/syntax]<br />powinno działać. Problem był w tym, że na górze masz tablice pwm[5] czyli jest 5 pwmów od 0 do 4 a ty w pętli masz warunek n&gt;0 więc n nigdy nie będzie miało wartość zero i zaczynasz liczyć od pięciu a piąty pwm ma indeks w tablicy pwm 4 a nie 5.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10617">Bartek123</a> — 14 gru 2015, o 21:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[lukaszc27]]></name></author>
<updated>2015-12-14T21:01:24+01:00</updated>
<published>2015-12-14T21:01:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147998#p147998</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147998#p147998"/>
<title type="html"><![CDATA[Re: ATmega8 &quot;Inteligętne schody&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147998#p147998"><![CDATA[
Dzięki za odpowiedź, ale to nie jest rozwiązanie mojego problemu  <img src="https://forum.atnel.pl/images/smilies/icon_neutral.gif" alt=":|" title="Średnio zadowolony" /><br />To co ty zaprezentowałeś pochodzi z funkcji UpDiodeOn i UpDiodeOff a one działają prawidłowo <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />Problem mam przy funkcjach DownDiodeOn i DownDiodeOff, już nie zapętlają programu ale ostatnia dioda się nie zapala reszta idzie jak powinno<br /><br />[syntax=c]/*<br /> * Zapalanie diód od góry do dołu<br /> */<br />void DownDiodeOn()<br />{<br />for(uint8_t n = 5; n &gt; 0; --n)// mysle ze tu jest blad<br />{<br />for(uint8_t i = 0; i &lt; 255; i++)<br />{<br />pwm&#91;n&#93; = i;<br />_delay_ms(DELAY_PWM);<br />}<br />}<br />}<br /><br />/*<br /> * Wygaszanie diód od góry do dołu<br /> */<br />void DownDiodeOff()<br />{<br />for(uint8_t n = 5; n &gt; 0; --n)// i tu też<br />{<br />for(uint8_t i = 255; i &gt; 0; i--)<br />{<br />pwm&#91;n&#93; = i;<br />_delay_ms(DELAY_PWM);<br />}<br />}<br />}[/syntax]<br /><br />tu wstawiam same funkcje i w oznaczonych miejscach prawdopodobne miejsca błędnych warunków (pętla robi za 1 obieg za mało)<br /><br />Ale dziękuję za zainteresowanie użytkownika sz4t4n i życzę wesołych świąt <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=10175">lukaszc27</a> — 14 gru 2015, o 21:01</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[sz4t4n]]></name></author>
<updated>2015-12-14T20:45:53+01:00</updated>
<published>2015-12-14T20:45:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147994#p147994</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147994#p147994"/>
<title type="html"><![CDATA[Re: ATmega8 &quot;Inteligętne schody&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147994#p147994"><![CDATA[
Cześć,<br /><br />to powoduje że n kończy się na 4<br />[syntax=c]for(uint8_t n = 0; n &lt; 5; n++)[/syntax]<br /><br />zrób tak :<br /><br />[syntax=c]for(uint8_t n = 0; n &lt; 6; n++)[/syntax]<br /><br />powinno zadziałać.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=377">sz4t4n</a> — 14 gru 2015, o 20:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[lukaszc27]]></name></author>
<updated>2015-12-14T18:37:48+01:00</updated>
<published>2015-12-14T18:37:48+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147973#p147973</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147973#p147973"/>
<title type="html"><![CDATA[Re: ATmega8 &quot;Inteligętne schody&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147973#p147973"><![CDATA[
Po poprawce zaproponowanej przez pana Mirka wstawiłem nową wersję kodu, funkcje działają prawidłowo tylko w funkcjach DownDiodeOn() i DownDiodeOff() pętla for(sterowania zmienna n) wykonuje się jeden krok za mało i jedna dioda się nie zapala <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> bardzo bym prosił o wskazówki<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10175">lukaszc27</a> — 14 gru 2015, o 18:37</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[lukaszc27]]></name></author>
<updated>2015-12-14T16:33:04+01:00</updated>
<published>2015-12-14T16:33:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147960#p147960</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147960#p147960"/>
<title type="html"><![CDATA[ATmega8 &quot;Inteligętne schody&quot;]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13877&amp;p=147960#p147960"><![CDATA[
Witam! Programuję koledze mini sterownik &quot;Inteligętnych schodów&quot; ich inteligecja ma polegać na tym że kiedy wchodzimy to czujnik ruchu PIR HC-SR501 uruchamia schody po kolei do góry a kiedy idziemy w dół to czujnik zamontowany na górze uruchamia światło na dół, wszystko proste do oprogramowania tylko mam pewien problem <img src="https://forum.atnel.pl/images/smilies/icon_e_sad.gif" alt=":(" title="Smutny" /> funkcje zapalające światło działają tylko raz a puźniej blokują program i nie wiem dla czego  <img src="https://forum.atnel.pl/images/smilies/icon_cry.gif" alt=":cry:" title="Płacze" /> <br /><br />Tutaj kod:<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;avr/wdt.h&gt;<br /><br />#include &quot;main.h&quot;<br /><br /><br />void Setup();// Initializacja Atmegi<br />void UpDiodeOn();// zapalanie diód od dołu do góry<br />void UpDiodeOff();// wygaszenie diód od dołu do góry<br />void DownDiodeOn();// zapalanie diód od góry do dołu<br />void DownDiodeOff();// wygaszenie diód od góry do dołu<br /><br />volatile uint8_t pwm&#91;5&#93;;// 5 programowych kanałów PWM<br />volatile uint8_t sensorDownActive;// 1 - znaleziono ruch, 0 - brak ruchu<br />volatile uint8_t sensorUpActive;// 1 - znaleziono ruch, 0 - brak ruchu<br /><br />// mini RTC ;-)<br />volatile uint8_t time;<br />volatile uint8_t timeFlag;<br /><br />/*<br /> * Główna funkcja<br /> */<br />int main()<br />{<br />Setup();<br /><br />sei();// zeswolenie na przerwania<br />while(1)<br />{<br />if(!(PIND &amp; SENSOR_UP))<br />{<br />UpDiodeOn();<br />UpDiodeOff();<br />}<br /><br />if(!(PIND &amp; SENSOR_DOWN))<br />{<br />DownDiodeOn();<br />DownDiodeOff();<br />}<br /><br />#ifdef USE_WDT<br />wdt_reset();<br />#endif // USE_WDT<br />} // while<br /><br />#ifdef USE_WDT<br />wdt_disable();<br />#endif // USE_WDT<br />return 0;<br />}<br /><br />/*<br /> * Ustawienie portów I/O<br /> * uruchomienie timerów<br /> */<br />void Setup()<br />{<br />// wyjscia dla diod na schodz<br />DDRC |= LED1 | LED2 | LED3 | LED4 | LED5;<br /><br />// ustawienie czujników (podciągnięcie do VCC)<br />PORTD |= SENSOR_UP | SENSOR_DOWN;<br /><br />DDRB |= (1 &lt;&lt; PB1);// dla testów Timera<br /><br />//Timer/Counter2 -&gt; CTC<br />TCCR2 |= (1 &lt;&lt; WGM21);// Tryb CTC<br />TCCR2 |= (1 &lt;&lt; COM21) | (1 &lt;&lt; COM20);// Set OC2 on Compare Match<br />TCCR2 |= (1 &lt;&lt; CS20);// Brak preskalera<br />OCR2 = 156;<br /><br />TIMSK |= (1 &lt;&lt; OCIE2);// włączenie przerwania Timera2 trybu CTC<br /><br />// Timer/Counter0 -&gt; Normal<br />TCCR0 |= (1 &lt;&lt; CS02) | (1 &lt;&lt; CS00);// preskaler 1024<br />TCNT0 = 78;// dodatkowy podział przez 78 ( ~40Hz )<br />TIMSK |= (1 &lt;&lt; TOIE0);// włączenie przerwania przepełnienia<br /><br /><br />#ifdef USE_WDT<br />wdt_enable(WDTO_2S);// uruchomienie WotchDog (1s)<br />#endif // USE_WDT<br />_delay_ms(10);// ustatkowanie napięć na portach<br />}<br /><br />/*<br /> * Przerwanie CTC<br /> * realizacja programowego PWM<br /> */<br />ISR(TIMER2_COMP_vect)<br />{<br />static volatile uint8_t PWMcount;// licznik impulsów PWM<br /><br />// kanał 1<br />if((PWMcount &gt; 0) &amp;&amp; (PWMcount &lt; pwm&#91;0&#93;))<br />PORTC |= LED1;<br />else PORTC &amp;= ~LED1;<br /><br />// kanał 2<br />if((PWMcount &gt; 0) &amp;&amp; (PWMcount &lt; pwm&#91;1&#93;))<br />PORTC |= LED2;<br />else PORTC &amp;= ~LED2;<br /><br />// kanał 3<br />if((PWMcount &gt; 0) &amp;&amp; (PWMcount &lt; pwm&#91;2&#93;))<br />PORTC |= LED3;<br />else PORTC &amp;= ~LED3;<br /><br />// kanał 4<br />if((PWMcount &gt; 0) &amp;&amp; (PWMcount &lt; pwm&#91;3&#93;))<br />PORTC |= LED4;<br />else PORTC &amp;= ~LED4;<br /><br />// kanał 5<br />if((PWMcount &gt; 0) &amp;&amp; (PWMcount &lt; pwm&#91;4&#93;))<br />PORTC |= LED5;<br />else PORTC &amp;= ~LED5;<br /><br /><br />PWMcount++;<br />if(PWMcount &gt; 255)<br />PWMcount = 0;<br />}<br /><br />/*<br /> * Timer/Counter0 Overflow innterupt<br /> * odczytywanie stanów czujników<br /> */<br />ISR(TIMER0_OVF_vect)<br />{<br />static uint8_t count = 0;<br />static uint8_t sensorDownLock;// pomocnicze podczas usuwania nierównoci w napięciach<br />static uint8_t sensorUpLock;//<br /><br />if(++count &gt; 10)<br />{<br />timeFlag = 1;<br /><br />time++;<br />if(time &gt; 59)<br />time = 0;<br /><br />count = 0;<br />}<br /><br />// sprawdzenie stanów czujników<br />if(timeFlag)<br />{<br />// ruch na dole<br />if(!sensorDownLock &amp;&amp; !(PIND &amp; SENSOR_DOWN))<br />{<br />sensorDownLock = 1;<br />sensorDownActive = 1;<br />}<br />else if(sensorDownLock &amp;&amp; (PIND &amp; SENSOR_DOWN))<br />sensorDownLock++;<br /><br />// ruch na górze<br />if(!sensorUpLock &amp;&amp; !(PIND &amp; SENSOR_UP))<br />{<br />sensorUpLock = 1;<br />sensorUpActive = 1;<br />}<br />else if(sensorUpLock &amp;&amp; (PIND &amp; SENSOR_UP))<br />sensorUpLock++;<br /><br /><br />timeFlag = 0;<br />}<br />}<br /><br />/*<br /> * Zapalanie diód podczas wychodzenia do góry<br /> */<br />void UpDiodeOn()<br />{<br />for(uint8_t n = 0; n &lt; 5; n++)<br />{<br />for(uint8_t i = 0; i &lt; 255; i++)<br />{<br />pwm&#91;n&#93; = i;<br />_delay_ms(DELAY_PWM);<br />}<br />}<br />}<br /><br />/*<br /> * Wygaszenie diód po wyjciu do góry<br /> */<br />void UpDiodeOff()<br />{<br />for(uint8_t n = 0; n &lt; 5; n++)<br />{<br />for(uint8_t i = 255; i &gt; 0; i--)<br />{<br />pwm&#91;n&#93; = i;<br />_delay_ms(DELAY_PWM);<br />}<br />}<br />}<br /><br />/*<br /> * Zapalanie diód od góry do dołu<br /> */<br />void DownDiodeOn()<br />{<br />for(uint8_t n = 5; n &gt; 0; --n)<br />{<br />for(uint8_t i = 0; i &lt; 255; i++)<br />{<br />pwm&#91;n&#93; = i;<br />_delay_ms(DELAY_PWM);<br />}<br />}<br />}<br /><br />/*<br /> * Wygaszanie diód od góry do dołu<br /> */<br />void DownDiodeOff()<br />{<br />for(uint8_t n = 5; n &gt; 0; --n)<br />{<br />for(uint8_t i = 255; i &gt; 0; i--)<br />{<br />pwm&#91;n&#93; = i;<br />_delay_ms(DELAY_PWM);<br />}<br />}<br />}[/syntax]<br /><br />Bardzo prosiłbym o sugestie z jakich powodów dzieją się te dziwne anomalie <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />Z góry dziękuje i życzę wesołych świąt  <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 9 minutach ]</span></strong><br /><br />Tak teraz zauważyłem (po dodatkowych testach <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> ) że funkcje UpDiodeOn() i UpDiodeOff() działają prawidłowo, problemy pojawiają się przy funkcjach DownDiodeOn() i DownDiodeOff()<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10175">lukaszc27</a> — 14 gru 2015, o 16:33</p><hr />
]]></content>
</entry>
</feed>