打印
[应用相关]

RTOS-定义空闲任务

[复制链接]
316|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
RTOS-定义空闲任务

//空闲任务堆栈
static StackType_t Idle_Task_Stack[configMINIMAL_STACK_SIZE];
//定时器任务堆栈
static StackType_t Timer_Task_Stack[configTIMER_TASK_STACK_DEPTH];

//空闲任务控制块
static StaticTask_t Idle_Task_TCB;        
//定时器任务控制块
static StaticTask_t Timer_Task_TCB;


//获取空闲任务的任务堆栈和任务控制块内存,因为本例程使用的是静态内存
//因此空闲任务的任务堆栈由用户来提供,接口函数就是下面这个函数

//ppxIdleTaskTCBBuffer:任务控制块内存
//ppxIdleTaskStackBuffer:任务堆栈内存
//pulIdleTaskStackSize:任务堆栈大小
void vApplicationGetIdleTaskMemory(StaticTask_t **ppxIdleTaskTCBBuffer,
                                                                   StackType_t **ppxIdleTaskStackBuffer,
                                                                   uint32_t *pulIdleTaskStackSize)
{
        *ppxIdleTaskTCBBuffer=&Idle_Task_TCB;
        *ppxIdleTaskStackBuffer=Idle_Task_Stack;
        *pulIdleTaskStackSize=configMINIMAL_STACK_SIZE;
}

//获取定时器任务的任务堆栈和任务控制块内存
//ppxTimerTaskTCBBuffer:任务控制块内存
//ppxTimerTaskStackBuffer:任务堆栈内存
//pulTimerTaskStackSize:任务堆栈大小

void vApplicationGetTimerTaskMemory(StaticTask_t **ppxTimerTaskTCBBuffer,
                                                                        StackType_t**ppxTimerTaskStackBuffer,
                                                                        uint32_t *pulTimerTaskStackSize)
{
        *ppxTimerTaskTCBBuffer=&Timer_Task_TCB;
        *ppxTimerTaskStackBuffer=Timer_Task_Stack;
        *pulTimerTaskStackSize=configTIMER_TASK_STACK_DEPTH;
}



使用特权

评论回复
沙发
tpgf| | 2025-4-8 13:52 | 只看该作者
空闲任务确保系统至少有一个任务在运行,这是RTOS连续调度循环的基础

使用特权

评论回复
板凳
heimaojingzhang| | 2025-4-9 21:41 | 只看该作者
空闲任务是RTOS(实时操作系统)内核在处理器不忙时自动创建并以最低优先级运行的特殊任务

使用特权

评论回复
地板
keaibukelian| | 2025-4-9 23:37 | 只看该作者
空闲任务由RTOS内核自动创建,用户无需手动干预。当RTOS内核启动调度器时,如果未禁用空闲任务相关配置,内核会自动创建空闲任务

使用特权

评论回复
5
paotangsan| | 2025-4-10 19:11 | 只看该作者
空闲任务的优先级被设置为系统中最低,以确保所有用户定义的任务能够优先执行

使用特权

评论回复
6
renzheshengui| | 2025-4-10 21:00 | 只看该作者
当所有用户定义的任务都不处于运行状态时,空闲任务占用CPU。空闲任务会执行一些轻量级的操作,如低功耗模式的进入、系统统计信息的更新等

使用特权

评论回复
7
wowu| | 2025-4-10 22:49 | 只看该作者
空闲任务负责释放已删除任务的内存资源,防止内存泄漏

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

314

主题

2345

帖子

4

粉丝