os_sem_init

所属模块:通信机制 | 类型:信号量初始化函数

函数简介

os_sem_init 用于初始化指定信号量的初始值, 是信号量机制的基础配置接口。

在系统启动或资源创建阶段,应先调用该函数, 确保信号量处于可用状态。

函数原型

void os_sem_init(u8 id, u8 value);

参数说明

参数 说明
id 信号量ID(0 ~ OS_INFORMATION_PUBLIC-1)
value 信号量初始值

返回值

无返回值。

源码实现

void os_sem_init(u8 id, u8 value) { if(id < OS_INFORMATION_PUBLIC) { OS_INFORMATION_COMMON[id] = value; } }

使用示例

void system_init() { os_sem_init(0, 1); // 初始化二值信号量 os_sem_init(1, 3); // 初始化计数信号量 }

注意事项

信号量必须在使用 os_sem_take / os_sem_give 前初始化,否则行为不可预测。

相关推荐