📄 timer_8c.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>Procyon AVRlib: timer.c File Reference</title><link href="dox.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.3.6 --><div class="qindex"><a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a></div><h1>timer.c File Reference</h1>System Timer function library. <a href="#_details">More...</a><p><code>#include <avr/io.h></code><br><code>#include <avr/signal.h></code><br><code>#include <avr/interrupt.h></code><br><code>#include <avr/pgmspace.h></code><br><code>#include <avr/sleep.h></code><br><code>#include "<a class="el" href="global_8h-source.html">global.h</a>"</code><br><code>#include "<a class="el" href="timer_8h-source.html">timer.h</a>"</code><br><code>#include "<a class="el" href="rprintf_8h-source.html">rprintf.h</a>"</code><br><p><a href="timer_8c-source.html">Go to the source code of this file.</a><table border=0 cellpadding=0 cellspacing=0><tr><td></td></tr><tr><td colspan=2><br><h2>Typedefs</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a3" doxytag="timer.c::voidFuncPtr" ></a>typedef void(* </td><td class="memItemRight" valign=bottom><b>voidFuncPtr</b> )(void)</td></tr><tr><td colspan=2><br><h2>Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a5" doxytag="timer.c::__attribute__" ></a>unsigned short </td><td class="memItemRight" valign=bottom><b>__attribute__</b> ((progmem))</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a6" doxytag="timer.c::delay" ></a>void </td><td class="memItemRight" valign=bottom><b>delay</b> (unsigned short us)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a7" doxytag="timer.c::timerInit" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a7">timerInit</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">initializes timing system (all timers) <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a8" doxytag="timer.c::timer0Init" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a8">timer0Init</a> ()</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">initialize timer0 <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a9" doxytag="timer.c::timer1Init" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a9">timer1Init</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">initialize timer1 <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a10" doxytag="timer.c::timer0SetPrescaler" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a10">timer0SetPrescaler</a> (u08 prescale)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">set timer0 prescaler division index <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a11" doxytag="timer.c::timer1SetPrescaler" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a11">timer1SetPrescaler</a> (u08 prescale)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">set timer1 prescaler division index <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a12" doxytag="timer.c::timer0GetPrescaler" ></a>u16 </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a12">timer0GetPrescaler</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">get timer0 prescaler division rate <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a13" doxytag="timer.c::timer1GetPrescaler" ></a>u16 </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a13">timer1GetPrescaler</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">get timer1 prescaler division rate <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a14" doxytag="timer.c::timerAttach" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a14">timerAttach</a> (u08 interruptNum, void(*userFunc)(void))</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Attach a user function to a timer interrupt. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a15" doxytag="timer.c::timerDetach" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a15">timerDetach</a> (u08 interruptNum)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Detach a user function from a timer interrupt. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a16" doxytag="timer.c::timerPause" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a16">timerPause</a> (unsigned short pause_ms)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">timerPause pauses for the number of milliseconds specified in <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a17" doxytag="timer.c::timer0ClearOverflowCount" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a17">timer0ClearOverflowCount</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">clear timer0's overflow counter <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a18" doxytag="timer.c::timer0GetOverflowCount" ></a>long </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a18">timer0GetOverflowCount</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">read timer0's overflow counter <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a19" doxytag="timer.c::timer1PWMInit" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a19">timer1PWMInit</a> (u08 bitRes)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">initialize and set timer1 mode to PWM <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a20" doxytag="timer.c::timer1PWMOff" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a20">timer1PWMOff</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">turn off all timer1 PWM output and set timer mode to normal <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a21" doxytag="timer.c::timer1PWMAOn" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a21">timer1PWMAOn</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">turn on timer1 Channel A (OC1A) PWM output <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a22" doxytag="timer.c::timer1PWMBOn" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a22">timer1PWMBOn</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">turn on timer1 Channel B (OC1B) PWM output <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a23" doxytag="timer.c::timer1PWMAOff" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a23">timer1PWMAOff</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">turn off timer1 Channel A (OC1A) PWM output <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a24" doxytag="timer.c::timer1PWMBOff" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a24">timer1PWMBOff</a> (void)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">turn off timer1 Channel B (OC1B) PWM output <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a25" doxytag="timer.c::timer1PWMASet" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a25">timer1PWMASet</a> (u16 pwmDuty)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">set duty of timer1 Channel A (OC1A) PWM output <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a26" doxytag="timer.c::timer1PWMBSet" ></a>void </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a26">timer1PWMBSet</a> (u16 pwmDuty)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">set duty of timer1 Channel B (OC1B) PWM output <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a27" doxytag="timer.c::TIMER_INTERRUPT_HANDLER" ></a> </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a27">TIMER_INTERRUPT_HANDLER</a> (SIG_OVERFLOW0)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Interrupt handler for tcnt0 overflow interrupt. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a28" doxytag="timer.c::TIMER_INTERRUPT_HANDLER" ></a> </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a28">TIMER_INTERRUPT_HANDLER</a> (SIG_OVERFLOW1)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Interrupt handler for tcnt1 overflow interrupt. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a29" doxytag="timer.c::TIMER_INTERRUPT_HANDLER" ></a> </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a29">TIMER_INTERRUPT_HANDLER</a> (SIG_OUTPUT_COMPARE1A)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Interrupt handler for CutputCompare1A match (OC1A) interrupt. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a30" doxytag="timer.c::TIMER_INTERRUPT_HANDLER" ></a> </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a30">TIMER_INTERRUPT_HANDLER</a> (SIG_OUTPUT_COMPARE1B)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Interrupt handler for OutputCompare1B match (OC1B) interrupt. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a31" doxytag="timer.c::TIMER_INTERRUPT_HANDLER" ></a> </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a31">TIMER_INTERRUPT_HANDLER</a> (SIG_INPUT_CAPTURE1)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Interrupt handler for InputCapture1 (IC1) interrupt. <br><br></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a32" doxytag="timer.c::TIMER_INTERRUPT_HANDLER" ></a> </td><td class="memItemRight" valign=bottom><a class="el" href="timer_8c.html#a32">TIMER_INTERRUPT_HANDLER</a> (SIG_OUTPUT_COMPARE2)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Interrupt handler for OutputCompare2 match (OC2) interrupt. <br><br></td></tr><tr><td colspan=2><br><h2>Variables</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a0" doxytag="timer.c::TimerPauseReg" ></a>volatile unsigned long </td><td class="memItemRight" valign=bottom><b>TimerPauseReg</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a1" doxytag="timer.c::Timer0Reg0" ></a>volatile unsigned long </td><td class="memItemRight" valign=bottom><b>Timer0Reg0</b></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top><a class="anchor" name="a2" doxytag="timer.c::Timer2Reg0" ></a>volatile unsigned long </td><td class="memItemRight" valign=bottom><b>Timer2Reg0</b></td></tr></table><hr><a name="_details"></a><h2>Detailed Description</h2>System Timer function library. <p><p>Definition in file <a class="el" href="timer_8c-source.html">timer.c</a>.<hr size="1"><address style="align: right;"><small>Generated on Fri Oct 15 03:50:23 2004 for Procyon AVRlib by<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border=0 > </a>1.3.6 </small></address></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -