...
the call is successful.
OS_ERR_FLAGINT_INVALIDQ_OPTFULL
If If OS_CFG_ISR_ARGPOST_CHKDEFERRED_EN
is set to 1
in
is to DEF_ENABLED
in os_cfg.h
: if you specified an invalid option If the deferred interrupt post queue is full.
OS_ERR_OBJ_PTR_NULL
If OS_CFG_ARG_CHK_EN
is set to 1
in DEF_ENABLED
in os_cfg.h
: if the caller passed a NULL
pointer.
...
If OS_CFG_OBJ_TYPE_CHK_EN
is set to 1
in DEF_ENABLED
in os_cfg.h
: p_grp
is not pointing to an event flag group.
OS_ERR_OPT_INVALID
If OS_CFG_ARG_CHK_EN
is set to DEF_ENABLED
in os_cfg.h
: if you specified an invalid option.
OS_ERR_OS_NOT_RUNNING
If OS_CFG_INVALID_OS_CALLS_CHK_EN
is set to DEF_ENABLED
in os_cfg.h
: if µC/OS-III is not running yet.
Returned Value
The new value of the event flags.
...
OS_CFG_FLAG_EN
must be enabled in os_cfg.h
. Refer to uCµC-OS-III Configuration Manual.
Callers
Application and ISRs.
...
- Event flag groups must be created before they are used.
- The execution time of this function depends on the number of tasks waiting on the event flag group. However, the execution time is still deterministic.
- Although the example below shows that we are posting from a task,
OSFlagPost()
can also be called from an ISR.
Example Usage