您的位置 首页 5G

UC/OSⅡ根本函数

UCOSⅡ基本函数***************************************************************************************事件标志

UC/OSⅡ 根本函数*************************************************************************************** 事情标志办理 (EVENT FLAGS MANAGEMENT)** OSFlagAccept() 查看事情标志组函数(标志组的指针、事情标志位、等候事情标志位的方法、过错码指针)* OSFlagCreate() 树立一个事情标志组(初值、过错码)* OSFlagDel() 删去一个事情标志组(指针、条件值、过错值)* OSFlagPend() 等候事情标志组的事情标志位(事情组指针、需求查看的标志位、等候事情标志位的方法、* 答应等候的时钟节拍、犯错代码的时钟节拍)* OSFlagPost() 置位或清0事情标志组中的标志位(指针、标志位、条件值、过错码)* OSFlagQuery() 查询事情标志组的当时事情标志状况(事情标志组的指针、过错代码的指针)***************************************************************************************************************************************************************************** 音讯邮箱办理 (MESSAGE MAILBOX MANAGEMENT)** OSMboxAccept () 查看音讯邮箱(音讯邮箱指针)* OSMboxCreate () 树立并初始化一个音讯邮箱(msg 参数不为空含内容)* OSMboxDel () 删去音讯邮箱(音讯邮箱指针、删去条件、犯错代码指针)* OSMboxPend () 等候一个音讯邮箱函数(音讯邮箱指针、答应等候的时钟节拍、代码过错指针)* OSMboxPost () 发送音讯函数(音讯邮箱指针、行将实践发送给使命的音讯)* OSMboxPostOpt () 向邮箱发送一则音讯(邮箱指针、音讯、条件)* OSMboxQuery () 查询一个邮箱的当时状况(信号量指针、状况数据结构指针)***************************************************************************************************************************************************************************** 内存办理项 (MEMORY MANAGEMENT)* OSMemCreate () 树立并初始化一块内存区(开始地址、需求的内存块数目、内存块巨细、回来过错的指针)* OSMemGet () 从内存区分配一个内存块* OSMemPut () 开释一个内存块,内存块有必要开释回原先恳求的内存区* OSMemQuery () 得到内存区的信息***************************************************************************************************************************************************************************** 互斥型信号量项办理 (MUTUAL EXCLUSION SEMAPHORE MANAGEMENT)** OSMutexAccept () 无等候地获取互斥型信号量[使命不挂起](信号量指针、过错代码)* OSMutexCreate () 树立并初始化一个互斥型信号量(优先级承继优先级(PIP)、犯错代码指针)* OSMutexDel () 删去互斥型信号量(信号指针、删去条件、过错指针)* OSMutexPend () 等候一个互斥型信号量(指针、等候超时时限、犯错代码指针)* OSMutexPost () 开释一个互斥型信号量(互斥型信号量指针)* OSMutexQuery () 查询一个互斥型信号量的当时状况(互斥型信号量指针、状况数据结构指针)***************************************************************************************************************************************************************************** 音讯行列办理 (MESSAGE QUEUE MANAGEMENT)** OSQAccept () 查看音讯行列中是否现已有需求的音讯(音讯行列的指针)* OSQCreate () 树立一个音讯行列(音讯内存区的基地址(指针数组)、音讯内存区的巨细)* OSQDel () 删去一个音讯行列(音讯行列指针、删去条件、过错指针)* OSQFlush () 清空音讯行列(指向得到音讯行列的指针)* OSQPend () 使命等候音讯行列中的音讯(音讯行列指针、答应等候的时钟节拍、代码过错指针)* OSQPost () 向音讯行列发送一则音讯FIFO(音讯行列指针、发送的音讯)* OSQPostFront () 向音讯行列发送一则音讯LIFO(音讯行列指针、发送的音讯)* OSQPostOpt () 向音讯行列发送一则音讯LIFO(音讯行列指针、发送的音讯、发送条件)* OSQQuery () 查询一个音讯行列的当时状况(信号量指针、状况数据结构指针)**************************************************************************************行列操控块是一个用于保护音讯行列信息的数据结构,它包含了以下的一些域。这儿,仍然在各个变量前参加一个[.]来表明它们是数据结构中的一个域。* 1).OSQPtr: 在闲暇行列操控块中链接一切的行列操控块。一旦树立了音讯行列,该域就不再有用了。* 2).OSQStart: 是指向音讯行列的指针数组的开始地址的指针。用户应用程序在运用音讯行列之前有必要先界说该数组* 3).OSQEnd: 是指向音讯行列完毕单元的下一个地址的指针。该指针使得音讯行列构成一个循环的缓冲区。* 4).OSQIn: 是指向音讯行列中刺进下一条音讯的方位的指针。当.OSQIn和.OSQEnd持平时,.OSQIn被调整指向音讯行列的开始单元。* 5).OSQOut: 是指向音讯行列中下一个取出音讯的方位的指针。当.OSQOut和.OSQEnd持平时,.OSQOut被调整指向音讯行列的开始单元。* 6).OSQSize: 是音讯行列中总的单元数。该值是在树立音讯行列时由用户应用程序决议的。在uC/OS-II中,该值最大可所以65,535。* 7).OSQEntries: 是音讯行列中当时的音讯数量。当音讯行列是空的时,该值为0。当音讯行列满了今后,该值和 .OSQSize值相同。 在音讯行列刚刚树立时,该值为0。**************************************************************************************/************************************************************************************************** 使命办理 (TASK MANAGEMENT)** OSTaskChangePrio () 改动一个使命的优先级(使命旧的优先级、使命新的优先级)* OSTaskCreate () 树立使命(使命代码指针、传递参数指针、分配使命仓库栈顶指针、使命优先级)* OSTaskCreateExt () 树立扩展使命(使命代码指针/传递参数指针/分配使命仓库栈顶指针/分配使命优先级* //(未来的)优先级标识(与优先级相同)/分配使命仓库栈底指针/指定仓库的容量(查验用)* //指向用户附加的数据域的指针/树立使命设定选项)* OSTaskDel () 删去使命(使命的优先级)* OSTaskDelReq () 恳求一个使命删去其它使命或本身?(使命的优先级)* OSTaskResume () 唤醒一个用OSTaskSuspend()函数挂起的使命(使命的优先级)* OSTaskStkChk () 查看使命仓库状况(使命优先级、查验仓库数据结构)* OSTaskSuspend () 无条件挂起一个使命(使命优先级)* OSTaskQuery () 获取使命信息(使命指针、保存数据结构指针)**************************************************************************************/**************************************************************************************** 时钟办理项 (TIME MANAGEMENT)** OSTimeDly () 使命延时函数(时钟节拍数)* OSTimeDlyHMSM () 将一个使命延时若干时刻(设守时、分、秒、毫秒)* OSTimeDlyResume () 唤醒一个用OSTimeDly()或OSTimeDlyHMSM()函数的使命(优先级)* OSTimeGet () 获取当时体系时钟数值* OSTimeSet () 设置当时体系时钟数值**************************************************************************************/************************************************************************************** 稠浊函数界说** OSInit() 初始化UCOS-II函数* OSIntEnter() 中止函数正在履行* OSIntExit() 中止函数现已完结(脱离中止)* OSSchedLock() 给调度器上锁* OSSchedUnlock() 给调度器解锁* OSStart() 发动多个使命* OSStatInit() 计算使命初始化* OSVersion() 取得版本号**************************************************************************************/************************************************************************************** 内部函数原型 INTERNAL FUNCTION PROTOTYPES* 你在应用程序中不能运用它们 (Your application MUST NOT call these functions)** OS_Dummy() 树立一个虚拟函数* OS_EventTaskRdy() 使一个使命进入安排妥当态(OS_EVENT *pevent, void *msg, INT8U msk)* OS_EventTaskWait() 使一个使命进入等候某事情产生状况(ECB指针)* OS_EventTO() 因为超时而将使命置为安排妥当态(ECB指针)* OS_EventWaitListInit() 事情操控块列表初始化(事情操控块指针)* OS_FlagInit() 初始化事情标志结构* OS_FlagUnlink() 把这个OS_FLAG_NODE从事情标志组的等候使命链表中删去(OS_FLAG_NODE *pnode)* OS_MemInit() 初始化内存分区* OS_QInit() 初始化事情行列结构* OS_Sched() 使命调度函数* OS_TaskIdle() 闲暇使命函数(指向一个数据结构)* OS_TaskStat() 计算使命(指向一个数据结构)* OS_TCBInit() 初始化使命操控块TCB(优先级指针、栈顶指针、栈底指针、使命标志符、* 仓库容量、扩展指针、选择项)

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/5g/257655.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部