⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 api-usage-restrictions.html

📁 yavrtos,一款用于广泛用于AVR单片机的RTOS,文件里是这款OS的源码
💻 HTML
📖 第 1 页 / 共 2 页
字号:
      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>    </tr>    <tr valign="top">      <td width="28%"> <a class="el" href="group__mailbox.html#gc75646248d03b1413198765b07ba54ad" title="Write to a mailbox.">write_mbox()</a>        </td>      <td width="6%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>    </tr>    <tr valign="top">      <td width="28%"> <a class="el" href="group__mailbox.html#g87f02ab5b46654ae26b06851b2390132" title="Attempt to write to a mailbox.">write_mbox_now()</a>        </td>      <td width="6%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>    </tr>    <tr valign="top">      <td width="28%"> <a class="el" href="group__mailbox.html#gf670250659f0942849aa85f0f94af9f0" title="Wait for a task to be suspended while trying to read from a mailbox.">wait_for_receiver()</a>        </td>      <td width="6%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>    </tr>    <tr valign="top">      <td width="28%"> <a class="el" href="group__semaphore.html#g3c18e0f867a2f36f1510aebf5ad4c0e2" title="Get the current value of a semaphore.">get_semaphore_value()</a>        </td>      <td width="6%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>    </tr>    <tr valign="top">      <td width="28%"> <a class="el" href="group__semaphore.html#g3cd218588dccb32b5b9072c7a75fb008" title="Increment the value of a semaphore by the given amount.">increment_semaphore_by()</a>        </td>      <td width="6%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>    </tr>    <tr valign="top">      <td width="28%"> <a class="el" href="group__semaphore.html#g45243d3de7a253445deeb57ee4c8cc96" title="Wait for a semaphore to reach at least a particular value.">wait_for_min_value()</a>        </td>      <td width="6%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>    </tr>    <tr valign="top">      <td width="28%"> <a class="el" href="group__semaphore.html#g291edcd883e2d0bc17f85419e21069ff" title="Wait for a semaphore to increment its value by a certain amount.">wait_for_increment_of()</a>        </td>      <td width="6%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>    </tr>    <tr valign="top">      <td width="28%"> <a class="el" href="group__task.html#g1a2a5bbefa85516b8c1d0e0361a834db" title="Stop executing the current task and try and execute a higher-priority task or another...">yield()</a>        </td>      <td width="6%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>    </tr>    <tr valign="top">      <td width="28%"> <a class="el" href="group__task.html#g6984a5336b36a4ca99682a2cf5ae044f" title="Disable interrupts system-wide.">disable_interrupts()</a>        </td>      <td width="6%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>    </tr>    <tr valign="top">      <td width="28%"> <a class="el" href="group__task.html#gecf8a8e43c2afae89e46503ff1c887bf" title="Restore the state of the system-wide interrupts.">restore_interrupts()</a>        </td>      <td width="6%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>    </tr>    <tr valign="top">      <td width="28%"> <a class="el" href="group__task.html#g1398c4d9f97349ea3fa7d91349298521" title="Start the whole process running.">task_switcher_start()</a>        </td>      <td width="6%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">N</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="9%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="8%">      <p align="center"><font face="Times New Roman, serif">n/a</font></p>      </td>      <td width="11%">      <p align="center"><font face="Times New Roman, serif">Y</font></p>      </td>    </tr>  </tbody></table><p><br></p><p>The columns in the above table are<p><ul><li><code>"ISR"</code> indicates whether the API call can be made from within an ISR </li><li><code>"Idle task"</code> indicates whether an idle (i.e. zero-priority) task may use the API call </li><li><code>"Non-idle task"</code> indicates whether a task with non-zero priority may use the call </li><li><code>"Lower-priority task"</code> - for those calls that take a task argument, indicates whether a task with a lower priority than that of the argument may use the call </li><li><code>"Before RTOS start"</code> indicates whether the call can be made before <a class="el" href="group__task.html#g1398c4d9f97349ea3fa7d91349298521" title="Start the whole process running.">task_switcher_start()</a> is called </li><li><code>"Current task"</code> - for those calls that take a task argument, indicates whether the value of that argument may be <code>current_task</code> </li><li><code>"Idle task"</code> - for those calls that take a task argument, indicates whether the value of that argument may be a zero-priority idle task </li><li><code>"Could switch tasks"</code> indicates whether a side-effect of making the call could be that the task scheduler runs and switches tasks - see <a class="el" href="group__task.html#g1a2a5bbefa85516b8c1d0e0361a834db" title="Stop executing the current task and try and execute a higher-priority task or another...">yield()</a>. A side-effect of this is that interrupts could be re-enabled if the task switcher chooses a task that didn't disable them.</li></ul>In addition, the only time that it is safe to directly set the value of a semaphore (i.e. without using the <a class="el" href="group__semaphore.html#g3cd218588dccb32b5b9072c7a75fb008" title="Increment the value of a semaphore by the given amount.">increment_semaphore_by()</a> API call) is before the RTOS starts.<p>Finally, when an ISR finishes executing, the task scheduler is called, as the ISR may have changed the list of runnable tasks (e.g. by incrementing the value of a semaphore, or by successfully posting a message to a task). <hr><p align="center"><font size="-1">YAVRTOS and YAVRTOS documentation Copyright &copy; 2007-2008 Chris O'Byrne. Email - chris &lt;at&gt; obyrne &lt;dot&gt; com</font></p></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -