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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-10-23T19:03:41+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=4556&amp;mode</id>
<entry>
<author><name><![CDATA[banita 17]]></name></author>
<updated>2013-10-23T19:03:41+01:00</updated>
<published>2013-10-23T19:03:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4556&amp;p=54091#p54091</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4556&amp;p=54091#p54091"/>
<title type="html"><![CDATA[Re: złe wyświetlanie LCD zegarek]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4556&amp;p=54091#p54091"><![CDATA[
te wcięcia takie trochę ten teges i nie wiem czy dobrze rozumiem, ale jeżeli dobrze rozumiem to w ogóle nie rozumiem dlaczego tak zrobiłeś <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" /> <br /><br />wywaliłem kawałek Twojej funkcji, wygląda tak:<br /><br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 2013-10-23<br /> *      Author: mariusz<br /> */<br /><br /><br /><br />#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />#include &quot;lcd44780.h&quot;<br /><br />void funkcja1(uint8_t min, uint8_t sek);<br />volatile uint8_t timer=100;<br /><br /><br />int main(void)<br />{<br />lcd_init();<br />sei();<br />DDRB |= (1&lt;&lt;PB0) ;<br />PORTB |= (1&lt;&lt;PB0);<br /><br />TCCR0 |= (1&lt;&lt;WGM01) | (1&lt;&lt;CS00) | (1&lt;&lt;CS02); //tryb ctc, preskaler 1024<br />OCR0 = 78;<br />TIMSK |=(1&lt;&lt;OCIE0);<br /><br />while(1)<br />{<br />funkcja1(0,5);<br />}<br />}<br /><br /><br />ISR(TIMER0_COMP_vect)<br />{<br /><br /><br />if(timer) {<br /><br />timer--;<br /><br />}<br /><br />}<br /><br /><br /><br />void funkcja1(uint8_t min, uint8_t sek)<br />{<br />uint8_t minuty,sekundy;<br />static uint8_t licznik=0;<br /><br />if(licznik==0)licznik=60*min+sek;<br />minuty=licznik/60;<br />sekundy=licznik%60;<br />lcd_locate(0,0);<br />lcd_int(minuty);<br />lcd_locate(0,1);<br />lcd_char(':');<br /><br />if(sekundy&lt;10)<br />{<br />lcd_locate(0,2);<br />lcd_char('0');<br />lcd_locate(0,3);<br />lcd_int(sekundy);<br />}<br />else<br />{<br />lcd_locate(0,2);<br />lcd_int(sekundy);<br />}<br /><br />if(!timer)<br />{<br />timer=100; // ładuj licznik (10ms*100)<br />licznik--;<br />lcd_locate(0,0);<br />lcd_int(minuty);<br />lcd_locate(0,1);<br />lcd_char(':');<br /><br />if(sekundy&lt;10)<br />{<br />lcd_locate(0,2);<br />lcd_char('0');<br />lcd_locate(0,3);<br />lcd_int(sekundy);<br />}<br />else<br />{<br />lcd_locate(0,2);<br />lcd_int(sekundy);<br />}<br />}<br />}[/syntax]<br /><br /><br /><br /><br /><br />i nawet 0:05 się wyświetla <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=279">banita 17</a> — 23 paź 2013, o 19:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2013-10-23T18:37:35+01:00</updated>
<published>2013-10-23T18:37:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4556&amp;p=54087#p54087</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4556&amp;p=54087#p54087"/>
<title type="html"><![CDATA[Re: złe wyświetlanie LCD zegarek]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4556&amp;p=54087#p54087"><![CDATA[
Warunek <em>if(!Timer2)</em> za pierwszym razem jest od razu spełniony.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 23 paź 2013, o 18:37</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kidcowboy]]></name></author>
<updated>2013-10-22T23:40:00+01:00</updated>
<published>2013-10-22T23:40:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=4556&amp;p=53994#p53994</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=4556&amp;p=53994#p53994"/>
<title type="html"><![CDATA[złe wyświetlanie LCD zegarek]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=4556&amp;p=53994#p53994"><![CDATA[
Witam mam następujący problem : chcę aby funkcja odliczała mi  określony czas i wywołuję ją tak <br /><br />[syntax=c]funkcja1(0,5); // wywołanie pierwszy parametr minuty, drugi sekundy[/syntax]<br />Niestety na wyświetlaczu odlicza mi od 4 sek do 0 ? Mógłby mi ktoś wskazać błąd ? Z góry dziękuję<br />[syntax=c]void funkcja1(uint8_t min, uint8_t sek)<br />{<br />uint8_t minuty,sekundy;<br /><br />if(licznik==0)licznik=60*min+sek;<br />minuty=licznik/60;<br />sekundy=licznik%60;<br />lcd_locate(0,0);<br />lcd_int(minuty);<br />lcd_locate(0,1);<br />lcd_char(':');<br /><br />if(sekundy&lt;10)<br />{<br />lcd_locate(0,2);<br />lcd_char('0');<br />lcd_locate(0,3);<br />lcd_int(sekundy);<br />}<br /><br />else<br />{<br />lcd_locate(0,2);<br />lcd_int(sekundy);<br />}<br />if(!Timer2)<br />{<br />Timer2=100; // ładuj licznik (10ms*100)<br />licznik--;<br />PORTB^=LED_1;<br />}<br />if(licznik==0)<br />{<br /><br />sekundy=licznik%60;<br />lcd_locate(0,0);<br />lcd_int(minuty);<br />lcd_locate(0,1);<br />lcd_char(':');<br /><br />if(sekundy&lt;10)<br />{<br />lcd_locate(0,2);<br />lcd_char('0');<br />lcd_locate(0,3);<br />lcd_int(sekundy);<br />}<br /><br />else<br />{<br />lcd_locate(0,2);<br />lcd_int(sekundy);<br />}<br />flaga&#91;0&#93;=0;<br />}<br /><br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=313">kidcowboy</a> — 22 paź 2013, o 23:40</p><hr />
]]></content>
</entry>
</feed>