OSA : OS_Flag_Wait_Off_TO

OS_Flag_Wait_Off_TO (flags, mask, timeout)

Allowed only in taskSwitches contextUses timer

Wait for any mask bits in flags to be cleared. If timeout expires before event occurs, then stop waiting with Timeout flag set (see OS_IsTimeout)

Call allowed:

Only in task

Parameters:

flags Variable of OST_FLAGx (x = 8, 16, 32) type
mask Bit mask to operate on
timeout Time of waiting in system ticks - calling OS_Timer periods

Returns:

timeout If timeout expired then system service OS_IsTimeout will return true

Example:

OST_FLAG flag;
 
void Task (void)
{
    for (;;) {
        /*...*/
        OS_Flag_Wait_Off_TO (flag, 0xFF, 100); // wait 100 ticks for any bit clear
        if (!OS_IsTimeout()) {
            //
            /*...*/
        }
        /*...*/
    }
}

Old style name

OS_WaitAnyFlagClearTimeout

OS_Flag_Wait_Off

See also