📄 ucos_ii.h
字号:
* MESSAGE MAILBOX MANAGEMENT**********************************************************************************************************/#if OS_MBOX_EN > 0#if OS_MBOX_ACCEPT_EN > 0void *OSMboxAccept (OS_EVENT *pevent);#endifOS_EVENT *OSMboxCreate (void *pmsg);#if OS_MBOX_DEL_EN > 0OS_EVENT *OSMboxDel (OS_EVENT *pevent, INT8U opt, INT8U *perr);#endifvoid *OSMboxPend (OS_EVENT *pevent, INT16U timeout, INT8U *perr);#if OS_MBOX_PEND_ABORT_EN > 0INT8U OSMboxPendAbort (OS_EVENT *pevent, INT8U opt, INT8U *perr);#endif#if OS_MBOX_POST_EN > 0INT8U OSMboxPost (OS_EVENT *pevent, void *pmsg);#endif#if OS_MBOX_POST_OPT_EN > 0INT8U OSMboxPostOpt (OS_EVENT *pevent, void *pmsg, INT8U opt);#endif#if OS_MBOX_QUERY_EN > 0INT8U OSMboxQuery (OS_EVENT *pevent, OS_MBOX_DATA *p_mbox_data);#endif#endif/*********************************************************************************************************** MEMORY MANAGEMENT**********************************************************************************************************/#if (OS_MEM_EN > 0) && (OS_MAX_MEM_PART > 0)OS_MEM *OSMemCreate (void *addr, INT32U nblks, INT32U blksize, INT8U *perr);void *OSMemGet (OS_MEM *pmem, INT8U *perr);#if OS_MEM_NAME_SIZE > 1INT8U OSMemNameGet (OS_MEM *pmem, INT8U *pname, INT8U *perr);void OSMemNameSet (OS_MEM *pmem, INT8U *pname, INT8U *perr);#endifINT8U OSMemPut (OS_MEM *pmem, void *pblk);#if OS_MEM_QUERY_EN > 0INT8U OSMemQuery (OS_MEM *pmem, OS_MEM_DATA *p_mem_data);#endif#endif/*********************************************************************************************************** MUTUAL EXCLUSION SEMAPHORE MANAGEMENT**********************************************************************************************************/#if OS_MUTEX_EN > 0#if OS_MUTEX_ACCEPT_EN > 0BOOLEAN OSMutexAccept (OS_EVENT *pevent, INT8U *perr);#endifOS_EVENT *OSMutexCreate (INT8U prio, INT8U *perr);#if OS_MUTEX_DEL_EN > 0OS_EVENT *OSMutexDel (OS_EVENT *pevent, INT8U opt, INT8U *perr);#endifvoid OSMutexPend (OS_EVENT *pevent, INT16U timeout, INT8U *perr);INT8U OSMutexPost (OS_EVENT *pevent);#if OS_MUTEX_QUERY_EN > 0INT8U OSMutexQuery (OS_EVENT *pevent, OS_MUTEX_DATA *p_mutex_data);#endif#endif/*$PAGE*//*********************************************************************************************************** MESSAGE QUEUE MANAGEMENT**********************************************************************************************************/#if (OS_Q_EN > 0) && (OS_MAX_QS > 0)#if OS_Q_ACCEPT_EN > 0void *OSQAccept (OS_EVENT *pevent, INT8U *perr);#endifOS_EVENT *OSQCreate (void **start, INT16U size);#if OS_Q_DEL_EN > 0OS_EVENT *OSQDel (OS_EVENT *pevent, INT8U opt, INT8U *perr);#endif#if OS_Q_FLUSH_EN > 0INT8U OSQFlush (OS_EVENT *pevent);#endifvoid *OSQPend (OS_EVENT *pevent, INT16U timeout, INT8U *perr);#if OS_Q_PEND_ABORT_EN > 0INT8U OSQPendAbort (OS_EVENT *pevent, INT8U opt, INT8U *perr);#endif#if OS_Q_POST_EN > 0INT8U OSQPost (OS_EVENT *pevent, void *pmsg);#endif#if OS_Q_POST_FRONT_EN > 0INT8U OSQPostFront (OS_EVENT *pevent, void *pmsg);#endif#if OS_Q_POST_OPT_EN > 0INT8U OSQPostOpt (OS_EVENT *pevent, void *pmsg, INT8U opt);#endif#if OS_Q_QUERY_EN > 0INT8U OSQQuery (OS_EVENT *pevent, OS_Q_DATA *p_q_data);#endif#endif/*$PAGE*//*********************************************************************************************************** SEMAPHORE MANAGEMENT**********************************************************************************************************/#if OS_SEM_EN > 0#if OS_SEM_ACCEPT_EN > 0INT16U OSSemAccept (OS_EVENT *pevent);#endifOS_EVENT *OSSemCreate (INT16U cnt);#if OS_SEM_DEL_EN > 0OS_EVENT *OSSemDel (OS_EVENT *pevent, INT8U opt, INT8U *perr);#endifvoid OSSemPend (OS_EVENT *pevent, INT16U timeout, INT8U *perr);#if OS_SEM_PEND_ABORT_EN > 0INT8U OSSemPendAbort (OS_EVENT *pevent, INT8U opt, INT8U *perr);#endifINT8U OSSemPost (OS_EVENT *pevent);#if OS_SEM_QUERY_EN > 0INT8U OSSemQuery (OS_EVENT *pevent, OS_SEM_DATA *p_sem_data);#endif#if OS_SEM_SET_EN > 0void OSSemSet (OS_EVENT *pevent, INT16U cnt, INT8U *perr);#endif#endif/*$PAGE*//*********************************************************************************************************** TASK MANAGEMENT**********************************************************************************************************/#if OS_TASK_CHANGE_PRIO_EN > 0INT8U OSTaskChangePrio (INT8U oldprio, INT8U newprio);#endif#if OS_TASK_CREATE_EN > 0INT8U OSTaskCreate (void (*task)(void *p_arg), void *p_arg, OS_STK *ptos, INT8U prio);#endif#if OS_TASK_CREATE_EXT_EN > 0INT8U OSTaskCreateExt (void (*task)(void *p_arg), void *p_arg, OS_STK *ptos, INT8U prio, INT16U id, OS_STK *pbos, INT32U stk_size, void *pext, INT16U opt);#endif#if OS_TASK_DEL_EN > 0INT8U OSTaskDel (INT8U prio);INT8U OSTaskDelReq (INT8U prio);#endif#if OS_TASK_NAME_SIZE > 1INT8U OSTaskNameGet (INT8U prio, INT8U *pname, INT8U *perr);void OSTaskNameSet (INT8U prio, INT8U *pname, INT8U *perr);#endif#if OS_TASK_SUSPEND_EN > 0INT8U OSTaskResume (INT8U prio);INT8U OSTaskSuspend (INT8U prio);#endif#if (OS_TASK_STAT_STK_CHK_EN > 0) && (OS_TASK_CREATE_EXT_EN > 0)INT8U OSTaskStkChk (INT8U prio, OS_STK_DATA *p_stk_data);#endif#if OS_TASK_QUERY_EN > 0INT8U OSTaskQuery (INT8U prio, OS_TCB *p_task_data);#endif/*$PAGE*//*********************************************************************************************************** TIME MANAGEMENT**********************************************************************************************************/void OSTimeDly (INT16U ticks);#if OS_TIME_DLY_HMSM_EN > 0INT8U OSTimeDlyHMSM (INT8U hours, INT8U minutes, INT8U seconds, INT16U milli);#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -