码迷,mamicode.com
首页 > 其他好文 > 详细

FreeRTOS任务创建删除

时间:2017-12-12 22:00:17      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:stat   created   creates   ati   freertos   dynamic   support   内存管理   创建   

FreeRTOS 当前使用的api 接口为

xTaskCreate()
xTaskCreateRestricted()
xTaskCreateStatic()
vTaskDelete()

 


 xTaskCreate() 函数原型

BaseType_t xTaskCreate( TaskFunction_t pxTaskCode,      
             const char * const pcName,      
             const uint16_t usStackDepth,     
             void * const pvParameters,      
             UBaseType_t uxPriority,        
               TaskHandle_t * const pxCreatedTask )

 

pxTaskCode : 实现任务的主要功能的函数,其返回值是void 类型,参数是void * 类型

const pcName:任务名,其长度由宏 configMAX_TASK_NAME_LEN 决定,一般16
StackDepth : 堆栈的大小设置。实际大小是该值4倍,因为它是4字节大小。
pvParameters :需要传递给任务的参数,
uxPriority : 任务优先级,范围:0-configMAX_PRIORITIES
pxCreatedTask :创建成功后的任务句柄保存在这个参数里面,供其他API 使用。

创建成功后,返回值为: pdPASS.   其他则为失败,可能的原因堆内存分配失败。

由于任务需要ram 来进行堆栈的分配和存储,这部分自动从FreeRTOS 的堆中分配。由于这个函数需要系统来帮助任务做这些处理所以需要freertos 提供内存管理和分配,因此对于freeRTOS 来说需要提供一个内存管理文件,如heap_x.c ,同时宏configSUPPORT_DYNAMIC_ALLOCATION 需要定义为1.

 

 

创建实例

 

FreeRTOS任务创建删除

标签:stat   created   creates   ati   freertos   dynamic   support   内存管理   创建   

原文地址:http://www.cnblogs.com/yunxiangworld/p/8029008.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!