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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-01-03T10:08:58+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=5400&amp;mode</id>
<entry>
<author><name><![CDATA[jacekr]]></name></author>
<updated>2014-01-03T10:08:58+01:00</updated>
<published>2014-01-03T10:08:58+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=5400&amp;p=63554#p63554</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=5400&amp;p=63554#p63554"/>
<title type="html"><![CDATA[ATMEGA644 Timer2 CTC problem z prawidlowym uruchomieniem]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=5400&amp;p=63554#p63554"><![CDATA[
Witam<br />&quot;Odpaliłem&quot; menu kolegi rezasurmar na atmega32 i działa bez problemu <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> dzięki wielkie za taka prace w uruchomieniu tego menu <a href="http://forum.atnel.pl/topic1861.html"  class="postlink">http://forum.atnel.pl/topic1861.html</a><br />Jednakże taka Atmega mam tylko w płytce prototypowej a w docelowym układzie gdzie chciałbym uruchomić małe co nie co mam Atmege 644<br />i zaczęły się przynajmniej dla mnie schody.Nie chce ruszyć Timer2 w CTC<br />Timer0 wyzwalany zewnętrznie działa bez problemu.<br /><br />Czy mógłby kto oświecić co zrobiłem źle ?<br /><br />[syntax=c]int main()<br />{<br />BEEP_DDR |= BEEP;<br />DDRC |= LED1;<br />DDRC |= LED2;<br />PORTB |= K_up | K_down | K_ok;<br />BEEP_OFF;<br />/*----------------------------- inicjalizacja przerwaN  ---------------*/<br />// Przerwanie INT0<br />EICRA |= (1&lt;&lt;ISC01);// wyzwalanie zboczem opadajacym<br />EIMSK |= (1&lt;&lt;INT0);// odblokowanie przerwania<br />PORTD |= (1&lt;&lt;PD2);// podciagniecie pinu INT0 do VCC<br /><br /><br />/*Przerywanie wygonywane jest z czestotliwoscia ok 10ms (100 razy na secunde)*/<br />/* Timer2 – inicjalizacja przerwania co 10ms */<br />/*<br />TCCR2 = (1&lt;&lt;WGM21);// tryb pracy CTC<br />TCCR2 = (1&lt;&lt;CS22)|(1&lt;&lt;CS20);// preskaler = 1024<br />OCR2 = 108;// przerwanie porównania co 10ms (100Hz)<br />TIMSK = (1&lt;&lt;OCIE2);// Odblokowanie przerwania CompareMatch<br />*/<br />//ustawienie TIMER2      16,000,000 / 1024 / 256 = 61Hz<br />  TCCR2A |= (1&lt;&lt;WGM21);           //CTC<br />  TCCR2B |= (1&lt;&lt;CS22)|(1&lt;&lt;CS21)|(1&lt;&lt;CS20);//prescaler 1024<br />  TCNT2 = 156;<br />  TIMSK2 |= (1&lt;&lt;OCIE2A);<br /><br />lcd_init();<br />//lcd_blink_on();<br />Menu_Show();<br />sei();<br />//<br /> while(1)<br /> {<br /> uint8_t ok, up, down;<br /> SuperDebounce(&amp;up, &amp;PINB, K_up, 20, 1000, Menu_SelectPrev, 0);<br /> SuperDebounce(&amp;down, &amp;PINB, K_down, 20, 1000, Menu_SelectNext, 0);<br /> SuperDebounce(&amp;ok, &amp;PINB, K_ok, 20, 1000, Menu_Click, 0);<br /><br /> }<br />}<br /><br />//ISR(TIMER2_COMP_vect)<br />ISR(TIMER2_OVF_vect)<br />{<br />uint16_t n;<br />uint16_t nn;<br /><br />n = Timer1;/* 100Hz Timer1 */<br />if (n) Timer1 = --n;<br />n = Timer2;/* 100Hz Timer2 */<br />if (n) Timer2 = --n;<br /><br />}<br /><br />}<br />ISR( INT0_vect ) {<br /><br />LED1_TOG;<br />}[/syntax]<br /><br /><br />P.S.<br />po którymś tam z koleji przeczytaniu tajemnej niebieskiej książki zrozumiałem swój błąd <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br />bylem blisko rozwiązania ale nie widziałem tego, poniżej rozwiązanie :<br /><br /><br />  TCCR2A |= (1&lt;&lt;WGM21);     <br />  TCCR2B |= (1&lt;&lt;CS22)|(1&lt;&lt;CS21)|(1&lt;&lt;CS20);<br />  OCR2A = 156;<br />  TIMSK2 |= (1&lt;&lt;OCIE2A);<br /><br />ISR(TIMER2_COMPA_vect)<br />{}<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2339">jacekr</a> — 3 sty 2014, o 10:08</p><hr />
]]></content>
</entry>
</feed>