xTaskCreate()的使用
* xTaskCreate()只能用于创建不受限制的任务访问整个微控制器的内存映射。包括MPU在内的系统支持可以创建MPU约束任务使用
xTaskCreate(vTaskCode, "NAME", STACK_SIZE, &ucParameterToPass, tskIDLE_PRIORITY, &xHandle);
xTaskCreate()的参数详解:
①param pvTaskCode任务入口函数的指针。任务必须实现为永不返回(即连续循环),或者应该是使用vTaskDelete函数终止。
②param pcName任务的描述性名称。这主要是用来促进调试。由configMAX_TASK_NAME_LEN - default定义的最大长度是16。
③param pvParameters指定的任务栈的大小
④param uxPriority任务应该运行的优先级。数字越大,优先级越大
⑤param pxCreatedTask用于返回已创建任务的句柄可以被引用。
返回pdPASS如果任务已成功创建并添加到ready列表,否则是在文件projdefs.h中定义的错误代码如果程序使用线程本地变量(用"__thread"关键字指定的变量)然后它们的存储将分配到任务的堆栈上。
*使用例子:
删除任务1:
只输出一次hello world,使用句柄删除了
删除任务2: