📄 compat-uitron-time-mgmt-functions.html
字号:
<!-- Copyright (C) 2003 Red Hat, Inc. --><!-- This material may be distributed only subject to the terms --><!-- and conditions set forth in the Open Publication License, v1.0 --><!-- or later (the latest version is presently available at --><!-- http://www.opencontent.org/openpub/). --><!-- Distribution of the work or derivative of the work in any --><!-- standard (paper) book form is prohibited unless prior --><!-- permission is obtained from the copyright holder. --><HTML><HEAD><TITLE>Time Management Functions</TITLE><meta name="MSSmartTagsPreventParsing" content="TRUE"><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+"><LINKREL="HOME"TITLE="eCos Reference Manual"HREF="ecos-ref.html"><LINKREL="UP"TITLE="礗TRON API"HREF="compat-uitron-microitron-api.html"><LINKREL="PREVIOUS"TITLE=" Memory pool Management Functions"HREF="compat-uitron-memory-pool-mgmt-functions.html"><LINKREL="NEXT"TITLE=" System Management Functions"HREF="compat-uitron-system-mgmt-functions.html"></HEAD><BODYCLASS="SECT1"BGCOLOR="#FFFFFF"TEXT="#000000"LINK="#0000FF"VLINK="#840084"ALINK="#0000FF"><DIVCLASS="NAVHEADER"><TABLESUMMARY="Header navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><THCOLSPAN="3"ALIGN="center">eCos Reference Manual</TH></TR><TR><TDWIDTH="10%"ALIGN="left"VALIGN="bottom"><AHREF="compat-uitron-memory-pool-mgmt-functions.html"ACCESSKEY="P">Prev</A></TD><TDWIDTH="80%"ALIGN="center"VALIGN="bottom">Chapter 32. µITRON API</TD><TDWIDTH="10%"ALIGN="right"VALIGN="bottom"><AHREF="compat-uitron-system-mgmt-functions.html"ACCESSKEY="N">Next</A></TD></TR></TABLE><HRALIGN="LEFT"WIDTH="100%"></DIV><DIVCLASS="SECT1"><H1CLASS="SECT1"><ANAME="COMPAT-UITRON-TIME-MGMT-FUNCTIONS">Time Management Functions</H1><P>These functions are fully supported in this release: </P><TABLEBORDER="5"BGCOLOR="#E0E0F0"WIDTH="70%"><TR><TD><PRECLASS="PROGRAMLISTING">ER <TTCLASS="FUNCTION">set_tim</TT>( SYSTIME *<SPANCLASS="emphasis"><ICLASS="EMPHASIS">pk_tim</I></SPAN> )</PRE></TD></TR></TABLE><DIVCLASS="CAUTION"><P></P><TABLECLASS="CAUTION"BORDER="1"WIDTH="100%"><TR><TDALIGN="CENTER"><B>Caution</B></TD></TR><TR><TDALIGN="LEFT"><P> Setting the time may cause erroneous operation of the kernel, for example a task performing a wait with a time-out may never awaken.</P></TD></TR></TABLE></DIV><TABLEBORDER="5"BGCOLOR="#E0E0F0"WIDTH="70%"><TR><TD><PRECLASS="PROGRAMLISTING">ER <TTCLASS="FUNCTION">get_tim</TT>( SYSTIME *<SPANCLASS="emphasis"><ICLASS="EMPHASIS">pk_tim</I></SPAN> )</PRE></TD></TR></TABLE><TABLEBORDER="5"BGCOLOR="#E0E0F0"WIDTH="70%"><TR><TD><PRECLASS="PROGRAMLISTING">ER <TTCLASS="FUNCTION">dly_tsk</TT>( DLYTIME <SPANCLASS="emphasis"><ICLASS="EMPHASIS">dlytim</I></SPAN> )</PRE></TD></TR></TABLE><TABLEBORDER="5"BGCOLOR="#E0E0F0"WIDTH="70%"><TR><TD><PRECLASS="PROGRAMLISTING">ER <TTCLASS="FUNCTION">def_cyc</TT>( HNO <SPANCLASS="emphasis"><ICLASS="EMPHASIS">cycno,</I></SPAN> T_DCYC *<SPANCLASS="emphasis"><ICLASS="EMPHASIS">pk_dcyc</I></SPAN> )</PRE></TD></TR></TABLE><TABLEBORDER="5"BGCOLOR="#E0E0F0"WIDTH="70%"><TR><TD><PRECLASS="PROGRAMLISTING">ER <TTCLASS="FUNCTION">act_cyc</TT>( HNO <SPANCLASS="emphasis"><ICLASS="EMPHASIS">cycno,</I></SPAN> UINT <SPANCLASS="emphasis"><ICLASS="EMPHASIS">cycact</I></SPAN> )</PRE></TD></TR></TABLE><TABLEBORDER="5"BGCOLOR="#E0E0F0"WIDTH="70%"><TR><TD><PRECLASS="PROGRAMLISTING">ER <TTCLASS="FUNCTION">ref_cyc</TT>( T_RCYC *<SPANCLASS="emphasis"><ICLASS="EMPHASIS">pk_rcyc,</I></SPAN> HNO <SPANCLASS="emphasis"><ICLASS="EMPHASIS">cycno</I></SPAN> )</PRE></TD></TR></TABLE><TABLEBORDER="5"BGCOLOR="#E0E0F0"WIDTH="70%"><TR><TD><PRECLASS="PROGRAMLISTING">ER <TTCLASS="FUNCTION">def_alm</TT>( HNO <SPANCLASS="emphasis"><ICLASS="EMPHASIS">almno,</I></SPAN> T_DALM *<SPANCLASS="emphasis"><ICLASS="EMPHASIS">pk_dalm</I></SPAN> )</PRE></TD></TR></TABLE><TABLEBORDER="5"BGCOLOR="#E0E0F0"WIDTH="70%"><TR><TD><PRECLASS="PROGRAMLISTING">ER <TTCLASS="FUNCTION">ref_alm</TT>( T_RALM *<SPANCLASS="emphasis"><ICLASS="EMPHASIS">pk_ralm,</I></SPAN> HNO <SPANCLASS="emphasis"><ICLASS="EMPHASIS">almno</I></SPAN> )</PRE></TD></TR></TABLE><TABLEBORDER="5"BGCOLOR="#E0E0F0"WIDTH="70%"><TR><TD><PRECLASS="PROGRAMLISTING">void <TTCLASS="FUNCTION">ret_tmr</TT>( void )</PRE></TD></TR></TABLE><DIVCLASS="SECT2"><H2CLASS="SECT2"><ANAME="AEN14010">Error checking</H2><P>The following conditions are only checked for, and only returnerrors if <TTCLASS="LITERAL">CYGSEM_UITRON_BAD_PARAMS_RETURN_ERRORS</TT>is enabled:</P><P></P><UL><LI><P>invalid handler number; less than 1 or greater than <TTCLASS="LITERAL">CYGNUM_UITRON_CYCLICS/ALARMS</TT>as appropriate, or E_PAR</P></LI><LI><P>dispatching is enabled in <TTCLASS="FUNCTION">dly_tsk()</TT>, or E_CTX</P></LI><LI><P>dlytim must be positive or zero, otherwise E_PAR</P></LI><LI><P>return value pointer in <TTCLASS="FUNCTION">ref_xxx()</TT> is a valid pointer, or E_PAR</P></LI><LI><P>params within pk_dalm and pk_dcyc mustbe valid, or E_PAR</P></LI><LI><P>cycact in <TTCLASS="FUNCTION">act_cyc()</TT> must be valid, or E_PAR</P></LI><LI><P>handler must be defined in <TTCLASS="FUNCTION">ref_xxx()</TT> and <TTCLASS="FUNCTION">act_cyc()</TT>, or E_NOEXS</P></LI><LI><P>parameter pointer must be a good pointer in <TTCLASS="FUNCTION">get_tim()</TT> and <TTCLASS="FUNCTION">set_tim()</TT>, otherwise E_PAR is returned</P></LI></UL><P>The following conditions are checked for, and can return error codes, regardless of the setting of<TTCLASS="LITERAL">CYGSEM_UITRON_BAD_PARAMS_RETURN_ERRORS</TT>:</P><P></P><UL><LI><P><TTCLASS="FUNCTION">dly_tsk()</TT>: return code E_RLWAI is returned depending on the reasonfor terminating the sleep</P></LI></UL></DIV></DIV><DIVCLASS="NAVFOOTER"><HRALIGN="LEFT"WIDTH="100%"><TABLESUMMARY="Footer navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top"><AHREF="compat-uitron-memory-pool-mgmt-functions.html"ACCESSKEY="P">Prev</A></TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="ecos-ref.html"ACCESSKEY="H">Home</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top"><AHREF="compat-uitron-system-mgmt-functions.html"ACCESSKEY="N">Next</A></TD></TR><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top">Memory pool Management Functions</TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><AHREF="compat-uitron-microitron-api.html"ACCESSKEY="U">Up</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top">System Management Functions</TD></TR></TABLE></DIV></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -