====== OSA : OS_Qtimer_Delay ======
**OS_Qtimer_Delay (qtimer, delay)**\\
=== ===
{{osa:ref:attr_call_task.png|Allowed only in task}}{{osa:ref:attr_call_ct_sw.png|Switches context}}
Delay current task using //qtimer//.
##[[en:osa:ref:appendix:configuration#Timer control|OS_ENABLE_QTIMERS]]## constant must be defined in ##[[en:osa:ref:appendix:configuration|OSAcfg.h]]##. Size of timers is set by ##[[en:osa:ref:appendix:configuration#Data types|OS_QTIMER_SIZE]]## constant
=== Call allowed: ===
Only in task
=== Parameters: ===
{| class = "fpl"
|-
|//''qtimer''//
|Descriptor of timer. Variable of ##[[en:osa:ref:description:data_types#OST_QTIMER|OST_QTIMER]]## type. Contains timer counter, timer state flags and pointer to next timer in list. For PIC16, can only be allocated in **bank0** or **bank1**
|-
|//''delay''//
|Time of delay. Set in system ticks - call ##[[en:osa:ref:allservices:OS_Timer|OS_Timer]]## periods
|}
=== Returns: ===
nothing
=== Example: ===
OST_QTIMER qtimer;
void Task (void)
{
OS_Qtimer_Create(qtimer);
for (;;) {
/*...*/
OS_Qtimer_Delay (qtimer, 100); // Delay task for 100 system ticks
/*...*/
}
}
=== See also ===
* [[en:osa:ref:allservices:OS_Qtimer_Create|OS_Qtimer_Create]]
* [[en:osa:ref:allservices:OS_Qtimer_Delete|OS_Qtimer_Delete]]
* [[en:osa:ref:allservices:OS_Qtimer_Run|OS_Qtimer_Run]]
* [[en:osa:ref:allservices:OS_Qtimer_Break|OS_Qtimer_Break]]
* [[en:osa:ref:allservices:OS_Qtimer_Wait|OS_Qtimer_Wait]]
* [[en:osa:ref:allservices:OS_Qtimer_Delay|OS_Qtimer_Delay]]
* [[en:osa:ref:allservices:OS_Qtimer_Get|OS_Qtimer_Get]]
* [[en:osa:ref:allservices:OS_Qtimer_Check|OS_Qtimer_Check]]
* [[en:osa:ref:allservices:OS_Qtimer_IsRun|OS_Qtimer_IsRun]]
----
* [[en:osa:ref:services:alphabetical|Alphabetical]]
* [[en:osa:ref:services:brieflist|All services]]
~~UP~~