FreeRtos任务的创建与删除
任务的创建与删除本质上是调用FreeRtos的API函数。
API函数:
1.xTaskGreate():动态创建任务函数;
2.xTaskGreateStatic();静态创建任务函数;
3.xTaskDelete():任务删除
动态创建任务:任务的任务控制块以及任务的栈空间所需要的内存,均由FreeRtos的管理的堆中分配,系统运行时地址随机。
静态创建任务:任务的任务控制块以及任务的栈空间所需要的内存,均由用户自己分配,系统运行时地址不会修改。
动态创建任务函数:
Basetype_t xTaskGreat
{
TaskFunction_t pxTaskCode;
//指向任务函数的指针
const charconst pcName;
//任务名字,最大长度configMAX_TASK_NAME_LEN(一般默认16即任务名最长16个字符)
const configSTACK_DEPTH_TYPE usStackDepth;
//任务堆栈的大小,以字为单位,1个字等于4个字节大小。
voidconst pvParameters;
//传递给任务函数的参数,很少用,一般为NULL
UBasetype_t uxPriority;
//任务优先级,范围0–configMAX_PRIORITIES-1;一般为0-31
TaskHandle_t*const pxGreatedTask;
//任务句柄,就是任务的控制块,任务删除时候就是使用这个
}
函数返回值
FreeRtos自学笔记3-----参考正点原子视频
于 2024-03-06 22:29:46 首次发布