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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-12-07T22:30:09+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=58&amp;t=13796&amp;mode</id>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2015-12-07T22:23:50+01:00</updated>
<published>2015-12-07T22:23:50+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147367#p147367</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147367#p147367"/>
<title type="html"><![CDATA[Re: Problem z Timerem w Atmega88]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147367#p147367"><![CDATA[
<div class="quotetitle">kicajek napisał(a):</div><div class="quotecontent"><br />W Twoim przypadku tak WGMxx jak i CS'y są w TCCR0B i nic nie zmienisz.<br /></div><br />WGM01 i WGM00 są w TCCR0A, a WGM02 jest w TCCR0B.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 7 gru 2015, o 22:23</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kicajek]]></name></author>
<updated>2015-12-07T22:30:09+01:00</updated>
<published>2015-12-07T22:18:53+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147365#p147365</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147365#p147365"/>
<title type="html"><![CDATA[Re: Problem z Timerem w Atmega88]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147365#p147365"><![CDATA[
<div class="quotetitle">Karbos napisał(a):</div><div class="quotecontent"><br />... jak należy ustawić preskal dla TCCR0A<br /></div><br />To nie jest tak; tryb i preskaler wpisujemy do rejestrów które mamy podane w nocie kat.<br />W Twoim przypadku tak WGMxx jak i CS'y są w TCCR0B i nic nie zmienisz.  <br /><a href="https://obrazkiforum.atnel.pl/826/d7d41aee6cfe9975d20c94f0aebb19eb.jpg"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/826/d7d41aee6cfe9975d20c94f0aebb19eb.jpg" alt="Obrazek" /></a><br /><a href="https://obrazkiforum.atnel.pl/826/ad87753aebe29feaec5649ab75db8b49.jpg"  class="postlink"><img src="https://obrazkiforum.atnel.pl/thumb/826/ad87753aebe29feaec5649ab75db8b49.jpg" alt="Obrazek" /></a><br /><br />Pozdr.<br /><br />edit do uwagi kol.<strong>Krauser</strong> - oczywiście; niepotrzebnie wpisałem WGMxx, pisząc &quot;w Twoim przypadku&quot; miałem na myśli tylko WGM02.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=826">kicajek</a> — 7 gru 2015, o 22:18</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2015-12-07T22:11:35+01:00</updated>
<published>2015-12-07T22:11:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147362#p147362</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147362#p147362"/>
<title type="html"><![CDATA[Re: Problem z Timerem w Atmega88]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147362#p147362"><![CDATA[
<div class="quotetitle">Karbos napisał(a):</div><div class="quotecontent"><br />Udało mi się zrobić to za pomocą jak to ujmę &quot;drugiego&quot; timera<br /></div><br /> <img src="https://forum.atnel.pl/images/smilies/icon_eek.gif" alt=":shock:" title="Zaszokowany" /> Super użyłeś zarezerwowanego trybu. Ciekawe czy Atmel o tym wie, że to działa.<br />TCCR0A i TCCR0B musisz traktować całościowo, bo licznik timera jest jeden TCNT0, a 2 są rejestry z wartością do porównania A i B i są 2 przerwania A i B. Dlatego bity preskalera są tylko jedne.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 7 gru 2015, o 22:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Karbos]]></name></author>
<updated>2015-12-07T21:49:05+01:00</updated>
<published>2015-12-07T21:49:05+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147354#p147354</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147354#p147354"/>
<title type="html"><![CDATA[Re: Problem z Timerem w Atmega88]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147354#p147354"><![CDATA[
Masz rację kicajek, jednak ta dioda ma być tylko bodźcem który da mi znać, że dobrze skonfigurowanego timera.<br />Masz jeszcze pytanie odnośnie tego jak należy ustawić preskal  dla TCCR0A, bo teraz sam widzę że użyłem złych bitów...<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 4 minutach ]</span></strong><br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include  &lt;avr/interrupt.h&gt;<br /><br />#define LED1 (1&lt;&lt;PD0)<br /><br />void timer0(void) {<br />//ustawienia timera<br />TCCR0B |= (1&lt;&lt;WGM02); //tryb CTC<br />TCCR0B |= (1&lt;&lt;CS02)|(1&lt;&lt;CS00); //preksel = 1024<br />OCR0B = 255;<br />TIMSK0 |= (1&lt;&lt;OCIE0B);<br />}<br /><br />int main(void) {<br />DDRD |= LED1;<br /><br />timer0();<br /><br />sei();<br />while(1) {<br />}<br />}<br /><br />ISR (TIMER0_COMPB_vect) {<br />PORTD ^= LED1;<br /><br />}[/syntax]<br /><br />Udało mi się zrobić to za pomocą jak to ujmę &quot;drugiego&quot; timera <img src="https://forum.atnel.pl/images/smilies/icon_e_biggrin.gif" alt=":D" title="Bardzo szczęśliwy" />. Jednak wciąż zastanawiam się jak miałbym to zrobić na TCCR0A?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=12083">Karbos</a> — 7 gru 2015, o 21:49</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kicajek]]></name></author>
<updated>2015-12-07T21:32:42+01:00</updated>
<published>2015-12-07T21:32:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147352#p147352</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147352#p147352"/>
<title type="html"><![CDATA[Re: Problem z Timerem w Atmega88]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147352#p147352"><![CDATA[
Witam<br />Po pierwsze zapis <strong>TIMSK0 = OCIE0A;</strong><br />powinien być:<br />[syntax=c]TIMSK0 |= (1&lt;&lt;OCIE0A);[/syntax]<br /><div class="quotetitle">Karbos napisał(a):</div><div class="quotecontent"><br />zaświecać i gasić diodę, około 30 razy na sekundę<br /></div><br />...ale to już bardziej zalatuje PWM'em niż mruganiem - zauważysz tylko przyciemnienie LED'a<br /><br />Pozdr.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=826">kicajek</a> — 7 gru 2015, o 21:32</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2015-12-07T21:28:59+01:00</updated>
<published>2015-12-07T21:28:59+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147351#p147351</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147351#p147351"/>
<title type="html"><![CDATA[Re: Problem z Timerem w Atmega88]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147351#p147351"><![CDATA[
CS02 i CS00 są w rejestrze TCCR0<strong>B</strong><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 7 gru 2015, o 21:28</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Karbos]]></name></author>
<updated>2015-12-07T21:17:39+01:00</updated>
<published>2015-12-07T21:17:39+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147349#p147349</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147349#p147349"/>
<title type="html"><![CDATA[Problem z Timerem w Atmega88]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13796&amp;p=147349#p147349"><![CDATA[
Cześć,<br />Jestem totalnie początkującym i obecnie czytam niebieską książkę p.Kardasia <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> . Jednak dział związany z przerwaniami zmusił mnie do zarejestrowania  i zadania pytania na tym forum. <br /><br />Założenie mojego programu było proste, miał on zaświecać i gasić diodę, około 30 razy na sekundę. <br /><br />Program:<br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br />#include  &lt;avr/interrupt.h&gt;<br /><br />#define LED1 (1&lt;&lt;PD0)<br /><br />void timer0(void) {<br />//ustawienia timera<br />TCCR0A |= (1&lt;&lt;WGM01); //tryb CTC<br />TCCR0A |= (1&lt;&lt;CS02)|(1&lt;&lt;CS00); //preksel = 1024<br />OCR0A = 255;<br />TIMSK0 = OCIE0A;<br />}<br /><br />int main(void) {<br />DDRD |= LED1;<br /><br />timer0();<br /><br />sei();<br />while(1) {<br />}<br />}<br /><br />ISR (TIMER0_COMPA_vect) {<br />PORTD ^= LED1;<br /><br />}[/syntax]<br /><br />Jednak jedynym efektem jest zwyczajne świecenie diody. Tutaj pojawia się moje pytanie, a spędziłem nad tym dość dużo czasu, co mogłem źle skonfigurować w timerze? Osobiście wydaje mi się że chodzi tutaj o:<br />[syntax=c]OCR0A = 255;[/syntax]<br /><br />Ponieważ w nocie aplikacyjnej dla atmega88 rejestr ten nazywa się OCRA, a nie tak jak wyżej zapisałem OCR0A, jednak gdy próbuję użyć 0CRA jest traktowane przez kompilator jako błąd.<br /><br />Używam programu Eclipse Mars<br />Z góry dziękuję za każdą pomoc i proszę o wyrozumiałość...<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=12083">Karbos</a> — 7 gru 2015, o 21:17</p><hr />
]]></content>
</entry>
</feed>