临界断代码也叫做临界区,是指那些必须完整运行,不能被打断的代码段,FreeRTOS与临界断代码保护有关的函数有4个:
taskENTER_CRITICAL() ——任务级进入临界段
taskEXIT_CRITICAL() ——任务级退出临界段
taskENTER_CRITICAL_FROM_ISR() ——中断级进入临界段
taskEXIT_CRITICAL_FROM_ISR( ) ——中断级退出临界段
void vPortEnterCritical( void ) //进入临界段保护函数
{
portDISABLE_INTERRUPTS(); //关闭中断
uxCriticalNesting++; //计数加1