FreeRTOS任务优先级动态改变
在本系列 FreeRTOS 与 Arduino 实例中,本实例将演示如何在程序执行期间或调度程序启动后更改任务优先级。 前面的实例,我们已经看到了如何使用 FreeRTOS API 和 Arduino 创建任务。 我们知道在使用 vCreateTask() 函数创建任务时定义任务优先级。 但是在程序执行期间,可能更改任务优先级。
1、任务优先级设置API
任务优先级改变函数的原型如下:
void vTaskPrioritySet( TaskHandle_t pxTask, UBaseType_t uxNewPriority );
第一个参数是我们想要改变优先级的任务的句柄。 使用 xTaskCreate() API 函数创建任务时,还定义了优先级。 或者,任务可以通过传递 NULL 代替有效的任务句柄来更改其自己的优先级。
第二个参数定