FreeRTOS 任务管理
FreeRTOS 是一个轻量级的实时操作系统,广泛应用于嵌入式系统中。
任务创建
void vTaskFunction(void *pvParameters) {
for(;;) {
// 任务代码
vTaskDelay(pdMS_TO_TICKS(1000));
}
}
xTaskCreate(
vTaskFunction, // 任务函数
"TaskName", // 任务名称
128, // 堆栈大小
NULL, // 参数
1, // 优先级
&xTaskHandle // 任务句柄
);
任务调度
FreeRTOS 使用抢占式调度算法,高优先级任务可以抢占低优先级任务的执行。
任务状态
- 运行态(Running)
- 就绪态(Ready)
- 阻塞态(Blocked)
- 挂起态(Suspended)