毛文龙战绩知乎:uc/os—II下的九个C语言文件功能函数大全(三)
来源:百度文库 编辑:偶看新闻 时间:2024/05/08 09:30:47
七、OS_SEM.C
(1)INT16U OSSemAccept (OS_EVENT *pevent)
// 无等待的请求信号量
(2)OS_EVENT *OSSemCreate (INT16U cnt)
// 创建信号量
(3)OS_EVENT *OSSemDel (OS_EVENT *pevent, INT8U opt, INT8U *err)
// 删除信号量
(4)void OSSemPend (OS_EVENT *pevent, INT16U timeout, INT8U *err)
// 有等待的请求信号量
(5)INT8U OSSemPost (OS_EVENT *pevent)
// 发送(释放)信号量
(6)INT8U OSSemQuery (OS_EVENT *pevent, OS_SEM_DATA *pdata)
// 获取信号量的当前状态
八、OS_TASK.C
(1)INT8U OSTaskChangePrio (INT8U oldprio, INT8U newprio)
// 任务优先级别的改变
(2)INT8U OSTaskCreate (void (*task)(void *pd), void *pdata, OS_STK *ptos, INT8U prio)
// 任务的创建
(3)INT8U OSTaskCreateExt (void (*task)(void *pd), // 指向任务的指针
void *pdata, // 传递给任务的参数
OS_STK *ptos, // 指向任务堆栈栈顶的指针
INT8U prio, // 创建任务的优先级
INT16U id, // 任务的标识
OS_STK *pbos, // 任务堆栈栈底的指针
INT32U stk_size, // 任务堆栈的长度
void *pext, // 指向附加数据域的指针
INT16U opt) // 用于设定操作的选项
// 任务的另一种创建函数,更加灵活,但也增加了额外的开销
(4)INT8U OSTaskDel (INT8U prio) // 任务的删除
(5)INT8U OSTaskDelReq (INT8U prio) // 请求删除任务函数
(6)INT8U OSTaskResume (INT8U prio) // 任务的恢复
(7)INT8U OSTaskStkChk (INT8U prio, OS_STK_DATA *pdata)
// 校核空余内存的数量
(8)INT8U OSTaskSuspend (INT8U prio) // 任务的挂起,可用来挂起自身或除空闲任务之外的任何任务
(9)INT8U OSTaskQuery (INT8U prio, OS_TCB *pdata)
// 任务的查询
九、OS_TIME.C
(1)void OSTimeDly (INT16U ticks) // 以时钟节拍数为单位延时
(2)INT8U OSTimeDlyHMSM (INT8U hours, INT8U minutes, INT8U seconds, INT16U milli)
// 用时、分、秒、毫秒为单位延时
(3)INT8U OSTimeDlyResume (INT8U prio)
// 取消延时,若任务比正在运行的任务级别高,则立即引发一次调度
(4)INT32U OSTimeGet (void) // 获取OSTime 值
(5)void OSTimeSet (INT32U ticks) // 设置 OSTime 值
注:INT32U OSTime // 全局变量,用以记录系统发生的时钟节拍