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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-08-02T17:51:39+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=7989&amp;mode</id>
<entry>
<author><name><![CDATA[matiwegr]]></name></author>
<updated>2014-08-02T17:51:39+01:00</updated>
<published>2014-08-02T17:51:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89928#p89928</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89928#p89928"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89928#p89928"><![CDATA[
Raz patrzę nic nie widzę, dla mnie program ok. Potem poszedłem na dwór. Patrzę znowu i błąd jak na tacy.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3833">matiwegr</a> — 2 sie 2014, o 17:51</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-08-02T17:49:26+01:00</updated>
<published>2014-08-02T17:49:26+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89926#p89926</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89926#p89926"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89926#p89926"><![CDATA[
i co ciekawe w kodzie wyżej też to było - no ale nieraz trzeba mieć sokole oko aby wyłapać tak &quot;na sucho&quot; tego typu babolka <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> kolega matiwegr miał sokole oko <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 2 sie 2014, o 17:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mellanogaster]]></name></author>
<updated>2014-08-02T17:49:48+01:00</updated>
<published>2014-08-02T17:45:27+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89924#p89924</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89924#p89924"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89924#p89924"><![CDATA[
o właśnie <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> wiedziałem że to będzie coś prostego!<br />Wielkie dzięki za pomoc!<br /><br />dobrze że mi oczy otworzyłeś na to co tak właściwie dzieje się pod tym if'em<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2911">Mellanogaster</a> — 2 sie 2014, o 17:45</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matiwegr]]></name></author>
<updated>2014-08-02T17:40:42+01:00</updated>
<published>2014-08-02T17:40:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89923#p89923</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89923#p89923"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89923#p89923"><![CDATA[
Dobra już odkryłem Twój błąd. Dwa razy inkrementujesz zmienną cnt, raz przed warunkiem if a raz w warunku if. Usuń linijkę cnt++.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3833">matiwegr</a> — 2 sie 2014, o 17:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mellanogaster]]></name></author>
<updated>2014-08-02T17:36:22+01:00</updated>
<published>2014-08-02T17:36:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89920#p89920</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89920#p89920"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89920#p89920"><![CDATA[
Tak jak wspominałem na potrzeby tego gryzołka wykorzystałem Twój kod Mirku<br /><br />gdybyś mógł na swoim ATB go sprawdzić...<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/pgmspace.h&gt;<br />#include &lt;avr/eeprom.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include &lt;avr/interrupt.h&gt; //<br /><br />#include &quot;I2C_TWI/i2c_twi.h&quot;<br />#include &quot;LCD/lcd44780.h&quot;<br /><br />// poniższą linijkę czasami trzeba wpisać w eclipse przed definicjami<br />// zmiennych w pamięci EEPROM, żeby nie podkreślał składni jako błędnej<br />//#define EEMEM __attribute__((section(&quot;.eeprom&quot;)))<br /><br />const char PROGMEM tab1&#91;&#93; = {&quot;FLASH&quot;};<br />char EEMEM tab2&#91;&#93; = {&quot;EEPROM&quot;};<br /><br />uint8_t znak_L&#91;&#93; = {16,16,18,20,24,16,31,0};// wzór znaku litery Ł w pamięci RAM<br />uint8_t znak_o&#91;&#93; EEMEM = {4,32,14,17,17,17,14,0};// wzór znaku litery ó w pamięci EEPROM<br />const uint8_t znak_buzka&#91;&#93; PROGMEM = {14,17,27,17,17,21,17,14};// wzór znaku buźki w pamięci FLASH<br />const uint8_t znak_termo&#91;&#93; PROGMEM = {4,10,10,10,17,31,31,14};// wzór znaku termometru w pamięci FLASH<br /><br />uint8_t sekundy, s1_flag;<br />uint8_t cnt, a;<br /><br />int main(void)<br />{<br />sei();<br /><br />TCCR0 |= (1&lt;&lt;WGM01);/* tryb CTC */<br />TCCR0 |= (1&lt;&lt;CS02)|(1&lt;&lt;CS00);/* preskaler = 1024 */<br />OCR0 = 107;/* dodatkowy podział przez 208 (rej. przepełnienia) */<br />TIMSK |= (1&lt;&lt;OCIE0);<br /><br />lcd_init();<br /><br /><br />lcd_locate(0,0);<br />lcd_str_P(tab1);// napis z pamięci FLASH<br />lcd_locate(0,10);<br />lcd_str_P( PSTR(&quot;Linia1&quot;) );// napis z pamięci FLASH<br />//lcd_locate(1,0);<br />//lcd_str_E(tab2);// napis z pamięci EEPROM<br />//lcd_locate(1,10);<br />//lcd_str(&quot;Linia2&quot;);// napis z pamięci RAM<br /><br />// załadowanie znaków do pamięci CGRAM<br />lcd_defchar(0x80, znak_L);<br />lcd_defchar_E(0x81, znak_o);<br />lcd_defchar_P(0x82, znak_buzka);<br />lcd_defchar_P(0x83, znak_termo);<br /><br /><br />// wyświetlenie własnych znaków na LCD<br />lcd_locate(0,7);<br />lcd_str(&quot;\x80\x81&quot;);<br />lcd_locate(1,8);<br />lcd_str(&quot;\x82&quot;);<br />lcd_locate(1,7);<br />lcd_str(&quot;\x83&quot;);<br /><br />//uint8_t a=0;<br />while(1) {<br />lcd_locate(1,0);<br />lcd_int(a++);<br />//lcd_str(&quot;  &quot;);<br />//lcd_LED( a &amp; 0x01 ); // migotanie podświetlenia LCD co 0,5 s<br />_delay_ms(1000);<br />lcd_locate(1,10);<br />lcd_int(sekundy);<br />}<br />}<br /><br />ISR(TIMER0_COMP_vect)<br />{<br />cnt++;<br />if(++cnt&gt;99)// gdy licznik ms &gt; 99 (minęła 1 sekunda)<br />{<br />cnt = 0;// wyzeru licznik setnych ms<br />s1_flag = 1;// ustaw flagę tyknięcia sekundy<br />++sekundy;// zwiększ licznik sekund<br />if(sekundy &gt; 59)<br />{<br />sekundy = 0; // jeśli ilość sekund &gt; 59 - wyzeruj<br />}<br /><br /><br />}<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2911">Mellanogaster</a> — 2 sie 2014, o 17:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-08-02T17:30:44+01:00</updated>
<published>2014-08-02T17:30:44+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89918#p89918</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89918#p89918"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89918#p89918"><![CDATA[
to pokaż swój cały kod - bo gdzieś musisz babola robić ...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 2 sie 2014, o 17:30</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mellanogaster]]></name></author>
<updated>2014-08-02T17:16:39+01:00</updated>
<published>2014-08-02T17:16:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89916#p89916</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89916#p89916"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89916#p89916"><![CDATA[
zwykły _delay_ms(1000) działa normalnie<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2911">Mellanogaster</a> — 2 sie 2014, o 17:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mellanogaster]]></name></author>
<updated>2014-08-02T17:06:37+01:00</updated>
<published>2014-08-02T17:06:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89912#p89912</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89912#p89912"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89912#p89912"><![CDATA[
fusebity są ustawione na zewnętrzny kwarc &gt;8MHz (mkAVR Calculator)<br />W oknie projektu też jest jak należy.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2911">Mellanogaster</a> — 2 sie 2014, o 17:06</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2014-08-02T17:04:02+01:00</updated>
<published>2014-08-02T17:04:02+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89910#p89910</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89910#p89910"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89910#p89910"><![CDATA[
<div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />tzn zmienna sekundy przyrasta ~ 2 razy za szybko. Pytanie czemu?<br /></div><br /><br />Bo pewnie o ustawieniu fusebitów w procku to zapomniałeś <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 2 sie 2014, o 17:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matiwegr]]></name></author>
<updated>2014-08-02T17:02:57+01:00</updated>
<published>2014-08-02T17:02:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89909#p89909</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89909#p89909"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89909#p89909"><![CDATA[
Czy w oknie projektu jest ustawiona odpowiednia częstotliwość? Czy fusebity dobrze ustawione?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3833">matiwegr</a> — 2 sie 2014, o 17:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mellanogaster]]></name></author>
<updated>2014-08-02T17:00:21+01:00</updated>
<published>2014-08-02T17:00:21+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89907#p89907</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89907#p89907"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89907#p89907"><![CDATA[
No i nie działa :C<br /><br />tzn zmienna sekundy przyrasta ~ 2 razy za szybko. Pytanie czemu?<br />Pisałem program i w czasie działania zauważyłem że gna jak głupi. Przeniosłem więc podejrzane przerwanie do prościutkiego programiku od Mirka którego zadaniem jest obsługa wyświetlacza przez ekspander PCF... działa tak samo. Zapewne odpowiedź będzie trywialna tylko u mnie już za duże zmęczenie materiału więc zwracam się do Was z prośbą o pomysły.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2911">Mellanogaster</a> — 2 sie 2014, o 17:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matiwegr]]></name></author>
<updated>2014-08-02T16:54:04+01:00</updated>
<published>2014-08-02T16:54:04+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89905#p89905</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89905#p89905"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89905#p89905"><![CDATA[
Tak, to będzie działać.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3833">matiwegr</a> — 2 sie 2014, o 16:54</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mellanogaster]]></name></author>
<updated>2014-08-02T17:12:51+01:00</updated>
<published>2014-08-02T16:52:24+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89904#p89904</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89904#p89904"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89904#p89904"><![CDATA[
[syntax=c]ISR(TIMER0_COMP_vect)<br />{<br />static uint8_t cnt=0;<br />cnt++;<br />if(++cnt&gt;99)// gdy licznik ms &gt; 99 (minęła 1 sekunda)<br />{<br />s1_flag = 1;// ustaw flagę tyknięcia sekundy<br />sekundy++;// zwiększ licznik sekund<br />if(sekundy &gt; 14)<br />{<br />sekundy = 0; // jeśli ilość sekund &gt; 14 - wyzeruj<br />}<br />cnt = 0;// wyzeru licznik setnych ms<br /><br />}<br />}[/syntax]<br /><br />A czy to jest poprawne?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2911">Mellanogaster</a> — 2 sie 2014, o 16:52</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kuźnia]]></name></author>
<updated>2014-08-02T16:49:09+01:00</updated>
<published>2014-08-02T16:49:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89902#p89902</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89902#p89902"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89902#p89902"><![CDATA[
Według mnie masz rację OCR0 = 107<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2537">Kuźnia</a> — 2 sie 2014, o 16:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matiwegr]]></name></author>
<updated>2014-08-02T16:48:47+01:00</updated>
<published>2014-08-02T16:48:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89901#p89901</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89901#p89901"/>
<title type="html"><![CDATA[Re: Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89901#p89901"><![CDATA[
Jest taki prosty wzór(sam często go używam):<br />OCR = (F_CPU /PRESKALER/częstotliwość zadana)- 1<br />czyli 107 do 100Hz pasuje.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3833">matiwegr</a> — 2 sie 2014, o 16:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Mellanogaster]]></name></author>
<updated>2014-08-02T16:44:57+01:00</updated>
<published>2014-08-02T16:44:57+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89900#p89900</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89900#p89900"/>
<title type="html"><![CDATA[Atmega32 - Timer w trybie CTC]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7989&amp;p=89900#p89900"><![CDATA[
Niech mi ktoś napisze jaką wartość powinienem wpisać do rejestru OCR0, tak aby w instrukcji przerwania wykonywana była z częstotliwością 100Hz.<br />Kwarc 11,0592MHz<br />preskaler 1024<br />czyżby to było 107?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2911">Mellanogaster</a> — 2 sie 2014, o 16:44</p><hr />
]]></content>
</entry>
</feed>