<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Tak to byla správná cesta. Tento cyklus trvá 28 uS, takže
      opakovací frekvence může být až 35 kHz, takže nehrozí, že něco
      bude pískat.</p>
    <p>Martin Záruba<br>
    </p>
    <div class="moz-forward-container"><br>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <p><font face="Arial">Máte pravdu, procesor beznadějně nestíhá.
          Takže asi rozumné řešení bude vzít tři porty, třeba A, C, L.
          Tím získat 24 bitů. V hlavní smyčce udělat tři tabulky byte,
          pro hodnoty 0 až 50. No a v přerušení indexovat tabulku a snad
          by se dalo stihnout cyklus 0-50 tří příkazů, tedy</font></p>
      <p><font face="Arial">for (i=0;i<=50;i++) {<br>
        </font></p>
      <p><font face="Arial"> PORTA=hodA[i];</font></p>
      <p><font face="Arial"> PORTC=hodC[i];</font></p>
      <p><font face="Arial"> PORTL=hodL[i];</font></p>
      <p><font face="Arial">}</font></p>
      <p><br>
      </p>
      <p><font face="Arial">To by mohlo být rychlejší. Co myslíte?</font><br>
      </p>
      <pre class="moz-signature" cols="72">Martin Záruba</pre>
      <div class="moz-cite-prefix">Dne 8.10.2023 v 19:34 Pavel Hudeček
        napsal(a):<br>
      </div>
      <blockquote type="cite"
        cite="mid:3a946510-12b4-4dd8-8a94-9c181917981f@seznam.cz">
        <meta http-equiv="Content-Type" content="text/html;
          charset=UTF-8">
        Časově úspornější shození bitu umí novější AVRka. Ekvivalentem
        toho Vašeho by bylo<br>
        PORTA.OUTCLR = 1;<br>
        <br>
        Ale největší časové úspory se dosáhne, pokud se sníží počet ifů,
        kterými program musí projít. Tedy např. lineátní projití 24 ifů
        je dost šílený, ale když se z toho udělá nějaká hierarchie,
        kterou to projde na 3-6 kroků, bude to 3-8x rychlejší.<br>
        <br>
        PH<br>
        <br>
        <div class="moz-cite-prefix">Dne 08.10.2023 v 18:22 Jaroslav
          Buchta napsal(a):<br>
        </div>
        <blockquote type="cite"
          cite="mid:4a6bfcde-e4be-ab8c-7cd1-efbec3455872@hascomp.cz">
          <meta http-equiv="Content-Type" content="text/html;
            charset=UTF-8">
          <div class="moz-cite-prefix">Nejde to udelat nejakou
            byte->byte tabulkou ve flash?<br>
          </div>
          <div class="moz-cite-prefix">Dne 08.10.2023 v 18:16 Martin
            Záruba napsal(a):<br>
          </div>
          <blockquote type="cite"
            cite="mid:13485037-2ff2-ace3-2c65-4425e51c0c27@volny.cz">
            <meta http-equiv="content-type" content="text/html;
              charset=UTF-8">
            <p>Můžete mi prosím někdo napstat jak se přeloží v C++ na
              AtMega</p>
            <div style="color: #4e5b61;background-color: #ffffff;font-family: Consolas, 'Courier New', monospace;font-weight: normal;font-size: 14px;line-height: 19px;white-space: pre;"><div><div><div><span style="color: #4e5b61;">byte b1,x;</span></div><span style="color: #728e00;">if</span><span style="color: #4e5b61;"> </span><span style="color: #434f54;">(</span><span style="color: #4e5b61;">b1==x</span><span style="color: #434f54;">)</span><span style="color: #4e5b61;"> </span><span style="color: #434f54;">{</span><span style="color: #4e5b61;">PORTA &=0x</span><span style="color: #005c5f;">FE</span><span style="color: #4e5b61;">;</span><span style="color: #434f54;">}</span><span style="color: #4e5b61;">;</span></div></div><div><span style="color: #4e5b61;">
</span></div><div><span style="color: #4e5b61;">popřípadě zda se dá vymyslet <b>časově</b> úspornější zápis pro shození bitu?</span></div><div><span style="color: #4e5b61;">Přerušení je po tu dobu zakázané. Příkazů if bude v přerušení celkem 24 a potřebuji přerušení vyvolat dost často, tak aby vůbec ještě nějaký čas procesoru zbyl.
</span></div></div>
          </blockquote>
        </blockquote>
        <br>
        <fieldset class="moz-mime-attachment-header"></fieldset>
        <pre class="moz-quote-pre" wrap="">_______________________________________________
HW-list mailing list  -  sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz" moz-do-not-send="true">www.HW.cz</a>
<a class="moz-txt-link-abbreviated moz-txt-link-freetext" href="mailto:Hw-list@list.hw.cz" moz-do-not-send="true">Hw-list@list.hw.cz</a>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list" moz-do-not-send="true">http://list.hw.cz/mailman/listinfo/hw-list</a>
</pre>
      </blockquote>
    </div>
  </body>
</html>