os_event_init
所属模块:通信机制 | 类型:事件初始化函数
函数简介
os_event_init 用于初始化事件资源槽位,
在关闭中断保护下对资源结构进行安全重置。
该函数用于事件系统初始化或运行时重建资源状态。
函数原型
char os_event_init(u8 obj);
参数说明
| 参数 |
说明 |
| obj |
事件ID(0 ~ OS_RESOURCE_MAX-1) |
源码实现
#include "hrtos_internal.h"
/*
* 事件初始化
*/
char os_event_init(u8 obj)
{
if(obj >= OS_RESOURCE_MAX)
{
return -1;
}
EA = 0;
os_res_init(&OS_RES[obj]);
EA = 1;
return 1;
}
使用示例
void system_init()
{
os_event_init(2);
}
注意事项
初始化过程中关闭中断(EA=0)以避免资源竞争,
初始化完成后必须恢复中断状态。