FreeRTOS任务调度程序如何工作的

2021-09-11 08:45发布

我一直在阅读官网文档:

Https://www.freertos.org/a00132.html

我不明白如何使用vTaskStartScheduler()。我可以创建任务,但据我所知,仅创建任务是不够的。只有在调度程序启动时才会执行任务。

示例用法:

void vAFunction( void )
{
     // Tasks can be created before or after starting the RTOS
     scheduler
     xTaskCreate( vTaskCode,
                  "NAME",
                  STACK_SIZE,
                  NULL,
                  tskIDLE_PRIORITY,
                  NULL );

     // Start the real time scheduler.
     vTaskStartScheduler();

     // Will not get here unless there is insufficient RAM.
}


3条回答
电子技术百科
2021-09-11 10:53

任何数量的任务都可以共享相同的优先级。如果configUSE_time_sling未定义,或者configUSE_time_sling设置为1,则同等优先级的就绪状态任务将使用时间切片循环调度方案共享可用的处理时间。

一周热门 更多>