任务挂起
OSTaskSuspend()函数
任务恢复
OSTaskResume()函数
任务时间轮转
OSSchedRoundRobinCfg()函数
因某些原因暂停运行,但以后还是要运行,用这个函数挂起来
os_task.c
void OSTaskSuspend(OS_TCB *p_tcb,///可以通过挂起指定的控制块NULL挂起自身 OS_ERR *p_err ///保存函数的错误码)
OSTaskSuspend((OS_TCB*)&Task2_TaskTCB,&err);
OSTaskSuspend((OS_TCB*)0,&err);
恢复悬挂任务
os_task.c
void OSTaskResume(OS_TCB *p_tcb,///恢复指定控制块NULL恢复自身 OS_ERR *p_err ///保存函数的错误码)
OSTaskResume((OS_TCB*)&Task2_TaskTCB,&err);
OSTaskResume((OS_TCB*)0,&err);
OS_CFG_SCHED_ROUND_ROBIN_EN 置1 使用时间轮转
设置时间片长度
os_core.c
void OSSchedRoundRobinCfg (CPU_BOOLEAN en,//DEF_ENABLED 打开 关闭DEF_DISENABLED OS_TICK dflt_time_quanta,//设置时间片长度 n*5 ms OS_ERR *p_err ///返回的错码)
OSSchedRoundRobinCfg(DEF_ENABLED,1,&err);
注:还需要在创建任务函数中写入几个时间片,以实现某个函数执行的有效时间