📄 tos.interfaces.clock.nc.html
字号:
<html><head><title>Interface: Clock</title></head><body><table BORDER="0" CELLPADDING="3" CELLSPACING="0" width="100%"><tr><td><font size="-1"><b><font color="blue"><a href="apps_p.html">Apps</a></font></b> <b><a href="components_p.html">Components</a></b> <b><a href="interfaces_p.html">Interfaces</a></b> <b><a href="allfiles_p.html">All Files</a></b> <b><a href="index.html">Source Tree</a></b> </font></td><td align="right"><font size="-1">source: <b><a href="tos.interfaces.Clock.nc.source">tos.interfaces.Clock.nc</a></b></font></td></tr></table><hr><h1 align="center">Interface: Clock</h1><p> The hardware clock interface. <table border="0" cellpadding="0"><tr valign="top"><td><b>Author:</b><td> Jason Hill </td></tr><tr valign="top"><td> </td><td> David Gay </td></tr><tr valign="top"><td> </td><td> Philip Levis </td></tr><tr valign="top"><td> </td><td> Nelson Lee</td></tr></table><p><dl><dt>Components providing this interface:<dd> <a href="tos.platform.mica.HPLClock.nc.html">tos.platform.mica.HPLClock</a><br> <a href="tos.platform.micaz.HPLTimer2.nc.html">tos.platform.micaz.HPLTimer2</a><br> <a href="tos.system.ClockC.nc.html">tos.system.ClockC</a><br></dl><p><dl><dt>Components requiring this interface:<dd> <a href="tos.platform.micaz.TimerJiffyAsyncM.nc.html">tos.platform.micaz.TimerJiffyAsyncM</a><br> <a href="tos.system.TimerM.nc.html">tos.system.TimerM</a><br></dl><p><table BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"><tr BGCOLOR="#CCCCFF"><td><h3>Commands</h3></td></tr></table><ul><li> result_t <a href="# result_t setRate(char interval, char scale)"><b>setRate</b> </a>(char interval, char scale)<menu> Set the clock rate. </menu><p><li> void <b>setInterval</b>(uint8_t value)<menu> Set clock interval <table border="0" cellpadding="0"></td></tr><tr valign="top"><td><br><b>Parameters:</b></td><td><menu><p STYLE="text-indent: -1cm"><b>value</b> - New clock interval </menu></td></tr><tr valign="top"><td><b>Returns:</b></td><td> none</td></tr></table></menu><p><li> void <b>setNextInterval</b>(uint8_t value)<menu> Set clock interval at next clock interrupt time <table border="0" cellpadding="0"></td></tr><tr valign="top"><td><br><b>Parameters:</b></td><td><menu><p STYLE="text-indent: -1cm"><b>value</b> - New clock interval </menu></td></tr><tr valign="top"><td><b>Returns:</b></td><td> none</td></tr></table></menu><p><li> uint8_t <b>getInterval</b>(void)<menu> Get clock interval <table border="0" cellpadding="0"><tr valign="top"><td><b>Returns:</b></td><td> current clock interval</td></tr></table></menu><p><li> uint8_t <b>getScale</b>(void)<menu> Get clock scale <table border="0" cellpadding="0"><tr valign="top"><td><b>Returns:</b></td><td> current clock scale level</td></tr></table></menu><p><li> void <b>setNextScale</b>(uint8_t scale)<menu> Set clock scale at next clock interrupt time <table border="0" cellpadding="0"></td></tr><tr valign="top"><td><br><b>Parameters:</b></td><td><menu><p STYLE="text-indent: -1cm"><b>scale</b> - New clock scale </menu></td></tr><tr valign="top"><td><b>Returns:</b></td><td> none</td></tr></table></menu><p><li> result_t <b>setIntervalAndScale</b>(uint8_t interval, uint8_t scale)<menu> Set both clock interval and scale <table border="0" cellpadding="0"></td></tr><tr valign="top"><td><br><b>Parameters:</b></td><td><menu><p STYLE="text-indent: -1cm"><b>interval</b> - New clock interval </p><p STYLE="text-indent: -1cm"><b>scale</b> - New clock scale </menu></td></tr><tr valign="top"><td><b>Returns:</b></td><td> SUCCESS or FAILED </td></tr></table></menu><p><li> uint8_t <b>readCounter</b>(void)<menu> Read HW clock counter</menu><p><li> void <b>setCounter</b>(uint8_t n)<menu> Set HW clock counter to a specified value <table border="0" cellpadding="0"></td></tr><tr valign="top"><td><br><b>Parameters:</b></td><td><menu><p STYLE="text-indent: -1cm"><b>n</b> - Value to write to TCNT0 </menu></td></tr><tr valign="top"><td><b>Returns:</b></td><td> None</td></tr></table></menu><p><li> void <b>intDisable</b>(void)<menu> Disable Clock interrupt</menu><p><li> void <b>intEnable</b>(void)<menu> Enable Clock interrupt</menu><p></ul><table BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"><tr BGCOLOR="#CCCCFF"><td><h3>Events</h3></td></tr></table><ul><li> result_t <b>fire</b>(void)<menu> An event sent when the clock goes off.</menu><p></ul><table BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%"><tr BGCOLOR="#CCCCFF"><td><h3>Commands - Details</h3></td></tr></table> <a name=" result_t setRate(char interval, char scale)"></a> <h4>setRate</h4> result_t <b>setRate</b>(char interval, char scale)<P><menu> Set the clock rate. For the specific meanings of interval and scale, refer to the processor data sheet. For the mica and rene: <p> <pre> Clock scale 0 - off 1 - 32768 ticks/second 2 - 4096 ticks/second 3 - 1024 ticks/second 4 - 512 ticks/second 5 - 256 ticks/second 6 - 128 ticks/second 7 - 32 ticks/second </pre> <p> Interval is how many ticks per clock firing. For example, setRate(160,7) will result in an event every 160/32 seconds. See also: <code>Clock.h</code> for predefined macros: <p> <pre> interval scale result TOS_I1000PS TOS_S1000PS 1000 ticks/sec TOS_I100PS TOS_S100PS 100 ticks/sec TOS_I10PS TOS_S10PS 10 ticks/sec TOS_I4096PS TOS_S4096PS 4096 ticks/sec TOS_I2048PS TOS_S2048PS 2048 ticks/sec TOS_I1024PS TOS_S1024PS 1024 ticks/sec TOS_I512PS TOS_S512PS 512 ticks/sec TOS_I256PS TOS_S256PS 256 ticks/sec TOS_I128PS TOS_S128PS 128 ticks/sec TOS_I64PS TOS_S64PS 64 ticks/sec TOS_I32PS TOS_S32PS 32 ticks/sec TOS_I16PS TOS_S16PS 16 ticks/sec TOS_I8PS TOS_S8PS 8 ticks/sec TOS_I4PS TOS_S4PS 4 ticks/sec TOS_I2PS TOS_S2PS 2 ticks/sec TOS_I1PS TOS_S1PS 1 tick/sec TOS_I0PS TOS_S0PS 0 ticks/sec (clock off) </pre></menu>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -