互斥锁(互斥量Mutex)

实际上使用信号量控制访问权限的,确保同一时间只有一个任务可以访问资源,避免数据竞争。

谁访问谁释放。当一个任务获取了锁(Take),其他任务就无法再获取该锁,直到原任务释放锁(Give)

使用流程:获取->进行硬件/参数访问->释放

1.  获取信号量

xSemaphoreTake(bin_sem,portMAX_DELAY)

2.  释放信号量

xSemaphoreGive(bin_sem);