任务管理基础知识
uC/OS-II 中最多可以支持64 个任务,分别对应优先级0~63,其中0 为最高优先级。63为最低级,系统保留了4个最高优先级的任务和4个最低优先级的任务,所有用户可以使用的任务数有56个。
uC/OS-II提供了任务管理的各种函数调用,包括创建任务,删除任务,改变任务的优先级,任务挂起和恢复等。
系统初始化时会自动产生两个任务:一个是空闲任务,它的优先级最低,该任务仅给一个整形变量做累加运算;另一个是系统任务,它的优先级为次低,该任务负责统计当前cpu的利用率。
在系统初始化完毕后启动任务时必须创建一份用户任务。
任务管理相关函数:
1、建立任务OSTaskCreat()/OSTaskCreatExt()
如果想让UCOS管理用户的任务,必须先建立任务。可以通过将任务的地址和其他参数传递到以下两个函数之一来建立任务。当调用OSTaskCreat()时(ucos老版本使用),需要四个参数:
OSTaskCreate(void( *task)(void *pd),
void *pdata,
OS_STK *ptos,
INTU prio)
Task:是指向任务代码的指针;pdata:是任务开始执行时传递给任务的参数的指针,为(void*0时,表示传递一个空指针给函数;ptos:是分配给任务的堆栈的栈顶指针,prio是分配给任务的优先级。
也可

本文介绍了uCOSII操作系统中的任务管理,包括任务基础知识和相关函数,如任务创建、删除、优先级改变、挂起与恢复等。系统默认创建空闲任务和系统任务,任务管理函数如OSTaskCreat()、OSTaskDel()、OSTaskChangePrio()等用于动态管理任务状态和资源。
最低0.47元/天 解锁文章
561

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



