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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2013-04-09T21:23:30+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=2519&amp;mode</id>
<entry>
<author><name><![CDATA[Juffre]]></name></author>
<updated>2013-04-09T21:23:30+01:00</updated>
<published>2013-04-09T21:23:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33987#p33987</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33987#p33987"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33987#p33987"><![CDATA[
Napisz: <br />DDRC = 0xff;<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=473">Juffre</a> — 9 kwi 2013, o 21:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ravers_19]]></name></author>
<updated>2013-04-09T20:42:51+01:00</updated>
<published>2013-04-09T20:42:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33983#p33983</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33983#p33983"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33983#p33983"><![CDATA[
Dziś już nie mam siły na walkę z dodaniem programatora. Na spokojnie nie idzie:)<br />Oto kod który miga diodą, a powinien zestawem diód...Napisany w AVR Studio 4 a nastepnie zaprogramowany, nie działa. Napisany w Eclipse i zaprogramowany AVR Studio 4 działa, lecz wartość na portach, bez względu jaką nie podam, nie ma znaczenia. Cały czas miga 1 dioda xD Mało tego dodam, że plik HEX napisany w AVR Studio jest dwa razy dłuższy niż plik z Eclipse.<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />    #include &lt;avr/interrupt.h&gt;<br />     <br />    volatile char licznik = 0;                       // zmienna dla licznika programowego<br />     <br />     <br />    ISR(TIMER0_OVF_vect)                        // początek funkcji obsługi przerwania<br />    {<br />         licznik++;                                     // zwiększenie o 1<br />         if(licznik &gt; 125)                             // sprawdzamy, czy nie minęło już 125 przepełnień<br />         {<br />              PORTC ^= 0xFF;                    // zapalenie diody<br />              licznik = 0;                              // wyzerowanie licznika<br />         }<br />         TCNT0 = 131;                               // ustawienie wartości początkowej<br />    }<br />     <br />     <br />    int main()<br />    {<br />         DDRC = 0x3F;<br />         PORTC = 0xFF;<br />     <br />         TCCR0 |= (1&lt;&lt;CS00) | (1&lt;&lt;CS01);    // preskaler 64<br />         TIMSK |= 1&lt;&lt;TOIE0;                       // przerwanie od przepełnienia licznika<br />         TCNT0 = 131;                                // wartość początkowa<br />     <br />         sei();<br />         while(1)<br />         {<br />         }<br />    }[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1131">ravers_19</a> — 9 kwi 2013, o 20:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Juffre]]></name></author>
<updated>2013-04-09T20:16:41+01:00</updated>
<published>2013-04-09T20:16:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33978#p33978</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33978#p33978"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33978#p33978"><![CDATA[
Możliwe że AVR studio coś psuło. Pokaż Twój działający kod. Jak masz ochotę to sprawdź czy mój ostatni kod działa. <br />Co do programatora:<br />Wybierz jakiś projekt:<br />Project=&gt;Properties=&gt;AVR=&gt;AVRDude=&gt;New=&gt;wybierz swój programator, musisz jeszcze z jakiego portu korzysta programator.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=473">Juffre</a> — 9 kwi 2013, o 20:16</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ravers_19]]></name></author>
<updated>2013-04-09T20:09:55+01:00</updated>
<published>2013-04-09T20:09:55+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33977#p33977</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33977#p33977"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33977#p33977"><![CDATA[
Hmm...Coś nie coś mam. Otóż zainstalowałem sobie Eclipse. Problem w tym, że nie potrafię sobie programatora tam dodać AVR PROG MKII. Nie mniej jednak program napisany przeze mnie i skompilowany w Eclipse (stworzony makefile), który kolejno wrzuciłem do atmegi przy pomocy AVR Studio DZIAŁA <img src="https://forum.atnel.pl/images/smilies/icon_neutral.gif" alt=":|" title="Średnio zadowolony" /> czyżby coś AVR Studio szwankował?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1131">ravers_19</a> — 9 kwi 2013, o 20:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Juffre]]></name></author>
<updated>2013-04-09T20:02:56+01:00</updated>
<published>2013-04-09T20:02:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33976#p33976</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33976#p33976"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33976#p33976"><![CDATA[
Napisz obsługę przerwania za pętlą główną.<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />   <br />    volatile uint8_t licznik = 0;<br /><br />    volatile uint8_t flagaprzerwanie=0;       // zmienna dla licznika programowego<br /><br /><br />    int main()<br /><br />    {<br /><br />         DDRC |= (1&lt;&lt;PC0);<br /><br />         PORTC |= (1&lt;&lt;PC0);<br />  <br /><br />         TCCR0 |= (1&lt;&lt;CS00) | (1&lt;&lt;CS01);             // preskaler 64<br /><br />         TIMSK |= (1&lt;&lt;TOIE0);                        // przerwanie od przepełnienia licznika<br /><br />         TCNT0 = 131;                                // wartość początkowa<br /><br />         sei();<br /><br />         while(1)<br /><br />         {<br /><br />                 if(flagaprzerwanie==1)<br /><br />                 {<br /><br />                 PORTC ^= (1&lt;&lt;PC0);<br /><br />                 flagaprzerwanie=0;             <br /><br />                 }<br /><br />         }<br /><br />    }<br /><br />ISR(TIMER0_OVF_vect)                        // początek funkcji obsługi przerwania<br /><br />    {<br /><br />        licznik++;<br /><br />                if(licznik&gt;=125)<br /><br />                {<br /><br />                flagaprzerwanie=1;<br /><br />                licznik=0;<br /><br />                }                                    // ustawienie wartości początkowej<br />                 TCNT0 = 131; <br />     }[/syntax]<br /><br />Spróbuj z tym.<br />A w konsoli po kompilacji nie ma żadnych błędów lub ostrzeżeń?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=473">Juffre</a> — 9 kwi 2013, o 20:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[strzelec]]></name></author>
<updated>2013-04-09T19:55:30+01:00</updated>
<published>2013-04-09T19:55:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33974#p33974</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33974#p33974"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33974#p33974"><![CDATA[
Ale czy zmieniałeś coś w linii?<br />[syntax=c]DDRC |= (1&lt;&lt;PC0);[/syntax]<br />to ważne, spróbuj dokładnie z takim ustawieniem i tylko jedną diodą.<br /><br />Najlepiej skopiuj kod i sprawdź.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=842">strzelec</a> — 9 kwi 2013, o 19:55</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ravers_19]]></name></author>
<updated>2013-04-09T19:48:17+01:00</updated>
<published>2013-04-09T19:48:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33972#p33972</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33972#p33972"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33972#p33972"><![CDATA[
Nie chce pogrążać ale dalej nie działa:) Przejrzałem wszystkie połączenia. Wszystko jest ok. Zmieniłem atmege8 na druga, efekt ten sam. Posiadam AVR Studio 4, MkII - programator, zwykła atmege8a-pu, do tego mam 6 diod P0-P5 połączone przez rezystory ograniczające prąd, zasilanie 5V z programatora (czyt. USB), kondensatory filtrujące na VCC-GND i rezystor 10k na RST. Najprostszy możliwy układ...I co jest nie tak? Nie wiem czy jest to problemem ale kwarc jest wewnętrzny 1MHZ, zmiana przykładowo na 8 nic nie dała.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1131">ravers_19</a> — 9 kwi 2013, o 19:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[strzelec]]></name></author>
<updated>2013-04-09T19:38:41+01:00</updated>
<published>2013-04-09T19:38:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33969#p33969</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33969#p33969"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33969#p33969"><![CDATA[
A sprawdź to<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />         <br />volatile uint8_t licznik = 125;<br />       <br />int main() <br />{<br />    DDRC |= (1&lt;&lt;PC0);<br />    PORTC &amp;= ~(1&lt;&lt;PC0);<br />         <br />    TCCR0 |= (1&lt;&lt;CS00) | (1&lt;&lt;CS01);             // preskaler 64<br />    TIMSK |= (1&lt;&lt;TOIE0);                        // przerwanie od przepełnienia licznika<br />    TCNT0 = 131;                                // wartość początkowa<br />         <br />    sei();<br />    while(1)<br />    {<br />            if(!licznik)<br />            {<br />                PORTC ^= (1&lt;&lt;PC0);<br />                licznik=125;<br />            }<br />    }<br />}<br /><br />ISR(TIMER0_OVF_vect)                        // początek funkcji obsługi przerwania<br />{<br />    licznik--;<br />    TCNT0 = 131;<br />}[/syntax]<br /><br />dioda oczywiście na PC0<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=842">strzelec</a> — 9 kwi 2013, o 19:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ravers_19]]></name></author>
<updated>2013-04-09T19:02:25+01:00</updated>
<published>2013-04-09T19:02:25+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33962#p33962</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33962#p33962"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33962#p33962"><![CDATA[
Być może jest to rozwiązanie, nie mniej jednak cała ta zabawa ma cel naukowy, i dziwi mnie, że wszędzie przykłady są podawane w ten sposób a żaden na mojej płytce nie działa:P<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 4 minutach ]</span></strong><br /><br />Zrobiłem tak jak kazałeś:P Ewidentnie przykład nie chodzi...czyli nie jest obsługiwana funkcja przerwania;/<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />    #include &lt;avr/interrupt.h&gt;<br />     <br />    volatile char licznik = 0;<br />volatile char flagaprzerwanie=0;                       // zmienna dla licznika programowego<br />     <br />     <br />    ISR(TIMER0_OVF_vect)                        // początek funkcji obsługi przerwania<br />    {<br />licznik++;<br />if(licznik&gt;125)<br />{<br />flagaprzerwanie=1;<br />licznik=0;<br />}                             // ustawienie wartości początkowej<br />    }<br />     <br />     <br />    int main()<br />    {<br />         DDRC = 0x3F;<br />         PORTC = 0x00;<br />     <br />         TCCR0 |= (1&lt;&lt;CS00) | (1&lt;&lt;CS01);             // preskaler 64<br />         TIMSK |= (1&lt;&lt;TOIE0);                        // przerwanie od przepełnienia licznika<br />         TCNT0 = 131;                                // wartość początkowa<br />     <br />         sei();<br />         while(1)<br />         {<br /> if(flagaprzerwanie==1)<br /> {<br /> PORTC = 0x01;<br /> flagaprzerwanie=0;<br />                 TCNT0 = 131; <br /> }<br />         }<br />    }[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1131">ravers_19</a> — 9 kwi 2013, o 19:02</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Juffre]]></name></author>
<updated>2013-04-09T18:59:12+01:00</updated>
<published>2013-04-09T18:59:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33961#p33961</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33961#p33961"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33961#p33961"><![CDATA[
Spróbuj w przerwaniu ustawiać jedynie flagę, a resztę wykonywać w pętli głównej.<br /><br />[syntax=c]while(1)<br />{<br />     if(flaga_przerwanie==1)<br />        { <br />              // twój kod<br />           <br />              flaga_przerwanie=0;<br />        }<br />}<br /><br />ISR( // nazwa przerwania)<br />{<br />      if(licznik&gt;125)    flaga_przerwanie=1;<br />}[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=473">Juffre</a> — 9 kwi 2013, o 18:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ravers_19]]></name></author>
<updated>2013-04-09T18:21:11+01:00</updated>
<published>2013-04-09T18:21:11+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33955#p33955</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33955#p33955"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33955#p33955"><![CDATA[
Teraz zauważyłem, że timer jednak działa. Zaobserwowałem ustawiając go odpowiednio i sprawdzając warunek w while czy doliczył do danej liczby. Jeśli tak to zmienia stan diody na przeciwną. Czyli timer działa a nie działa przerwanie od niego (ISR....).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1131">ravers_19</a> — 9 kwi 2013, o 18:21</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ravers_19]]></name></author>
<updated>2013-04-09T14:51:39+01:00</updated>
<published>2013-04-09T14:51:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33932#p33932</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33932#p33932"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33932#p33932"><![CDATA[
[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br /> <br />volatile char licznik = 0;                       // zmienna dla licznika programowego<br /><br /><br />ISR(TIMER0_OVF_vect)                        // początek funkcji obsługi przerwania<br />{<br />     licznik++;                                     // zwiększenie o 1<br />     if(licznik &gt; 125)                             // sprawdzamy, czy nie minęło już 125 przepełnień<br />     {<br />          PORTC ^= PORTC;                    // zapalenie diody<br />          licznik = 0;                              // wyzerowanie licznika<br />     }<br />     TCNT0 = 131;                               // ustawienie wartości początkowej<br />}<br /><br /> <br />int main()<br />{<br />     DDRC = 0x3F;<br />     PORTC = 0x00;<br /><br />     TCCR0 |= (1&lt;&lt;CS00) | (1&lt;&lt;CS01);    // preskaler 64<br />     TIMSK |= 1&lt;&lt;TOIE0;                       // przerwanie od przepełnienia licznika<br />     TCNT0 = 131;                                // wartość początkowa<br /> <br />     sei();<br />     while(1)<br />     {<br />     }<br />}[/syntax]<br /><br /><br />Znalazłem przykład w necie, który lekko zmodyfikowałem pod moje wyprowadzenia. Dalej nie działa miganie diodami ehh. Czekam na jakieś sugestie. Tymczasem sam walczę dalej. Chyba się poddam...przeskanowałem tyle przykładów na moim procku a on ani drgnie. Wykorzystałem nawet obcojęzyczne przykłady do nauki i nic. Ta porażka zniechęca mnie;/ idę odpocząć bo już nie mam siły <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1131">ravers_19</a> — 9 kwi 2013, o 14:51</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ravers_19]]></name></author>
<updated>2013-04-09T08:24:46+01:00</updated>
<published>2013-04-09T08:24:46+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33897#p33897</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33897#p33897"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33897#p33897"><![CDATA[
Jak najbardziej....pisalem to recznie:). Oj opcje delay wykorzystywalem jakis czas temu. Zrobilem juz kilka projektow mniejszych majacych na celu przypomnienie wiadomosci i nauke nowego materialu. Tym razem padlo na timery stad moje pytania. Poki co nic nie wprowadzalem poniewaz jestem w pracy. Jak wroce do domu siadam do dalszej walki:p Tak latwo sie nie poddam! <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> Czesc moich przyzwyczajen z programowania w c, c++ oraz c# niezbyt pasuje tutaj;) W koncu procek nie do konca dziala tak jak aplikacje komputerowe. Do nauki wykorzystuje avr studio 4, procek atmega8a-pu oraz programator avr mkII. Uklad poki co posiada kilka diod buzzer z generatorem, 7seg wyswietlacz(4 pozycje) i kilka mikroswitch'y. Jak ogarne wszystko co mozna na tym ukladzie ogarnac, zabiore sie za inne rzeczy typu wyswietlacz elementy onewire czy komunikacja miedzy dwoma procesorami;) Malymi kroczkami do sukcesu;) W koncu nie od razu rzym zbudowano:p Skonczylem Elektronike ale o prockach nieduzo sie uczylem ze wzgledu na malo zajec. Ale jak juz ich posmakowalem, stwierdzilem ze to moje 2gie ja i tym chce sie zajmowac...poza tym lubie programowac:) Poprawie kod w domu i dam znac co wyszlo:)<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1131">ravers_19</a> — 9 kwi 2013, o 08:24</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jaglarz]]></name></author>
<updated>2013-04-09T07:15:20+01:00</updated>
<published>2013-04-09T07:15:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33895#p33895</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33895#p33895"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33895#p33895"><![CDATA[
<div class="quotetitle">ravers_19 napisał(a):</div><div class="quotecontent"><br />Nie wiem czemu ale syntax je zjada...nie umialem tego poprawic. W include bylo avr/io.h oraz avr/interrupt.h.<br /></div><br /><br />&quot;Zjada&quot; bo był źle wpisany  syntax=C zamiast  syntax=c.<br /><br />Mam wrażenie że wpisywałeś go ręcznie zamiast wybrać z rozwijalnej listy.<br /><br />Syntax poprawiony.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=471">Jaglarz</a> — 9 kwi 2013, o 07:15</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Juffre]]></name></author>
<updated>2013-04-09T06:57:17+01:00</updated>
<published>2013-04-09T06:57:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33892#p33892</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33892#p33892"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33892#p33892"><![CDATA[
Zobacz w moim poprzednim poście jakie zmiany wprowadzić. Czy próbowałeś napisać program choćby z delayami?<br />np<br />[syntax=c]// pliki nagłówkowe<br />#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />int main(void)<br />{<br />// konfiguracja portów I/O<br />DDRC=0xff;         // cały port c jako wyjście<br />PORTC=0xff;       // stan wysoki na pinach diody nie świecą<br /><br />// pętla nieskończona<br />while(1)<br />{<br />// 'brzydko' napisane ale na początek myślę że wystarczy<br />PORTC =0x00;         // włączenie diod<br />_delay_ms(1500);  <br />PORTC =0xff;          // wyłączenie diod<br />_delay_ms(1500);<br />}<br />// diody podłączone do portu katodami, włączamy więc je 0 na pinie procka[/syntax]<br /><br />Jakiego używasz procesora, i jaki masz programator?<br /><br />Żeby syntax działał dobrze: [syntax=c]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=473">Juffre</a> — 9 kwi 2013, o 06:57</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ravers_19]]></name></author>
<updated>2013-04-09T05:48:14+01:00</updated>
<published>2013-04-09T05:48:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33891#p33891</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33891#p33891"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33891#p33891"><![CDATA[
Nie wiem czemu ale syntax je zjada...nie umialem tego poprawic. W include bylo avr/io.h oraz avr/interrupt.h. Co do przejrzystosci kodu...pisalem tak jak mowicie ale tez nie dzialalo. To co wkleilem to ostateczna wersja tego co naskrobalem. Jesli chodzi o definiowanie procesora, to jesli tego nie zrobie to program Avr Studio 4 wywala &quot;warning&quot;. Gdzies w pierwszym z tutoriali na youtube ukazanych przez Pana Mirka znalazlem taki zapis. Poki co jestem absolwentem na stazu wiec kieszen postudencka nie pozwala na kto wie jakie ksiazki:p Korzystam z dostepnych tutoriali ale przyznam ze malo tego. W dodatku sa przestarzale...Sorki za brak polskich znakow ale ciekawosc mnie przerasta a w.telefonie brak polskich znakow:p Dzis siade do dalszej walki po pracy...odwiedze ten post jeszcze:p to jest nieuniknione<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1131">ravers_19</a> — 9 kwi 2013, o 05:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Juffre]]></name></author>
<updated>2013-04-08T22:41:30+01:00</updated>
<published>2013-04-08T22:41:30+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33881#p33881</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33881#p33881"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33881#p33881"><![CDATA[
Brakuje includów. Pętlę nieskończoną zapisz tak: while(1);<br />return w main nie potrzebny.<br />Nie definiujemy częstotliwości taktowania w kodzie. Robimy to we właściwościach projektu. <br />Zmienna licznik z atrybutem volatile: volatile uint8_t licznik<br />Jesli chcesz zmienić stan na porcie to nie pisz POTRC=~PORTC ale: PORTC ^=PORTC<br />Dodatkowo strasznie 'brzydko' <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> ustawiasz rejestry odpowiedzialne za timer. Pan Mirek w bluebooku świetnie opisał jak robić to czytelnie np: TCCR0 |=(1&lt;&lt;COM01) (nazwy pisane z głowy, mogłem sie pomylić). <br />Pisz komentarze bo trudno czasami Twój kod zrozumieć.<br />Do wrzucania kodu używamy syntax.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=473">Juffre</a> — 8 kwi 2013, o 22:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Alltronik]]></name></author>
<updated>2013-04-08T22:35:54+01:00</updated>
<published>2013-04-08T22:35:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33880#p33880</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33880#p33880"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33880#p33880"><![CDATA[
Ten kod nie ma prawa działać , on Ci się nawet nie skompiluje tak jak pisał Mirek zobacz również ten link <!-- m --><a class="postlink" href="http://mirekk36.blogspot.com/2012/10/obsuga-klawiszy-drgania-stykow-cd2.html" >http://mirekk36.blogspot.com/2012/10/ob ... w-cd2.html</a><!-- m --><br /><br />Pozdrawiam<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=985">Alltronik</a> — 8 kwi 2013, o 22:35</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[ravers_19]]></name></author>
<updated>2013-04-08T22:08:01+01:00</updated>
<published>2013-04-08T22:08:01+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33879#p33879</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33879#p33879"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=33879#p33879"><![CDATA[
Witam,<br />Może podłączę się do tematu. Sam zaczynam przygodę z mikrokontrolerami. Obecnie jestem po przestudiowaniu podstaw. Umiem konfigurować fusebity, porty itp. Zabrałem się obecnie za liczniki. Mam kilka programów, które dotyczą liczników z czasów szkoły. Na tamtejszym procesorze działały. W przypadku mojego układu zmontowanego na płytce stykowej nie działają. Poniżej zamieszczam przykład kodu, który według mnie powinien migać diodą, a tego nie robi. Program ma za zadanie odliczyć sekundę...<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;avr/interrupt.h&gt;<br />#define F_CPU 1000000l<br /><br />char licznik = 0;<br /><br />ISR(TIMER0_OVF_vect)<br />{<br />licznik++;<br />if(licznik&gt;125)<br />{<br />  PORTC =~PORTC;<br />licznik=0;<br />  }<br /> TCNT0 = 0x83;<br />} <br /><br />int main(void)<br />{<br />DDRC  = 0xFF;<br />PORTC = 0x00;<br /><br />TCCR0 = 0x03;<br />TCNT0 = 0x83;<br />TIMSK = 0x01;<br /><br />sei();<br />while(1)<br />{<br />}<br />    return(0);<br />}[/syntax]<br /><br />Co robię źle? Przetrzepałem całego datasheet atmegi8A (dział timer0). Nic więcej mi nie przychodzi do głowy...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1131">ravers_19</a> — 8 kwi 2013, o 22:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matt90]]></name></author>
<updated>2013-03-09T15:42:14+01:00</updated>
<published>2013-03-09T15:42:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30181#p30181</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30181#p30181"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30181#p30181"><![CDATA[
Ok, nie wiedziałem, że to aż takie przewinienie. Chciałbym wiedzieć w jaki sposób uruchomić timer0, z później skonfigurować przerwania, czy w pętli while() musi być coś wpisane czy to ma być pusta pętla?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=984">matt90</a> — 9 mar 2013, o 15:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Jaglarz]]></name></author>
<updated>2013-03-09T13:41:15+01:00</updated>
<published>2013-03-09T13:41:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30162#p30162</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30162#p30162"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30162#p30162"><![CDATA[
<div class="quotetitle">matt90 napisał(a):</div><div class="quotecontent"><br />No tak ale książka tania nie jest, i nie dostanę jej dziś ani jutro a muszę mieć ten program na wtorek... Czy mógłby ktoś wysłać np. skana z przerwaniami z tej książki lub jakoś w dostępny sposób to opisać?<br /></div><br /><br />Skanowanie książek to naruszanie praw autorskich twórców. Więc pisanie tego akurat na firmowym forum jest co najmniej nie na miejscu.<br /><br />Masz jeszcze kilka dni, pytaj a dostaniesz odpowiedzi. <br /><br />Skanów nie dostaniesz, a jeśli ktoś by się odważył może się spotkać z konsekwencjami.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=471">Jaglarz</a> — 9 mar 2013, o 13:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2013-03-09T13:31:51+01:00</updated>
<published>2013-03-09T13:31:51+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30161#p30161</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30161#p30161"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30161#p30161"><![CDATA[
<div class="quotetitle">matt90 napisał(a):</div><div class="quotecontent"><br />No tak ale książka tania nie jest, i nie dostanę jej dziś ani jutro a muszę mieć ten program na wtorek... Czy mógłby ktoś wysłać np. skana z przerwaniami z tej książki lub jakoś w dostępny sposób to opisać?<br /></div><br /><br />wysłać skana powiadasz ? ..... no no no, fajne podejście ..... szok  <img src="https://forum.atnel.pl/images/smilies/icon_eek.gif" alt=":shock:" title="Zaszokowany" /> <br /><br />czy nie pomyliły ci się przypadkiem strony internetowe ? jeśli chcesz dołączyć do piratów to jak najszybciej opuść pan tę stronę i odwiedź serwisy gdzie takie pirackie wersje rozpowszechniają - masakra .... no nie wierzę<br /><br />a może to nie dzieje się na prawdę - żeby ktoś na bezczelnego - wręcz do autora się zwracał czy może mu powiedzieć skąd ściągnąć piracką wersję książki.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 9 mar 2013, o 13:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matt90]]></name></author>
<updated>2013-03-09T13:06:13+01:00</updated>
<published>2013-03-09T13:06:13+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30156#p30156</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30156#p30156"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30156#p30156"><![CDATA[
No tak ale książka tania nie jest, i nie dostanę jej dziś ani jutro a muszę mieć ten program na wtorek... Czy mógłby ktoś wysłać np. skana z przerwaniami z tej książki lub jakoś w dostępny sposób to opisać?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=984">matt90</a> — 9 mar 2013, o 13:06</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kiclaw]]></name></author>
<updated>2013-03-09T00:48:54+01:00</updated>
<published>2013-03-09T00:48:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30112#p30112</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30112#p30112"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30112#p30112"><![CDATA[
Ale co konkretnie chcesz wiedzieć? <br /><br />Co do SIGNAL() a ISR(), to chodzi o to że SIGNAL() też Ci zadziała, ale jest to już niezgodna z normami forma, nawet w datasheet AVR'ów od Atmela o tym piszą. Teraz używa się ISR().<br /><br />Jeśli to nie jest dla Ciebie proste, to kup niebieską książkę, na prawdę. Nie żebym tutaj usilnie mówił kup,kup kup bo i tak nie mam z tego nic <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /> Ale jest to tam na prawdę fajnie opisane, i ogarniesz sprawę bez żadnego problemu.<br /><br />Ode mnie tyle żeby nie używać _delay_ms(); w przerwaniu (chyba że CELOWO i UMYŚLNIE + przeanalizowanie działania), tu się można czasami naciąć bo np w przerwaniu dasz obsługę LCD, wrzucasz funkcję w której na pierwszy rzut oka nie ma delay-ów, ale jak wejdziesz w nią to nagle zonk bo kilka delayów a Ty się zastanawiasz czemu program Ci się wiesza <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=600">kiclaw</a> — 9 mar 2013, o 00:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[matt90]]></name></author>
<updated>2013-03-09T00:01:52+01:00</updated>
<published>2013-03-09T00:01:52+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30111#p30111</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30111#p30111"/>
<title type="html"><![CDATA[Re: Przerwania- Timer0]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=2519&amp;p=30111#p30111"><![CDATA[
dziękuję za linka, zaraz biorę się za czytanie. A czy coś więcej na temat przerwań powiecie mi? Bo na różnych stronach są albo makra SIGNAL() albo jakieś bezsensowne i nie zrozumiałe informacje, a to nie jest wcale takie proste... przynajmniej dla mnie<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=984">matt90</a> — 9 mar 2013, o 00:01</p><hr />
]]></content>
</entry>
</feed>