CMSIS-RTOS2 文档翻译 之 参考(RTX5 特定的 API 之 事件功能(事件标志函数))

事件标志函数

事件功能

事件标志函数生成的事件。更多...

函数

void  EvrRtxEventFlagsError (osEventFlagsId_t ef_id, int32_t status)
  事件标志上的事件错误(错误)更多...
 
void  EvrRtxEventFlagsNew (const osEventFlagsAttr_t *attr)
  事件标志上的事件创建和初始化(API)更多...
 
void  EvrRtxEventFlagsCreated (osEventFlagsId_t ef_id, const char *name)
  成功的事件标志上的事件创建(Op)更多...
 
void  EvrRtxEventFlagsGetName (osEventFlagsId_t ef_id, const char *name)
  事件标志上的事件名称检索(API)更多...
 
void  EvrRtxEventFlagsWaitTimeout (osEventFlagsId_t ef_id)
  事件标志等待超时事件(Op)更多...
 
void  EvrRtxEventFlagsDelete (osEventFlagsId_t ef_id)
  事件标志上的事件删除(API)更多...
 
void  EvrRtxEventFlagsDestroyed (osEventFlagsId_t ef_id)
  成功事件标志上的事件删除(操作)更多...
 

 

描述

函数文档

void EvrRtxEventFlagsError ( osEventFlagsId_t  ef_id,
    int32_t  status 
  )    

参数

[in] ef_id 事件标志由 osEventFlagsNew 获取的 ID 或 ID 未知时为 NULL。
[in] status 扩展执行状态。

事件标志例程由于错误而完成执行时,会生成事件 EventFlagsError

status 参数指示执行状态,可以是 osStatus_t 代码之一,也可以是下表中汇总的扩展执行状态代码之一。

扩展状态代码 描述
osRtxErrorKernelNotReady 内核调度程序未处于就绪状态。
osRtxErrorKernelNotRunning 内核调度程序没有执行 - 没有正在运行的线程。
osRtxErrorInvalidControlBlock 指定了具有无效对齐或大小的对象控制块。
osRtxErrorInvalidDataMemory 指定了无效对齐或大小的对象数据存储器。
osRtxErrorInvalidThreadStack 指定了无效对齐或大小的线程堆栈内存。
osRtxErrorInvalidPriority 指定了无效的线程优先级。
osRtxErrorThreadNotJoinable 指定的线程不可连接。
osRtxErrorMutexNotOwned 指定的互斥锁不归当前运行的线程所有。
osRtxErrorMutexNotLocked 指定的互斥锁未锁定。
osRtxErrorMutexLockLimit 达到的最大递归互斥锁数。
osRtxErrorSemaphoreCountLimit 达到了信号量计数限制。
osRtxErrorTZ_InitContext_S 安全上下文内存系统初始化失败
osRtxErrorTZ_AllocContext_S 安全上下文内存分配失败。
osRtxErrorTZ_FreeContext_S 安全上下文内存释放失败。
osRtxErrorTZ_LoadContext_S 安全上下文加载失败。
osRtxErrorTZ_SaveContext_S 安全上下文保存失败。

事件记录器中的值显示:

  • ef_id : 事件标志 ID。
  • status : 执行状态代码。

 

void EvrRtxEventFlagsNew ( const osEventFlagsAttr_t attr )  

参数

[in] attr 事件标志属性。

调用函数 osEventFlagsNew 时会生成事件 EventFlagsNew

事件记录器中的值显示:

  • attr : 事件标志属性的内存地址,如果未指定,则为 0。

如果在 API 调用中提供了事件标志属性,则它们也会在事件记录器中详细说明。

 

void EvrRtxEventFlagsCreated ( osEventFlagsId_t  ef_id,
    const char *  name 
  )    

参数

[in] ef_id 事件标志由 osEventFlagsNew 获取的 ID。
[in] name 指向事件标志对象名称的指针。

当函数 osEventFlagsNew 成功创建事件标志对象时,将生成 EventFlagsCreated 事件。

事件记录器中的值显示:

  • ef_id : 事件标志 ID。

 

void EvrRtxEventFlagsGetName ( osEventFlagsId_t  ef_id,
    const char *  name 
  )    

参数

[in] ef_id 事件标志由 osEventFlagsNew 获取的 ID。
[in] name 指向事件标志对象名称的指针。

调用函数 osEventFlagsGetName 并且其执行结果已知时,将生成 EventFlagsGetName 事件。

事件记录器中的值显示:

  • ef_id : 事件标志 ID。
  • name : 检索名称字符串的内存地址(如果发生故障,则为 0)。

 

void EvrRtxEventFlagsWaitTimeout ( osEventFlagsId_t  ef_id )  

参数

[in] ef_id 事件标志由 osEventFlagsNew 获取的 ID。

当等待事件标志变为信号时,由于过期的等待超时而中止,则生成事件 EventFlagsWaitTimeout

事件记录器中的值显示:

  • ef_id : 事件标志 ID。

 

void EvrRtxEventFlagsDelete ( osEventFlagsId_t  ef_id )  

参数

[in] ef_id 事件标志由 osEventFlagsNew 获取的 ID。

调用函数 osEventFlagsDelete 时会生成事件 EventFlagsDelete

事件记录器中的值显示:

  • ef_id : 事件标志 ID。

 

void EvrRtxEventFlagsDestroyed ( osEventFlagsId_t  ef_id )  

参数

[in] ef_id 事件标志由 osEventFlagsNew 获取的 ID。

当函数 osEventFlagsDelete 成功删除事件标志对象时,将生成 EventFlagsDestroyed 事件。

事件记录器中的值显示:

  • ef_id : 事件标志 ID。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章