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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-05-16T13:59:05+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=8&amp;t=7035&amp;mode</id>
<entry>
<author><name><![CDATA[Kacper Paczos]]></name></author>
<updated>2014-05-16T13:59:05+01:00</updated>
<published>2014-05-16T13:59:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81306#p81306</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81306#p81306"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81306#p81306"><![CDATA[
Próbuje wpisywać do rejestru porównania różne wartości ale one praktycznie nic nie zmieniają w działaniu wyświetlacza.<br />Nie działa ani szybciej ani wolniej - nie wiem dlaczego. Nikt z Was też nie wie?<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br /><br />#define KATA (1&lt;&lt;0)<br />#define KATB (1&lt;&lt;1)<br />#define KATC (1&lt;&lt;2)<br />#define KATD (1&lt;&lt;3)<br />#define KATE (1&lt;&lt;4)<br />#define KATF (1&lt;&lt;5)<br />#define KATG (1&lt;&lt;6)<br />#define KATDP (1&lt;&lt;7)<br /><br />uint8_t characters&#91;10&#93; = {<br />    ~(KATA|KATB|KATC|KATD|KATF|KATG),<br />    ~(KATB|KATC),<br /><br />};<br /><br />ISR(TIMER2_COMPB_vect)<br />{<br />    static uint8_t NW = 1;<br /><br />    PORTA = ~NW;<br /><br />    if(NW == 1)PORTC = characters&#91;0&#93;;<br />    if(NW == 2)PORTC = characters&#91;1&#93;;<br />    if(NW == 4)PORTC = characters&#91;1&#93;;<br />    if(NW == 8)PORTC = characters&#91;0&#93;;<br /><br />    NW &lt;&lt;= 1;<br />    if(NW &gt; 8 )NW = 1;<br />}<br />int main(void)<br />{<br />    DDRC = 0xFF; // wszystkie porty C jako wyjscia<br />    //PORTC = 0x0;<br />    PORTC = 0xFF; // &quot;zablokowac&quot; piny C by nie wysylaly sygnalu<br /><br />    DDRA = 0xFF; // wszystkie porty A jako wyjscia<br />    PORTA = 0xFF; // zablokowac porty A - by nie wysyłały syganłu<br /><br />    sei(); // pozwolenie na przerwania<br /><br />    TCCR2B |= (1&lt;&lt;WGM21);  // tryb CTC<br />    TCCR2B |= (1&lt;&lt;CS22)|(1&lt;&lt;CS21)|(1&lt;&lt;CS20); // preskaler 1024<br />    OCR2B = 18; // - rej porownania - nic sie nie zmienia w dzailaniu<br />    TIMSK2 |= (1&lt;&lt;OCIE2B); //<br /><br />    while(1)<br />    {<br /><br />    }<br /><br />    return 0;<br />}[/syntax]<br />EDIT:<br />Jakby ktoś nie wiedział o co chodzi to chodzi o to iż wyświetlacz pulsuje/mruga.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3789">Kacper Paczos</a> — 16 maja 2014, o 13:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kacper Paczos]]></name></author>
<updated>2014-05-14T16:54:52+01:00</updated>
<published>2014-05-14T16:54:52+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81120#p81120</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81120#p81120"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81120#p81120"><![CDATA[
CDKIV? tak wyłączyłem.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3789">Kacper Paczos</a> — 14 maja 2014, o 16:54</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[acid3]]></name></author>
<updated>2014-05-14T16:36:38+01:00</updated>
<published>2014-05-14T16:36:38+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81117#p81117</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81117#p81117"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81117#p81117"><![CDATA[
A czy kolega wyłączył podział przez 8 we fusach ?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=944">acid3</a> — 14 maja 2014, o 16:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kacper Paczos]]></name></author>
<updated>2014-05-14T16:09:02+01:00</updated>
<published>2014-05-14T16:09:02+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81108#p81108</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81108#p81108"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81108#p81108"><![CDATA[
Faktycznie, miałem włączony JTAG.<br />Jednak dalej jest problem z migającym wyświetlaczem LED.<br />Zegar działa za wolno jednak gdy zmieniam rejestr OCR2B mniejszą tzn by zegar taktował szybciej to nie ma widocznej poprawy.<br />Ciągle widać takie mruganie.<br />To mój kod:<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br /><br />#define KATA (1&lt;&lt;0)<br />#define KATB (1&lt;&lt;1)<br />#define KATC (1&lt;&lt;2)<br />#define KATD (1&lt;&lt;3)<br />#define KATE (1&lt;&lt;4)<br />#define KATF (1&lt;&lt;5)<br />#define KATG (1&lt;&lt;6)<br />#define KATDP (1&lt;&lt;7)<br /><br />uint8_t characters&#91;10&#93; = {<br />    ~(KATA|KATB|KATC|KATD|KATF|KATG),<br />    ~(KATB|KATC),<br /><br />};<br /><br />ISR(TIMER2_COMPB_vect)<br />{<br />    static uint8_t NW = 1;<br /><br />    PORTA = ~NW;<br /><br />    if(NW == 1)PORTC = characters&#91;0&#93;;<br />    if(NW == 2)PORTC = characters&#91;1&#93;;<br />    if(NW == 4)PORTC = characters&#91;1&#93;;<br />    if(NW == 8)PORTC = characters&#91;0&#93;;<br /><br />    NW &lt;&lt;= 1;<br />    if(NW &gt; 8 )NW = 1;<br />}<br />int main(void)<br />{<br />    DDRC = 0xFF; // wszystkie porty C jako wyjscia<br />    PORTC = 0xFF; // &quot;zablokowac&quot; piny C by nie wysylaly sygnalu<br /><br />    DDRA = 0xFF; // wszystkie porty A jako wyjscia<br />    PORTA = 0xFF; // zablokowac porty A - by nie wysyłały syganłu<br /><br />    sei(); // pozwolenie na przerwania<br /><br />    TCCR2B |= (1&lt;&lt;WGM21);  // tryb CTC<br />    TCCR2B |= (1&lt;&lt;CS22)|(1&lt;&lt;CS21)|(1&lt;&lt;CS20); // preskaler 1024<br />    OCR2B = 38; // podzia³ przez 39 (0-38) - rej porownania<br />    TIMSK2 |= (1&lt;&lt;OCIE2B); //<br /><br />    while(1)<br />    {<br /><br />    }<br /><br />    return 0;<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3789">Kacper Paczos</a> — 14 maja 2014, o 16:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Piotrek_P]]></name></author>
<updated>2014-05-13T20:08:23+01:00</updated>
<published>2014-05-13T20:08:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81048#p81048</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81048#p81048"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81048#p81048"><![CDATA[
Prawdopodobnie masz włączony JTAG w fusebitach.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=290">Piotrek_P</a> — 13 maja 2014, o 20:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kacper Paczos]]></name></author>
<updated>2014-05-13T19:46:49+01:00</updated>
<published>2014-05-13T19:46:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81043#p81043</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81043#p81043"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=81043#p81043"><![CDATA[
Mam teraz nowy problem. Co więcej jest on dziwny.<br />Wyświetlacz działał ale wyświetlał nie to co trzeba.<br />Podłączyłem teraz zwykłe diody LED.<br />Podłączyłem je tak - pierwszą do PC0, drugą od lewej do PC1 itd. (płytka testowa atnela)<br />Ustawiłem porty PC na wyjście (DDRC = 0xFF) i aby wszystkie wysyłały sygnał (PORTC = 0x0).<br />Ale tylko diody pierwsza, druga, siódma i ósma od lewej się zaświeciły.<br />Nie działają piny PC2, PC3, PC4, PC5.<br />Czy przestawiając fuse bity mogłem coś namieszać tak że porty nie działają?<br />Kod wygląda tak:<br />[syntax=c]int main(void)<br />{<br />    DDRC = 0xFF; // wszystkie porty C jako wyjscia<br />    PORTC = 0x0; // zapal wszystkie diody<br /><br />    while(1)<br />    {<br /><br />    }<br /><br />    return 0;<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3789">Kacper Paczos</a> — 13 maja 2014, o 19:46</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[acid3]]></name></author>
<updated>2014-05-12T20:46:20+01:00</updated>
<published>2014-05-12T20:46:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80936#p80936</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80936#p80936"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80936#p80936"><![CDATA[
a to niech kolega ustawi po pierwsze SLOW SCK w mkavrcalcu na jakąś niską wartość, następnie zmieni na 8Mhz, a nastepnie wyłączy CKDIV .... który to dzieli częstotliwość przez 8 .... ( przy ustawionych 8Mhz rzeczywiście mamy 1 ... )<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=944">acid3</a> — 12 maja 2014, o 20:46</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kacper Paczos]]></name></author>
<updated>2014-05-12T20:52:22+01:00</updated>
<published>2014-05-12T20:39:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80932#p80932</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80932#p80932"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80932#p80932"><![CDATA[
W programie mk AVR Calculator w zakładce fusy właściwości w tej rozwijanej liście pisze<br />&quot;Frequency 8.0-  MHz - więc chyba 8Mhz.<br /><br />Tylko teraz mam nowy problem.<br />Jak przeglądałem sobie zakładki to wszedłem w fusy uproszczone i zmieniłem opcje w otoczce &quot;zewnętrzny kwarc&quot; z &gt;8Mhz<br />na opcje 8MHz w otoczce &quot;wewnętrzny oscylator&quot;. Zapisałem fuse bity by zobaczyć co się stanie.<br /><a href="http://forum.atnel.pl/_obrazki/o/3789/de63db379d3224bc78206c4ee19c429f.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/3789/de63db379d3224bc78206c4ee19c429f.png" alt="Obrazek" /></a><br />Wyświetlacz LED przełączał trochę wolniej. Ale cofnąłem te opcje i gdy kazałem zapisać to program przestał działać i się zamknął.<br />Problem w tym, że teraz nie mogę zapisać nic do mikrokontrolera bo jest błąd weryfikacji.<br /><a href="http://forum.atnel.pl/_obrazki/o/3789/32782908546db879289c59cdf42ec201.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/3789/32782908546db879289c59cdf42ec201.png" alt="Obrazek" /></a><br />Co zrobić by móc zapisywać do mikrokontrolera? AVRDUDE jeszcze raz zainstalować czy coś takiego?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3789">Kacper Paczos</a> — 12 maja 2014, o 20:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[acid3]]></name></author>
<updated>2014-05-12T19:07:49+01:00</updated>
<published>2014-05-12T19:07:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80925#p80925</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80925#p80925"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80925#p80925"><![CDATA[
Jakim zegarem taktujesz swój uC ....<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=944">acid3</a> — 12 maja 2014, o 19:07</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kacper Paczos]]></name></author>
<updated>2014-05-12T19:18:45+01:00</updated>
<published>2014-05-12T19:06:40+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80924#p80924</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80924#p80924"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80924#p80924"><![CDATA[
Chciałbym uzyskać tak jak w książce około 200Hz ale o co chodzi z tym &quot;zasilaniem&quot;?<br /><br />EDIT:<br />Czy z tym &quot;zasilaniem&quot; chodzi z jaką prędkością taktuje mikrokontroler?<br />Jeśli tak to nie nie wiem :/<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3789">Kacper Paczos</a> — 12 maja 2014, o 19:06</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[acid3]]></name></author>
<updated>2014-05-12T18:03:07+01:00</updated>
<published>2014-05-12T18:03:07+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80917#p80917</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80917#p80917"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80917#p80917"><![CDATA[
A teraz wyraźnie brakuje informacji jakim zegarem jest &quot;zasilany&quot; mikrokontroler oraz jaką częstotliwość kolega chciałby uzyskać .<br /><br /><br /><br /><br />PS.<br />Czy to takie trudne żeby nauczyć się prawidłowo zadawać pytania ??<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=944">acid3</a> — 12 maja 2014, o 18:03</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kacper Paczos]]></name></author>
<updated>2014-05-12T17:33:47+01:00</updated>
<published>2014-05-12T17:33:47+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80915#p80915</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80915#p80915"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80915#p80915"><![CDATA[
Pozamieniałem i teraz działa ale nie wyświetla dobrze tzn widać wyraźne mruganie diod LED.<br />Oto kod:<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br /><br />#define KATA (1&lt;&lt;0)<br />#define KATB (1&lt;&lt;1)<br />#define KATC (1&lt;&lt;2)<br />#define KATD (1&lt;&lt;3)<br />#define KATE (1&lt;&lt;4)<br />#define KATF (1&lt;&lt;5)<br />#define KATG (1&lt;&lt;6)<br />#define KATDP (1&lt;&lt;7)<br /><br />uint8_t characters&#91;10&#93; = {<br />    ~(KATA|KATB|KATC|KATD|KATF|KATG),<br />    ~(KATB|KATC),<br /><br />};<br /><br />ISR(TIMER2_COMPB_vect)<br />{<br />    static uint8_t NW = 1;<br /><br />    PORTA = ~NW;<br /><br />    if(NW == 1)PORTC = characters&#91;0&#93;;<br />    if(NW == 2)PORTC = characters&#91;1&#93;;<br />    if(NW == 4)PORTC = characters&#91;1&#93;;<br />    if(NW == 8)PORTC = characters&#91;0&#93;;<br /><br />    NW &lt;&lt;= 1;<br />    if(NW &gt; 8 )NW = 1;<br />}<br />int main(void)<br />{<br />    DDRC = 0xFF; // wszystkie porty C jako wyjscia<br />    PORTC = 0xFF; // &quot;zablokowac&quot; piny C by nie wysylaly sygnalu<br /><br />    DDRA = 0xFF; // wszystkie porty A jako wyjscia<br />    PORTA = 0xFF; // zablokowac porty A - by nie wysyłały syganłu<br /><br />    sei(); // pozwolenie na przerwania<br /><br />    TCCR2B |= (1&lt;&lt;WGM21);  // tryb CTC<br />    TCCR2B |= (1&lt;&lt;CS22)|(1&lt;&lt;CS21)|(1&lt;&lt;CS20); // preskaler 1024<br />    OCR2B = 38; // podzia³ przez 39 (0-38) - rej porownania<br />    TIMSK2 |= (1&lt;&lt;OCIE2B); //<br /><br />    while(1)<br />    {<br />    }<br /><br />    return 0;<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3789">Kacper Paczos</a> — 12 maja 2014, o 17:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[acid3]]></name></author>
<updated>2014-05-11T12:46:51+01:00</updated>
<published>2014-05-11T12:46:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80804#p80804</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80804#p80804"/>
<title type="html"><![CDATA[Re: Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80804#p80804"><![CDATA[
<div class="quotetitle">Kacper Paczos napisał(a):</div><div class="quotecontent"><br />TCCR2A |= (1&lt;&lt;CS02)|(1&lt;&lt;CS01)|(1&lt;&lt;CS00);<br /></div><br />to jest zapisane w rejestrze TCCR2B<br /><br />Poza tym należy zwraczać uwagę że dla Timer2 wartości CS są z 2 na początku ... znaczy CS20 CS21 CS22 oraz WGM i reszty dotyczącej danego timera.<br /><br /><br />Poza tym powinien kolega pisać jakie wartości timera chce osiągnąć, mam na mysli np preskaler - 1024, tryb - ctc itp .<br />Zawsze najlepiej takie rzeczy w komentarzach pisać.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=944">acid3</a> — 11 maja 2014, o 12:46</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Kacper Paczos]]></name></author>
<updated>2014-05-11T12:20:43+01:00</updated>
<published>2014-05-11T12:20:43+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80802#p80802</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80802#p80802"/>
<title type="html"><![CDATA[Wywołanie i obsługa przerwań zegara - ATmega644P]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=7035&amp;p=80802#p80802"><![CDATA[
Przeczytałem rozdział o multipleksowaniu, przepisałem kod &quot;na żywca&quot; by sprawdzić jak działa.<br />Kod w książce był pisany na ATmega32 a Ja mam ATmega644P - i w tym problem.<br />Kompilator oznajmił, że nie zna rejestrów. To zacząłem zamieniać nazwy zgodnie z tym PDF'em:<br /><!-- m --><a class="postlink" href="http://www.atmel.com/Images/doc2593.pdf" >http://www.atmel.com/Images/doc2593.pdf</a><!-- m --><br />Ale coś mam źle bo nic się nawet nie wyświetla na wyświetlaczu LED.<br />Przejrzałem to jeszcze kilka razy ale nie wiem gdzie mam błąd.<br />Dodam, że było to moje pierwsze spotkanie z takim PDF'em.<br />Oto cały kod:<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br /><br />#define KATA (1&lt;&lt;0)<br />#define KATB (1&lt;&lt;1)<br />#define KATC (1&lt;&lt;2)<br />#define KATD (1&lt;&lt;3)<br />#define KATE (1&lt;&lt;4)<br />#define KATF (1&lt;&lt;5)<br />#define KATG (1&lt;&lt;6)<br />#define KATDP (1&lt;&lt;7)<br /><br />uint8_t characters&#91;10&#93; = {<br />    ~(KATA|KATB|KATC|KATD|KATF),<br />    ~(KATB|KATC),<br /><br />};<br /><br />ISR(TIMER2_COMPA_vect)<br />{<br />    static uint8_t NW = 1;<br /><br />    PORTA = ~NW;<br /><br />    if(NW == 1)PORTC = characters&#91;0&#93;;<br />    if(NW == 2)PORTC = characters&#91;1&#93;;<br />    if(NW == 4);<br />    if(NW == 8);<br /><br />    NW &lt;&lt;= 1;<br />    if(NW &gt; 8 )NW = 1;<br />}<br />int main(void)<br />{<br />    DDRC = 0xFF;<br />    PORTC = 0xFF;<br /><br />    DDRA = 0xF;<br />    PORTA = 0xFF;<br /><br />    sei();<br /><br />    TCCR2A |= (1&lt;&lt;WGM01);  // zle porty - zajrzec do noty pdf<br />    TCCR2A |= (1&lt;&lt;CS02)|(1&lt;&lt;CS01)|(1&lt;&lt;CS00);<br />    OCR2A = 38;<br />    TIMSK2 |= (1&lt;&lt;OCIE2A);<br /><br />    while(1)<br />    {<br /><br />    }<br /><br />    return 0;<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3789">Kacper Paczos</a> — 11 maja 2014, o 12:20</p><hr />
]]></content>
</entry>
</feed>