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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-09-06T20:18:47+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=12866&amp;mode</id>
<entry>
<author><name><![CDATA[directx91]]></name></author>
<updated>2015-09-06T20:18:47+01:00</updated>
<published>2015-09-06T20:18:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139227#p139227</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139227#p139227"/>
<title type="html"><![CDATA[Re: Przerawania a atmega 1284p -&gt; wektor przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139227#p139227"><![CDATA[
yyyy jeszcze pisałem ze str 107... (a to sie do rejestru TCCR0B odnosiło...)<br /><br />Dzięki wielkie za pomoc działa<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2069">directx91</a> — 6 wrz 2015, o 20:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matekogon]]></name></author>
<updated>2015-09-06T20:12:54+01:00</updated>
<published>2015-09-06T20:12:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139226#p139226</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139226#p139226"/>
<title type="html"><![CDATA[Re: Przerawania a atmega 1284p -&gt; wektor przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139226#p139226"><![CDATA[
Bo prescaler ustawia sie w innym rejestrze TCCR0B<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1380">matekogon</a> — 6 wrz 2015, o 20:12</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[directx91]]></name></author>
<updated>2015-09-06T20:02:21+01:00</updated>
<published>2015-09-06T20:02:21+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139224#p139224</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139224#p139224"/>
<title type="html"><![CDATA[Re: Przerawania a atmega 1284p -&gt; wektor przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139224#p139224"><![CDATA[
Ok to jest jeden problem rozwiązany, teraz dlaczego dioda nie miga tylko swieci na stałe....<br /><br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 5 wrz 2015<br /> *      Author: oem<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;LCD/HD44780.h&quot;<br /><br />uint8_t licznik = 0;<br /><br />int main(void)<br />{<br /><br /><br />DDRD |= ( 1&lt;&lt;PD6 );<br /><br />//***ustawienia Timera***<br />TCCR0A |= ( 1&lt;&lt;WGM01 ); //timmer tryb CTC (pdf strona 105)<br />TCCR0A |= ( 1&lt;&lt;CS02 ) | ( 1&lt;&lt;CS00 ); //preskaler = 1024 (pdf strona 107)<br />OCR0A = 251; // dla mniej wiecej 1s<br />TIMSK0 |= ( 1&lt;&lt;OCIE0A ); //zezwolenie na przewanie compare match<br /><br /><br />sei(); //globalne włącznie zezwolenia na przerwanie<br /><br />while(1) //pętla nieskończona<br />{<br /><br /><br />/*<br />PORTD ^= ( 1&lt;&lt;PD6 );<br />_delay_ms( 20 );<br />*/<br />} //koniec pętli nieskończonej<br />}//koniec maina<br /><br />ISR(TIMER0_COMPA_vect)<br />{<br />licznik++;<br />if (licznik &gt; 63 )<br />{<br /><br />licznik = 0;<br />PORTD ^= ( 1&lt;&lt;PD6 );<br /><br />}<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2069">directx91</a> — 6 wrz 2015, o 20:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ostap]]></name></author>
<updated>2015-09-06T19:55:46+01:00</updated>
<published>2015-09-06T19:55:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139222#p139222</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139222#p139222"/>
<title type="html"><![CDATA[Re: Przerawania a atmega 1284p -&gt; wektor przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139222#p139222"><![CDATA[
Kod<br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">ISR(TIMER0_COMPA_vect)  //tu wyrzuca błąd<br />{<br />    licznik++;<br />    if (licznik &gt; 63 )<br />    {<br />         licznik = 0;<br />         PORTD ^= ( 1&lt;&lt;PD6 );<br />     }<br />}</div><br />Powinien być na zewnątrz głównej funkcji.<br /><br />Pozdrawiam,<br />Grzegorz<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=10083">ostap</a> — 6 wrz 2015, o 19:55</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[anshar]]></name></author>
<updated>2015-09-06T19:54:01+01:00</updated>
<published>2015-09-06T19:54:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139221#p139221</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139221#p139221"/>
<title type="html"><![CDATA[Re: Przerawania a atmega 1284p -&gt; wektor przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139221#p139221"><![CDATA[
Procedura obsługi przerwania musi się znajdować poza ciałem pętli głównej i poza funkcją main.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=7157">anshar</a> — 6 wrz 2015, o 19:54</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[directx91]]></name></author>
<updated>2015-09-06T19:48:40+01:00</updated>
<published>2015-09-06T19:48:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139219#p139219</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139219#p139219"/>
<title type="html"><![CDATA[Przerawania a atmega 1284p -&gt; wektor przerwania]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=12866&amp;p=139219#p139219"><![CDATA[
Cześć.<br /><br />Mam taki mały (chyba) problem z przerwaniem, a dokładniej wektorem przerwania, myślę ze kod wam więcej powie<br /><br />[syntax=c]/*<br /> * main.c<br /> *<br /> *  Created on: 5 wrz 2015<br /> *      Author: oem<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;LCD/HD44780.h&quot;<br /><br />int main(void)<br />{<br />uint8_t licznik = 0;<br /><br />DDRD |= ( 1&lt;&lt;PD6 );<br /><br />//***ustawienia Timera***<br />TCCR0A |= ( 1&lt;&lt;WGM01 ); //timmer tryb CTC (pdf strona 105)<br />TCCR0A |= ( 1&lt;&lt;CS02 ) | ( 1&lt;&lt;CS00 ); //preskaler = 1024 (pdf strona 107)<br />OCR0A = 251; // dla mniej wiecej 1s<br />TIMSK0 |= ( 1&lt;&lt;OCIE0A ); //zezwolenie na przewanie compare match<br /><br /><br />sei(); //globalne włącznie zezwolenia na przerwanie<br /><br />while(1) //pętla nieskończona<br />{<br />ISR(TIMER0_COMPA_vect)  //tu wyrzuca błąd<br />{<br />licznik++;<br />if (licznik &gt; 63 )<br />{<br /><br />licznik = 0;<br />PORTD ^= ( 1&lt;&lt;PD6 );<br /><br />}<br />}<br /><br />/*<br />PORTD ^= ( 1&lt;&lt;PD6 );<br />_delay_ms( 20 );<br />*/<br />} //koniec pętli nieskończonej<br />}//koniec maina[/syntax]<br /><br />wyrzuca błąd <br /><br /><em>In file included from ../main.c:8:0:<br />../main.c: In function 'main':<br />../main.c:30:7: error: static declaration of '__vector_16' follows non-static declaration<br />   ISR(TIMER0_COMPA_vect)<br />       ^<br />../main.c:30:7: note: previous declaration of '__vector_16' was here<br />   ISR(TIMER0_COMPA_vect)<br />       ^<br />make: *** [main.o] Błąd 1</em><br /><br />załorzenie jest takie zeby migać sobie z f = 1Hz, atmega ma kwarc 16Mhz.<br />Mógłby ktoś wyjaśnic dlaczego się ten błąd pojawił i jak powinno być? <br /><br />Dodatkowo proszę o sprawdzenie obliczeń:<br />Jeżeli atmega ma kwarc 16Mhz a preskaler 1024<br />to daje impuls co 64us, co w trybie ctc daje (przy zawężeniu 0 do 251 impulsów) przerwanie co 16,128ms czyli w 1 sekundzie muszą być 62,00397 przerwań czyli daje 63<br /><br />Z góry dzięki za pomoc!<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2069">directx91</a> — 6 wrz 2015, o 19:48</p><hr />
]]></content>
</entry>
</feed>