<html>
  <head>
    <meta content="text/html; charset=ISO-8859-2"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">--3) Jak zvolit "tick"? Zvolil bych si
      nejradeji 1ms, ale mam strach, abych nespalil prilisne % vykonu
      rezii. Mate nekdo predstavu kolik ta rezie bere? (hodiny 48MHz)
      <br>
      <br>
      Pre ilustraciu, pouzivam LPC2378 na 70MHz + Keil RTX.<br>
      Nutnostou je jedno vlakno beziace pravidelne kazdych 200us, takze
      aj "tick" je 200us. Rezia na prepnutie  sa pohybuje radovo v
      10-kach us (nepamatam presne).<br>
      Samozrejme to neni FreeRTOS, ale predpokladam podobne naroky.<br>
      Aj ta pozadovana 1ms musi mat dovod, pre bezne veci kludne staci
      10ms.<br>
      <br>
      Prikladam tabulku z manualu:<br>
      <table class="kt" summary="Timing specification table"
        cellpadding="0" cellspacing="0" border="0">
        <tbody>
          <tr>
            <th class="kt">Function</th>
            <th class="ktC">ARM7™/ARM9™<br>
              (cycles)</th>
            <th class="ktC">Cortex™-M<br>
              (cycles)</th>
          </tr>
          <tr>
            <td class="kt">Initialize system (os_sys_init), start task</td>
            <td class="ktC">1721</td>
            <td class="ktC">1147</td>
          </tr>
          <tr>
            <td class="kt">Create task (no task switch)</td>
            <td class="ktC">679</td>
            <td class="ktC">403</td>
          </tr>
          <tr>
            <td class="kt">Create task (switch task)</td>
            <td class="ktC">787</td>
            <td class="ktC">461</td>
          </tr>
          <tr>
            <td class="kt">Delete task (os_tsk_delete)</td>
            <td class="ktC">402</td>
            <td class="ktC">218</td>
          </tr>
          <tr>
            <td class="kt">Task switch (by os_tsk_delete_self)</td>
            <td class="ktC">458</td>
            <td class="ktC">230</td>
          </tr>
          <tr>
            <td class="kt">Task switch (by os_tsk_pass)</td>
            <td class="ktC">321</td>
            <td class="ktC">192</td>
          </tr>
          <tr>
            <td class="kt">Set event (no task switch)</td>
            <td class="ktC">128</td>
            <td class="ktC">89</td>
          </tr>
          <tr>
            <td class="kt">Set event (switch task)</td>
            <td class="ktC">363</td>
            <td class="ktC">215</td>
          </tr>
          <tr>
            <td class="kt">Send semaphore (no task switch)</td>
            <td class="ktC">106</td>
            <td class="ktC">72</td>
          </tr>
          <tr>
            <td class="kt">Send semaphore (switch task)</td>
            <td class="ktC">364</td>
            <td class="ktC">217</td>
          </tr>
          <tr>
            <td class="kt">Send message (no task switch)</td>
            <td class="ktC">218</td>
            <td class="ktC">117</td>
          </tr>
          <tr>
            <td class="kt">Send message (switch task)</td>
            <td class="ktC">404</td>
            <td class="ktC">241</td>
          </tr>
          <tr>
            <td class="kt">Get own task identifier (os_tsk_self)</td>
            <td class="ktC">23</td>
            <td class="ktC">65</td>
          </tr>
          <tr>
            <td class="kt">Interrupt lockout</td>
            <td class="ktC"><160</td>
            <td class="ktC">0</td>
          </tr>
        </tbody>
      </table>
      <br>
      <br>
      <br>
      Milan<br>
      <br>
      On 14. 2. 2014 9:30, Miroslav Mraz wrote:<br>
    </div>
    <blockquote cite="mid:52FDD437.7080609@seznam.cz" type="cite">V
      textu
      <br>
      <br>
      On 02/13/2014 10:46 PM, Marek Sembol wrote:
      <br>
      <blockquote type="cite">Zdravim zkusenejsi,
        <br>
        pro domaci projektik jsem se rozhodl zkusit subj. Oficialni demo
        sice pro tuto kombinaci neexistuje, ale jelikoz podpora jadra M0
        tam je, tak celkem nebyl problem udelat prelozitelny projekt. Po
        nahrani do kontroleru chodi (obligatni blikani LEDkou z tasku) A
        ted par otazek:
        <br>
        1) opravdu je to pouzitit na LPC11U14 tak bezproblemove, jak se
        mi jevi?
        <br>
      </blockquote>
      Pokud se dodrží zarovnání dat pro CM0 tak proč ne. Ne všichni to
      však respektují a pak kód, který bez problému běží na CM3, na CM0
      spadne do hard-fault.
      <br>
      <blockquote type="cite">2) nebudu pouzivat USB, rad bych tedy
        vyuzil ty dodatecne 2K pameti.
        <br>
        2a) Neni v tom problem?
        <br>
      </blockquote>
      Zatím o žádném nevím.
      <br>
      <blockquote type="cite">2b) Musim pro vyuziti explicitne oznacovat
        globalni promenne atributem pro umisteni tam, nebo jde linker
        presvedcit, aby si tam promenne umistoval sam?
        <br>
      </blockquote>
      Můžete tam umístit celý .bss nebo .data, jak je libo. Je jen
      potřeba trochu vědět, jak upravit linker skript.
      <br>
      <blockquote type="cite">2c) napadlo mne vyuzit ty dodatecne 2K pro
        rozsireni FreeRTOS heap. Nemate nekdo vhodne upraveny soubor
        heap_x.c ?
        <br>
      </blockquote>
      Pokud používáte newlib, hledejte spíš _sbrk() - to je právě to, co
      ukusuje z haldy. Pokud to chcete mít úplně pod kontrolou, pak jde
      použít třeba
      <a class="moz-txt-link-freetext" href="http://mirror.fsf.org/pmon2000/pmon/src/lib/libc/malloc.c">http://mirror.fsf.org/pmon2000/pmon/src/lib/libc/malloc.c</a>.
      <br>
      Vypadá to sice hodně divně, ale fakt to funguje.
      <br>
      <blockquote type="cite">3) Jak zvolit "tick"? Zvolil bych si
        nejradeji 1ms, ale mam strach, abych nespalil prilisne % vykonu
        rezii. Mate nekdo predstavu kolik ta rezie bere? (hodiny 48MHz)
        <br>
        <br>
      </blockquote>
      Tohle nechám jiným, RTOS nepoužívám, takže opravdu nevím.
      <br>
      <br>
      Mrazík
      <br>
      <br>
      _______________________________________________
      <br>
      HW-list mailing list  -  sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
      <br>
      <a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
      <br>
      <a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
      <br>
    </blockquote>
    <br>
  </body>
</html>