<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<p>ZdravĂm, <br>
</p>
<p>to jsem neznal dĂky. Jak se dĂvám, tak digitalWritefast() je
pouze sada maker, která rozvine zápis na GPIO na zápis přes
registry pĹ™ĂpadÄ› konstantnĂho argumentu ÄŤĂsla pinu.</p>
<p>Tenhle syntaktickĂ˝ cukr je uĹľ na mĹŻj vkus pĹ™Ăliš sladkĂ˝, asi
zĹŻstanu u klasickĂ©ho pĹ™Ăstupu - pokud to bude nekritickĂ©, tak
digitalWrite, pokud to bude ÄŤasovÄ› kritickĂ©, tak pĹ™Ăstup pĹ™es
registry (a nemĂchat v jednom kodu).</p>
<p>SpĂše mÄ› zaujala ta poznámka o neatomicitě  zápisu v pĹ™erušenĂ.</p>
<p>Chápu to správnÄ›, Ĺľe kdyĹľ se mi pĹ™erušenĂ, kterĂ© manipuluje
napĹ™Ăklad s bity 4-7 portu D trefĂ pĹ™esnÄ› do okamĹľiku kdy jsem
naÄŤetl stav portu D pro potĹ™eby napĹ™Ăklad OR (chci nahodit bit 0,
portu D), tak vlastně po zápisu na port v hlavnà smyčce "vymažu"
změnu co proběhla v přerušen�</p>
<p>Jak se to dá Ĺ™ešit? ( samozĹ™ejmÄ› kromÄ› zakázánĂ pĹ™erušenĂ)</p>
<p>DĂky</p>
<p>Petr<br>
</p>
<p><br>
</p>
<div class="moz-cite-prefix">Dne 31. 07. 23 v 21:01 Ales Filip
napsal(a):<br>
</div>
<blockquote type="cite"
cite="mid:189ad542058.27d8.2cec1318f5a2f82c8b7ccec543b65040@khnet.info">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<div dir="auto">
<div id="aqm-greeting" dir="auto" style="color: black;">
<div dir="auto">
DobrĂ˝ den,
<div dir="auto"><br>
</div>
<div dir="auto"><br>
</div>
</div>
</div>
<div dir="auto">MusĂš pouĹľit.  digitalWritefast() ;-)</div>
<div id="aqm-signature" dir="auto" style="color: black;">
<div dir="auto"><br>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">S pozdravem,</div>
<div dir="auto">--Â </div>
<div dir="auto">Â Ales Filip</div>
<div dir="auto">Â Kutna Hora</div>
<div dir="auto"><span style="font-size: 12pt;">Â </span><a
href="http://xanadu.khnet.info/" style="font-size: 12pt;"
moz-do-not-send="true"><i>http://xanadu.khnet.info</i></a>Â </div>
</div>
<div dir="auto"><br>
</div>
<div id="aqm-original" style="color: black;">
<div dir="auto">Dne 30. ÄŤervence 2023 21:15:47 Petr Zapadlo
<a class="moz-txt-link-rfc2396E" href="mailto:zapik@email.cz"><zapik@email.cz></a> napsal:</div>
<div><br>
</div>
<blockquote type="cite" class="gmail_quote" style="margin: 0 0
0 0.75ex; border-left: 1px solid #808080; padding-left:
0.75ex;">
<div dir="auto">JeštÄ› upozornĂm na to, Ĺľe digitalWrite naÂ
atmega nenĂ moc efektivnĂ -Â </div>
<div dir="auto">kdysi jsem to měřil a je asi tak 3x
pomalejšà neĹľ klasickĂ˝ pĹ™Ăstup pĹ™es </div>
<div dir="auto">registry.</div>
<div dir="auto"><br>
</div>
<div dir="auto">smyÄŤka digitalWrite (pin, 0);
digitalWrite(pin,1); nedal ani těch 20kHz </div>
<div dir="auto">(jestli si správně pamatuju)</div>
<div dir="auto"><br>
</div>
<div dir="auto">Jinak na PWM těch 20kHz je úplně v poho -
ale nesmĂ se k tomu pouĹľĂt </div>
<div dir="auto">analogWrite - to nastavà PWM do nějakého
základnĂho stavu s frekvencĂ </div>
<div dir="auto">nÄ›kde kolem 400Hz. prostÄ› musĂte naÄŤĂst a
ručně ponastavovat registry </div>
<div dir="auto">nějakého časovače-</div>
<div dir="auto"><br>
</div>
<div dir="auto">Petr</div>
<div dir="auto"><br>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">Dne 30. 07. 23 v 19:51 Jaroslav Buchta
napsal(a):</div>
<blockquote type="cite" class="gmail_quote" style="margin: 0
0 0 0.75ex; border-left: 1px solid #0099CC; padding-left:
0.75ex;">
<div dir="auto">Cekat v preruseni to se opravdu nedela.
Neslo by to delat jako se </div>
<div dir="auto">hejbe krokovyma motorama?</div>
<div dir="auto">V preruseni nastavit novou hodnotu pro
casovac odpovidajici pozadovane </div>
<div dir="auto">delce 0/1 a hejbnout GPIO. Klika je, ze u
AVR ma preruseni dost malou </div>
<div dir="auto">rezii, treba u ARMu to takhle moc delat
nejde.</div>
<div dir="auto"><br>
</div>
<div dir="auto">Dne 30.07.2023 v 19:45 Petr Simek
napsal(a):</div>
<blockquote type="cite" class="gmail_quote" style="margin:
0 0 0 0.75ex; border-left: 1px solid #9933CC;
padding-left: 0.75ex;">
<div dir="auto">On Sun, 30 Jul 2023, Martin Záruba
wrote:</div>
<div dir="auto"><br>
</div>
<blockquote type="cite" class="gmail_quote"
style="margin: 0 0 0 0.75ex; border-left: 1px solid
#669900; padding-left: 0.75ex;">
<div dir="auto">// Obsluha přerušenà od časovače
Timer/Counter1</div>
<div dir="auto">ISR(TIMER1_OVF_vect) {</div>
<div dir="auto"> // Generovánà pulzu 1 na pinu 9 (při
logické 1)</div>
<div dir="auto">Â digitalWrite(9, HIGH);</div>
<div dir="auto"><br>
</div>
<div dir="auto">Â // PoÄŤkejte na dobu odpovĂdajĂcĂ
šĂĹ™ce pulzu 1</div>
<div dir="auto">Â delayMicroseconds(pulseWidth1);</div>
</blockquote>
<div dir="auto"><br>
</div>
<div dir="auto">Kdyz v preruseni vyvolate cekaci smycku,
tak se to v tom preruseni</div>
<div dir="auto">zablokuje ne ? Pak zalezi na prioritach
- bud to jine preruseni</div>
<div dir="auto">neprerusi, takze druhy puls bude
zmrseny-zpozdeny, nebo prerusi</div>
<div dir="auto">a protoze v nem to taky uvizne v cekaci
smycce tak to zmrsi-prodlouzi</div>
<div dir="auto">prvni puls.</div>
<div dir="auto"><br>
</div>
<div dir="auto"><br>
</div>
<div dir="auto"><br>
</div>
<blockquote type="cite" class="gmail_quote"
style="margin: 0 0 0 0.75ex; border-left: 1px solid
#669900; padding-left: 0.75ex;">
<div dir="auto">Martin Záruba</div>
</blockquote>
<div dir="auto"><br>
</div>
<div dir="auto">*------------------------------------------------------------------------*Â </div>
<div dir="auto"><br>
</div>
<div dir="auto">|                         Petr Simek Â
APSÂ </div>
<div dir="auto">JUÂ Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â |</div>
<div dir="auto">|
<a class="moz-txt-link-abbreviated" href="mailto:psimek@jcu.cz">psimek@jcu.cz</a>Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â |</div>
<div dir="auto">*------------------------------------------------------------------------*Â </div>
<div dir="auto"><br>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">_______________________________________________</div>
<div dir="auto">HW-list mailing list - sponsored by
<a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a></div>
<div dir="auto"><a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a></div>
<div dir="auto"><a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a></div>
</blockquote>
<div dir="auto"><br>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">_______________________________________________</div>
<div dir="auto">HW-list mailing list - sponsored by
<a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a></div>
<div dir="auto"><a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a></div>
<div dir="auto"><a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a></div>
</blockquote>
<div dir="auto">_______________________________________________</div>
<div dir="auto">HW-list mailing list  -  sponsored by
<a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a></div>
<div dir="auto"><a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a></div>
<div dir="auto"><a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a></div>
</blockquote>
</div>
<div dir="auto"><br>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<pre class="moz-quote-pre" wrap="">_______________________________________________
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
</pre>
</blockquote>
</body>
</html>