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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2015-12-06T21:50:37+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=13184&amp;mode</id>
<entry>
<author><name><![CDATA[iwi]]></name></author>
<updated>2015-12-06T21:50:37+01:00</updated>
<published>2015-12-06T21:50:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=147254#p147254</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=147254#p147254"/>
<title type="html"><![CDATA[Re: Timer1 PWM 16bit]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=147254#p147254"><![CDATA[
nie ma - to jest do ściemniania podświetlenia wyświetlacza więc każdy będzie dobry - ten10bit w zupełności wystarczy, ale z ciekawości chciałbym wiedzieć o co chodzi z tym trybem 15 i dlaczego nie da się go ustawić. Ciekawe jest to że w tym trybie OCR1A przyjmuje wartośći od -32768 do 32768. Tutaj może być błąd, ale z datasheetu nie mogę wyczytać niczego co pomogłoby włączyć ten tryb,<br /><br /><strong><span style="color: #808000">------------------------ [ Dodano po: 26 minutach ]</span></strong><br /><br />Ale coś dalej jest nie tak - nawet z tym trybem 10 bitowym (Tryb 3) - jeśli ustawię prescaler na 1<br />[syntax=c]TCCR1B |= (1&lt;&lt;CS10);[/syntax]<br />to wtedy podświetlanie na wyświetlaczu jakby faluje - a kiedy nie ustawię prescalera to zgodnie z dokumentacją &quot;Brak sygnału zegarowego – licznik jest zatrzymany&quot;<br />- to jakim cudem działa ten PWM? I to działa poprawnie.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1988">iwi</a> — 6 gru 2015, o 21:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[jacekk232]]></name></author>
<updated>2015-12-06T21:09:29+01:00</updated>
<published>2015-12-06T21:09:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=147248#p147248</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=147248#p147248"/>
<title type="html"><![CDATA[Re: Timer1 PWM 16bit]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=147248#p147248"><![CDATA[
A jest jakiś konkretny powód dlaczego chcesz użyć trybu 15 Fast Pwm a nie któregoś z trybów 5, 6 lub 7?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=204">jacekk232</a> — 6 gru 2015, o 21:09</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[iwi]]></name></author>
<updated>2015-12-06T20:42:18+01:00</updated>
<published>2015-12-06T20:42:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=147241#p147241</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=147241#p147241"/>
<title type="html"><![CDATA[Re: Timer1 PWM 16bit]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=147241#p147241"><![CDATA[
Witajcie.<br />Też próbuje uruchomić Timer1 w trybie 15 FAST PWM i zgodnie z dokumentacją Atmegi32 nie daje rady<br /><br />Kod powinien być taki, a nie działa<br />[syntax=c]TCCR1A |= (1&lt;&lt;WGM10)|(1&lt;&lt;WGM11);// tryb Fast PWM<br />         TCCR1B |= (1&lt;&lt;WGM12)|(1&lt;&lt;WGM13);// tryb Fast PWM<br />         TCCR1A |= (1&lt;&lt;COM1A1);// clear at TOP<br />         TCCR1B |= (1&lt;&lt;CS10);// preskaler = 1<br />         OCR1A = 65535;// wygaszenie diody w kanale PWM[/syntax]<br /><br />a taki działa taki ale nie jako FAST PWM tylko 10bit PWM<br />[syntax=c]TCCR1A |= (1&lt;&lt;WGM10)|(1&lt;&lt;WGM11);// tryb Fast PWM<br />         TCCR1A |= (1&lt;&lt;WGM12)|(1&lt;&lt;WGM13);// tryb Fast PWM<br />         TCCR1A |= (1&lt;&lt;COM1A1);// clear at TOP<br />         TCCR1B |= (1&lt;&lt;CS10);// preskaler = 1<br />         OCR1A = 65535;// wygaszenie diody w kanale PWM[/syntax]<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1988">iwi</a> — 6 gru 2015, o 20:42</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[malarz87]]></name></author>
<updated>2015-10-12T21:00:29+01:00</updated>
<published>2015-10-12T21:00:29+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142243#p142243</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142243#p142243"/>
<title type="html"><![CDATA[Re: Timer1 PWM 16bit]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142243#p142243"><![CDATA[
Jednak mam kolejny problemik.<br />Potrzebuję <strong>16bitowego</strong> PWMa o częstotliwości <strong>96kHz</strong>, a jest mi to wszystko potrzebne do sterowania silniczkiem BLDC o maksymalnych obrotach 10tys obr/min.<br />I potrzebuję osiągnąć dużą dokładność w regulacji prędkości.<br />Tak sobie czytam w bluebooku ten fragment o programowym pwmie i nie do końca kumam o co w tym chodzi.<br />Dlaczego np dzielimy obliczoną częstotliwość na 256 jeśli wybieramy rozdzielczość 8bit ?<br /><br />Czyli jeśli ja mam na procku atmega32 zegar <strong>11059200Hz</strong> i obliczę wartość <strong>TCNT2 = 141</strong>, <br />bo <strong>11059200Hz/115 = 96166Hz = 96,166kHz, to (255-115)+1 = 141.</strong><br />Ale teraz jeśli moje 96166Hz podziele przez moją rozdzielczość 65535 to mi nie pasuje.<br />Moje pytanie brzmi jak osiągnąć na avr <strong>PWM 16bit 96kHz</strong> ?<br /><br /><br />Acha dodam tylko, ze próbowałem na timerach sprzętowych. Najbliższa częstotliwość do 96kHz jaką udało mi się uzyskać to 86,4kHz na Timer2, preskaler 128, zegar 11MHz.<br />Ale tylko Timer2 ma możliwy preskaler 128 i niestety jest  8bitowy :/<br />P.S.<br />Nie wiem czy mam tutaj pisać, czy zakładać nowy temat <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2362">malarz87</a> — 12 paź 2015, o 21:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[elsat1]]></name></author>
<updated>2015-10-10T21:50:09+01:00</updated>
<published>2015-10-10T21:50:09+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142086#p142086</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142086#p142086"/>
<title type="html"><![CDATA[Re: Timer1 PWM 16bit]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142086#p142086"><![CDATA[
Miałem podobne problemy i ten twój wątek pomógł mi go rozwiązać dzięki.<br /><br />Nie wstydż się błędów.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=151">elsat1</a> — 10 paź 2015, o 21:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[malarz87]]></name></author>
<updated>2015-10-10T17:59:28+01:00</updated>
<published>2015-10-10T17:59:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142041#p142041</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142041#p142041"/>
<title type="html"><![CDATA[Re: Timer1 PWM 16bit]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142041#p142041"><![CDATA[
Przeprasza, za kłopot. Głupi błąd zrobiłem <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /> aż wstyd się przyznać. Program jest dobry, tylko podczas wgrywania programu do procka miałem zaznaczony nie ten projekt co trzeba.<br />A ja wyczytałem gdzieś w necie, że Timer1 może pracować jako 16bitowy PWM, tylko wtedy mamy do dyspozycji jedno wyjście OC1B do dyspozycji <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br />Pozdrawiam i dzięki za zainteresowanie tematem<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2362">malarz87</a> — 10 paź 2015, o 17:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[wojmajster]]></name></author>
<updated>2015-10-10T17:44:32+01:00</updated>
<published>2015-10-10T17:44:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142037#p142037</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142037#p142037"/>
<title type="html"><![CDATA[Re: Timer1 PWM 16bit]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142037#p142037"><![CDATA[
Timer jest 16 bitowy, PWM to raczej max 10bit.<br />Ta dioda to w konfiguracji jako wyjście podpięta do tego pinu działa? Logiczne 0 lub 1 włącza/wyłącza.<br /><br />Zobacz tu: <!-- m --><a class="postlink" href="http://forbot.pl/blog/artykuly/programowanie/wszystko-co-musisz-wiedziec-aby-uruchomic-pwm-id5021" >http://forbot.pl/blog/artykuly/programo ... pwm-id5021</a><!-- m --><br />wszystko wyjaśnione w temacie<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1297">wojmajster</a> — 10 paź 2015, o 17:44</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[malarz87]]></name></author>
<updated>2015-10-10T17:22:23+01:00</updated>
<published>2015-10-10T17:22:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142031#p142031</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142031#p142031"/>
<title type="html"><![CDATA[Timer1 PWM 16bit]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=13184&amp;p=142031#p142031"><![CDATA[
Witam,<br />Chcę uruchomić 16bit PWM na Timerze1 atmega32 i oczywiście mam z tym problem.<br />Jak dla mnie w dokumentacji jest za dużo informacji  i nie potrafię wyciągnąć to co istotne.<br />Mam taki kawałek kodu, ale coś to nie chce działać. Diodę mam podpiętą anodą do pinu PD4.<br /><br />[syntax=c]#include &lt;avr/io.h&gt;<br />#include &lt;util/delay.h&gt;<br /><br />int main(void)<br />{<br />DDRD |= (1&lt;&lt;PD4);<br />TCCR1A |= (1&lt;&lt;WGM10)|(1&lt;&lt;WGM11);<br />TCCR1B |= (1&lt;&lt;WGM12)|(1&lt;&lt;WGM13);<br />TCCR1A |= (1&lt;&lt;COM1B1);<br />TCCR1B |= (1&lt;&lt;CS10);<br />OCR1A = 65535;<br /><br />OCR1B = 65535;<br />}[/syntax]<br /><br /><br />I w tym momencie dioda powinna świecić na maxa, a nie świeci i w ogóle zmiana wypełnienia nie daje żadnej zmiany :/<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=2362">malarz87</a> — 10 paź 2015, o 17:22</p><hr />
]]></content>
</entry>
</feed>