1、时间管理
OSTimeDly ():用于停止当前任务进行的运行,延时一段时间后再运行
OSTimeDlyHMSM ():函数与 OSTimeDly() 函数的功能类似,也是用于停止当前任务进行的运行,延时一段时间后再运行(OS_CFG_TIME_DLY_HMSM_EN =1u)
OSTimeDlyResume ():函数用于直接结束其他任务(非当前任务)的延时(OS_CFG_TIME_DLY_RESUME_EN =1u)
OSTimeGet ():函数用于获取当前的时钟节拍计数值
OSTimeSet ():函数用于设置当前的时钟节拍计数值
2、软件定时器
OSTmrCreate ():函数用于声明和创建软件定时器
OSTmrStart ():函数用于启动软件定时器
OSTmrStop ():函数用于停止一个软件定时器
OSTmrDel ():函数用于删除一个软件定时器
3、多值信号量
OSSemCreate ():函数用于声明和创建多值信号量
OSSemPost ():函数用于发布多值信号量
OSSemPend ():函数用于等待一个多值信号量
OSSemPendAbort ():函数用于中止任务对一个多值信号量的等待(OS_CFG_SEM_PEND_ABORT_EN )
OSSemDel ():函数用于删除一个多值信号量(OS_CFG_SEM_DEL_EN )
OSSemSet ():函数用于设置多值信号量的计数值(OS_CFG_SEM_SET_EN )
4、互斥信号量
OSMutexCreate ():函数用于创建多值信号量
OSMutexPost ():函数用于发布互斥信号量
OSMutexPend():函数用于等待互斥信号量OSMutexPendAbort()函数用于终止任务对一个互斥信号量的等待(OS_CFG_MUTEX_PEND_ABORT_EN =1u)
OSMutexDel():函数用于删除互斥信号量(OS_CFG_MUTEX_DEL_EN )
5、消息队列
OSQCreate ():函数用于声明和创建消息队列
OSQPost ():函数用于向消息队列发布一个消息
OSQPend ():函数用于等待获取消息队列的消息
OSQPendAbort ():函数用于中止任务对一个消息队列的等待 (OS_CFG_Q_PEND_ABORT_EN )
OSQDel ():函数用于删除一个消息队列 (OS_CFG_Q_DEL_EN )
OSQFlush ():函数用于清空一个消息队列(OS_CFG_Q_FLUSH_EN )
6、任务信号量
OSTaskSemPost ():函数用于给一个任务发布任务信号量
OSTaskSemPend ():函数用于等待任务信号量
OSTaskSemPendAbort ():函数用于中止一个任务对其任务信号量的等待
7、任务消息队列
OSTaskQPost ():函数用于向任务消息队列发布一个消息
OSTaskQPend ():函数用于等待获取任务消息队列的消息
OSTaskQPendAbort ():函数用于终止任务对其任务消息队列的等待(OS_CFG_TASK_Q_PEND_ABORT_EN )
8、内存管理
OSMemCreate ():函数用于创建一个内存管理对象
OSMemGet ():函数用于向内存管理对象获取一个空闲内存块
OSMemPut ():函数用于把内存块退还回内存管理对象(内存分区)
9、任务管理
OSTaskCreate ():函数 用于创建一个任务
OSTaskSuspend ():函数用于挂起一个任务
OSTaskSuspend ():函数 用于恢复被挂起的任务
OSTaskChangePrio ():函数用于调整任务的优先级(OS_CFG_TASK_CHANGE_PRIO_EN )
OSTaskDel ():函数用于删除任务
9.1 时间片轮转调度
OSSchedRoundRobinCfg ():函数使能时间片轮转调度和配置相关指标(OS_CFG_SCHED_ROUND_ROBIN_EN )
OSSchedRoundRobinYield ():函数用于任务放弃时间片的使用
OSTaskTimeQuantaSet ():函数用于设置任务的时间片
9.2 任务寄存器使用
OSTaskRegSet ():函数可以设置一个任务的任务寄存器的值
OSTaskRegGet ():函数可以获取一个任务的任务寄存器的值
10、中断管理
OSIntEnter ():函数用于标记进入中断服务程序
OSIntExit ():函数用于标记退出中断服务程序
10.1 关中断时间测量
还需要在程序初始化时调用CPU_Init()函数。
CPU_IntDisMeasMaxGet () :函数用于获取整个程序目前最大关中断时间
CPU_IntDisMeasMaxCurReset () :函数用于获取一个程序段的最大关中断时间
CPU_IntDisMeasMaxCurGet ():函数用于结束一个程序段的最大关中断时间