====== 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~~