1.改宏,只有在configSUPPORT_STATIC_ALLOCATION==1时,TaskHandle_t xTaskCreateStatic方能编译
2两个函数未定义:1.vApplicationGetIdleTaskMemory
2.vApplicationGetTimerTaskMemory
static StackType_t IdleTaskStack[configMINIMAL_STACK_SIZE];
static StaticTask_t IdleTaskTCB;
static StackType_t TimerTaskStack[configMINIMAL_STACK_SIZE];
static StaticTask_t TimerTaskTCB;
//空闲任务所需内存
void vApplicationGetIdleTaskMemory( StaticTask_t **ppxIdleTaskTCBBuffer,
StackType_t **ppxIdleTaskStackBuffer, uint32_t *pulIdleTaskStackSize )
{
*ppxIdleTaskTCBBuffer=&IdleTaskTCB;
*ppxIdleTaskStackBuffer=IdleTaskStack;
*pulIdleTaskStackSize=configMINIMAL_STACK_SIZE;
}
//定时器任务所需内存
void vApplicationGetTimerTaskMemory( StaticTask_t **ppxTimerTaskTCBBuffer,
StackType_t **pp

本文介绍了在FreeRTOS中如何在configSUPPORT_STATIC_ALLOCATION启用时使用TaskHandle_t xTaskCreateStatic创建任务,并讨论了vApplicationGetIdleTaskMemory和vApplicationGetTimerTaskMemory两个未定义的函数。同时,提供了测试代码,包括任务框架和具体任务的实现。
381

被折叠的 条评论
为什么被折叠?



