XFusion API v1.3.0
载入中...
搜索中...
未找到
xf_osal_event.h 文件参考

事件标志可以同步线程。 更多...

#include "xf_osal_def.h"
xf_osal_event.h 的引用(Include)关系图:

浏览源代码.

结构体

struct  _xf_osal_event_attr_t
 事件标志的属性结构。 更多...
 

宏定义

#define MAX_BITS_EVENT_GROUPS   24U
 FreeRTOS 对接中,事件组里用户可用的位数(bit0 ~ bit23)。
 
#define XF_OSAL_EVENT_FLAGS_INVALID_BITS   (~((1UL << MAX_BITS_EVENT_GROUPS) - 1U))
 FreeRTOS 对接里,无效(保留)事件位掩码(bit24 ~ bit31)。
 

类型定义

typedef void * xf_osal_event_t
 事件句柄。
 
typedef struct _xf_osal_event_attr_t xf_osal_event_attr_t
 事件标志的属性结构。
 

函数

xf_osal_event_t xf_osal_event_create (const xf_osal_event_attr_t *attr)
 创建并初始化事件标志对象。
 
xf_err_t xf_osal_event_set (xf_osal_event_t event, uint32_t flags)
 设置指定的事件标志。
 
xf_err_t xf_osal_event_clear (xf_osal_event_t event, uint32_t flags)
 清除指定的事件标志。
 
uint32_t xf_osal_event_get (xf_osal_event_t event)
 获取当前事件标志。
 
xf_err_t xf_osal_event_wait (xf_osal_event_t event, uint32_t flags, uint32_t options, uint32_t timeout)
 等待一个或多个事件标志发出信号。
 
xf_err_t xf_osal_event_delete (xf_osal_event_t event)
 删除事件标志对象。
 

详细描述

事件标志可以同步线程。

作者
cangyu(sky.k.nosp@m.irto.nosp@m.@qq.c.nosp@m.om)
版本
0.1
日期
2023-12-06

XF_OSAL 中的事件标志管理功能允许您控制或等待事件标志。 每个信号最多有 31 个事件标志(实际可用个数根据对接平台决定)。

对于线程:

当线程唤醒并恢复执行时,其信号标志会自动清除(除非指定了 XF_OSAL_NO_CLEAR. )。

注解
可以在中断服务函数中调用的函数:

在文件 xf_osal_event.h 中定义.