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

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2016-11-09T16:58:55+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=16739&amp;mode</id>
<entry>
<author><name><![CDATA[kirex]]></name></author>
<updated>2016-11-09T16:58:55+01:00</updated>
<published>2016-11-09T16:58:55+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174257#p174257</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174257#p174257"/>
<title type="html"><![CDATA[Re: PWM programowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174257#p174257"><![CDATA[
Nie chciało mi się kodu powtarzać, zaraz to przepiszę bez wywołania funkcji i pętli, i zobaczę co z tego będzie.<br /><br />Przy:<br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">ISR(TIMER2_COMP_vect) {<br />   static uint8_t cnt;<br /><br />   if(cnt &gt; 99) {<br />      cnt = 0;<br />   }<br /><br />   cnt &gt;= 16 ? (DRV1_ON) : (DRV1_OFF);<br />   cnt &gt;= 32 ? (DRV2_ON) : (DRV2_OFF);<br />   cnt &gt;= 48 ? (DRV3_ON) : (DRV3_OFF);<br />   cnt &gt;= 64 ? (DRV4_ON) : (DRV4_OFF);<br />   cnt &gt;= 80 ? (DRV5_ON) : (DRV5_OFF);<br />   cnt &gt;= 96 ? (DRV6_ON) : (DRV6_OFF);<br /><br />   cnt++;<br />}</div><br /><br />udało mi się zejść z OCR2 do 10, więc różnica jest spora. Dzięki  dambo.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=306">kirex</a> — 9 lis 2016, o 16:58</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kirex]]></name></author>
<updated>2016-11-09T16:48:45+01:00</updated>
<published>2016-11-09T16:48:45+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174255#p174255</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174255#p174255"/>
<title type="html"><![CDATA[Re: PWM programowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174255#p174255"><![CDATA[
Włączenie/wyłączenie diody jakoś mocno obciąża? <br />To tej sytuacji cnt wyciągnąć gdzieś wyżej i dodać volatile a samego pwma obrabiać w głównej pętli programu?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=306">kirex</a> — 9 lis 2016, o 16:48</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kirex]]></name></author>
<updated>2016-11-09T16:11:17+01:00</updated>
<published>2016-11-09T16:11:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174249#p174249</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174249#p174249"/>
<title type="html"><![CDATA[Re: PWM programowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174249#p174249"><![CDATA[
Mam dziwny problem z tym pwm i chciałbym się dowiedzieć dlaczego tak się dzieje<br /><br />uC to Atmega 32 z kwarcem 16MHz<br /><br />Otóż, jest sobie timer ustawiony na:<br />TCCR2 |= (1&lt;&lt;WGM21); //CTC<br />TCCR2 |= (1&lt;&lt;CS21); //8<br />OCR2 = 47;<br />TIMSK |= (1&lt;&lt;OCIE2); <br /><br />i przerwanie:<br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">ISR(TIMER2_COMP_vect) {<br />   static uint8_t cnt;<br /><br />   if(cnt &gt; 99) {<br />      cnt = 0;<br />   }<br /><br />   for(uint8_t i = 0; i &lt; 6; i++) {<br />      if(cnt &gt;= 16 + (16 * i)) {<br />         driver_status(i, 0);<br />      } else {<br />         driver_status(i, 1);<br />      }<br />   }<br /><br />   cnt++;<br />}<br /><br />void driver_status(uint8_t i, uint8_t status) {<br />   switch(i) {<br />      case 0:<br />         status ? (DRV1_ON) : (DRV1_OFF);<br />         break;<br />      case 1:<br />         ...<br />   }<br />}<br /></div><br /><br />Do tego jest sterowanie przez BT z wykorzystaniem biblioteki mkuart.c.<br /><br />Przy OCR2:<br />&gt;= 47 (~425Hz i mniej) wszystko działa poprawnie<br />= 46 (~435Hz), biblioteka uarta gubi znaki, przez co polecenia nie są rozpoznawane<br />&lt;= 45 (~444Hz) nie dostaję już odpowiedzi zwrotnej z uart<br /><br />Dlaczego tak się dzieje?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=306">kirex</a> — 9 lis 2016, o 16:11</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Daro69]]></name></author>
<updated>2016-11-07T17:31:14+01:00</updated>
<published>2016-11-07T17:31:14+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174045#p174045</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174045#p174045"/>
<title type="html"><![CDATA[Re: PWM programowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174045#p174045"><![CDATA[
to może precyzyjniej.  <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> <br />16 000 000 / 8 = 2 000 000<br />2 000 000 / 101 (od 0-100 'OCR') = ~19 802<br />19 802 / 256 (od 0-255 'liczniczek') = ~77,35 Hz<br /> <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=11549">Daro69</a> — 7 lis 2016, o 17:31</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[micky]]></name></author>
<updated>2016-11-07T16:38:56+01:00</updated>
<published>2016-11-07T16:38:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174038#p174038</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174038#p174038"/>
<title type="html"><![CDATA[Re: PWM programowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=174038#p174038"><![CDATA[
Chyba Hz a nie kHz?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1546">micky</a> — 7 lis 2016, o 16:38</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kirex]]></name></author>
<updated>2016-11-06T13:04:42+01:00</updated>
<published>2016-11-06T13:04:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=173938#p173938</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=173938#p173938"/>
<title type="html"><![CDATA[Re: PWM programowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=173938#p173938"><![CDATA[
Dzięki wielkie<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=306">kirex</a> — 6 lis 2016, o 13:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kirex]]></name></author>
<updated>2016-11-06T12:14:21+01:00</updated>
<published>2016-11-06T12:14:21+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=173929#p173929</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=173929#p173929"/>
<title type="html"><![CDATA[PWM programowy]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=16739&amp;p=173929#p173929"><![CDATA[
Powoli już chyba głupieję dlatego chcę zapytać, jaka będzie częstotliwość PWM w trybie CTC dla<br />kwarc - 16MHz<br />preskaler - 8<br />OCR - 100<br />licznik w przerwaniu - od 0 do 255<br /><br />16000000 / 8 / 100 = 20kHz?<br />czy<br />16000000 / 8 / 100 / 256 = ~78Hz?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=306">kirex</a> — 6 lis 2016, o 12:14</p><hr />
]]></content>
</entry>
</feed>