Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Files

os.h/os_flag.c

Prototype

Code Block
OS_OBJ_QTY  OSFlagPendAbort (OS_FLAG_GRP  *p_grp,
                             OS_OPT        opt,
                             OS_ERR       *p_err)

Arguments

p_grp

is a pointer to the event flag group for which pend(s) must be aborted.

...

If OS_CFG_ARG_CHK_EN is set to 1 in DEF_ENABLED in os_cfg.h: if p_grp is a NULL pointer.

...

If OS_CFG_OBJ_TYPE_CHK_EN is set to 1 in DEF_ENABLED in os_cfg.h: if p_grp is not pointing to an event flag group.

...

If OS_CFG_ARG_CHK_EN is set to 1 in DEF_ENABLED in os_cfg.h: if specifying 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.

OS_ERR_PEND_ABORT_ISR

If OS_CFG_CALLED_FROM_ISR_CHK_EN set to 1 in DEF_ENABLED in os_cfg.h: This function cannot be called from an ISR.

...

OS_CFG_FLAG_EN and OS_CFG_FLAG_PEND_ABORT_EN must be enabled in os_cfg.h. Refer to uCµC-OS-III Configuration Manual.

Callers

Application.

Notes/Warnings

  1. Event flag groups must be created before they are used.

Example Usage

Code Block
titleOSFlagPendAbort() example usage
          OS_FLAG_GRP  EngineStatus;
           
           
          void Task (void *p_arg)
          {
              OS_ERR      err;
              OS_OBJ_QTY  nbr_tasks;
           
           
              (void)&p_arg;
              while (DEF_ON) {
                  :
                  :
                  nbr_tasks = OSFlagPendAbort(&EngineStatus,
                                              OS_OPT_PEND_ABORT_ALL,
                                              &err);
                  /* Check "err" */
                  :
                  :
              }
          }