STM32 HAL freertos零基础(六)计数型信号量

1、计数型信号量

计数型信号量(Counting Semaphore)是另一种类型的信号量,它可以保持一个大于等于0的整数值,这个值表示可用资源的数量。本质上相当于队列长度大于1得队列。经典问题就是剩余车辆统计,出入车辆,车辆数据可以实时更新。

2、相关API函数

xSemaphoreCreateCounting() //使用动态方法创建计数型信号量。
 xSemaphoreCreateCountingStatic() //使用静态方法创建计数型信号量
uxSemaphoreGetCount() //获取信号量的计数值
SemaphoreHandle_t xSemaphoreCreateCounting( UBaseType_t uxMaxCount,
                                            UBaseType_t uxInitialCount);

uxMaxCount:可以达到的最大计数值 uxInitialCount:

创建信号量时分配给信号量的计数值

返回值: 成功,返回对应计数型信号量的句柄; 失败,返回 NULL 。 

你可能感兴趣的:(零基础学习Freertos,stm32,嵌入式硬件,单片机)