vTaskDelay()和vTaskDelayUntil()是FreeRTOS的两个延时函数,一旦调用任务会进入挂起态,等待时间到达任务会重新到达就绪态。
一、两者区别
- vTaskDelay:至少等待指定个数的Tick Interrupt才能变为就绪状态
- vTaskDelayUntil:等待到指定的绝对时刻,才能变为就绪态。
使用图形表示,上图为vTaskDelay,下图为vTaskDelayUntil。黑色表示任务里函数执行的时间,蓝色表示延时的时间。
vTaskDelay()和vTaskDelayUntil()是FreeRTOS的两个延时函数,一旦调用任务会进入挂起态,等待时间到达任务会重新到达就绪态。
使用图形表示,上图为vTaskDelay,下图为vTaskDelayUntil。黑色表示任务里函数执行的时间,蓝色表示延时的时间。