亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? os_kc51.h

?? The uC OS-II port for Keil C V6.20, V6.21 or higher
?? H
字號:
/*
*********************************************************************************************************
* uC/OS-II port for Keil C
* By John X. Liu, China, (johnxliu@163.com)
*
* IMPORTANT:
* Due to the special grammer of Keil C, all functions by default are non-reentrant. But uC/OS-II 
* functions must be reentrant, so it is needed to modify the declarations of all functions in head files 
* and c source files.
* Now this file tells what the functions should be. Thus if you get any 'redefinition error' at compiling 
* time, don't modify this file but to modify the head files and c source files to make them conform to 
* the declarations in this file.
*********************************************************************************************************
*/
#ifndef __OS_KC51_H
#define __OS_KC51_H

/*
*********************************************************************************************************
*                                         EVENT FLAGS MANAGEMENT
*********************************************************************************************************
*/

#if (OS_VERSION >= 251) && (OS_FLAG_EN > 0) && (OS_MAX_FLAGS > 0)

#if OS_FLAG_ACCEPT_EN > 0
OS_FLAGS      OSFlagAccept(OS_FLAG_GRP *pgrp, OS_FLAGS flags, INT8U wait_type, INT8U *err) KCREENTRANT;
#endif

OS_FLAG_GRP  *OSFlagCreate(OS_FLAGS flags, INT8U *err) KCREENTRANT;

#if OS_FLAG_DEL_EN > 0
OS_FLAG_GRP  *OSFlagDel(OS_FLAG_GRP *pgrp, INT8U opt, INT8U *err) KCREENTRANT;
#endif

OS_FLAGS      OSFlagPend(OS_FLAG_GRP *pgrp, OS_FLAGS flags, INT8U wait_type, INT16U timeout, INT8U *err) KCREENTRANT;
OS_FLAGS      OSFlagPost(OS_FLAG_GRP *pgrp, OS_FLAGS flags, INT8U operation, INT8U *err) KCREENTRANT;

#if OS_FLAG_QUERY_EN > 0
OS_FLAGS      OSFlagQuery(OS_FLAG_GRP *pgrp, INT8U *err) KCREENTRANT;
#endif
#endif

/*
*********************************************************************************************************
*                                        MESSAGE MAILBOX MANAGEMENT
*********************************************************************************************************
*/

#if OS_MBOX_EN > 0

#if OS_MBOX_ACCEPT_EN > 0
void         *OSMboxAccept(OS_EVENT *pevent) KCREENTRANT;
#endif

OS_EVENT     *OSMboxCreate(void *msg) KCREENTRANT;

#if OS_MBOX_DEL_EN > 0
OS_EVENT     *OSMboxDel(OS_EVENT *pevent, INT8U opt, INT8U *err) KCREENTRANT;
#endif

void         *OSMboxPend(OS_EVENT *pevent, INT16U timeout, INT8U *err) KCREENTRANT;

#if OS_MBOX_POST_EN > 0
INT8U         OSMboxPost(OS_EVENT *pevent, void *msg) KCREENTRANT;
#endif

#if OS_MBOX_POST_OPT_EN > 0
INT8U         OSMboxPostOpt(OS_EVENT *pevent, void *msg, INT8U opt) KCREENTRANT;
#endif

#if OS_MBOX_QUERY_EN > 0
INT8U         OSMboxQuery(OS_EVENT *pevent, OS_MBOX_DATA *pdata) KCREENTRANT;
#endif
#endif

/*
*********************************************************************************************************
*                                           MEMORY MANAGEMENT
*********************************************************************************************************
*/

#if (OS_MEM_EN > 0) && (OS_MAX_MEM_PART > 0)

OS_MEM       *OSMemCreate(void *addr, INT32U nblks, INT32U blksize, INT8U *err) KCREENTRANT;
void         *OSMemGet(OS_MEM *pmem, INT8U *err) KCREENTRANT;
INT8U         OSMemPut(OS_MEM *pmem, void *pblk) KCREENTRANT;

#if OS_MEM_QUERY_EN > 0
INT8U         OSMemQuery(OS_MEM *pmem, OS_MEM_DATA *pdata) KCREENTRANT;
#endif

#endif

/*
*********************************************************************************************************
*                                MUTUAL EXCLUSION SEMAPHORE MANAGEMENT
*********************************************************************************************************
*/

#if OS_MUTEX_EN > 0

#if OS_MUTEX_ACCEPT_EN > 0
INT8U         OSMutexAccept(OS_EVENT *pevent, INT8U *err) KCREENTRANT;
#endif

OS_EVENT     *OSMutexCreate(INT8U prio, INT8U *err) KCREENTRANT;

#if OS_MUTEX_DEL_EN > 0
OS_EVENT     *OSMutexDel(OS_EVENT *pevent, INT8U opt, INT8U *err) KCREENTRANT;
#endif

void          OSMutexPend(OS_EVENT *pevent, INT16U timeout, INT8U *err) KCREENTRANT;
INT8U         OSMutexPost(OS_EVENT *pevent) KCREENTRANT;

#if OS_MUTEX_QUERY_EN > 0
INT8U         OSMutexQuery(OS_EVENT *pevent, OS_MUTEX_DATA *pdata) KCREENTRANT;
#endif

#endif

/*$PAGE*/
/*
*********************************************************************************************************
*                                         MESSAGE QUEUE MANAGEMENT
*********************************************************************************************************
*/

#if (OS_Q_EN > 0) && (OS_MAX_QS > 0)

#if OS_Q_ACCEPT_EN > 0
void         *OSQAccept(OS_EVENT *pevent) KCREENTRANT;
#endif

OS_EVENT     *OSQCreate(void **start, INT16U size) KCREENTRANT;

#if OS_Q_DEL_EN > 0
OS_EVENT     *OSQDel(OS_EVENT *pevent, INT8U opt, INT8U *err) KCREENTRANT;
#endif

#if OS_Q_FLUSH_EN > 0
INT8U         OSQFlush(OS_EVENT *pevent) KCREENTRANT;
#endif

void         *OSQPend(OS_EVENT *pevent, INT16U timeout, INT8U *err) KCREENTRANT;

#if OS_Q_POST_EN > 0
INT8U         OSQPost(OS_EVENT *pevent, void *msg) KCREENTRANT;
#endif

#if OS_Q_POST_FRONT_EN > 0
INT8U         OSQPostFront(OS_EVENT *pevent, void *msg) KCREENTRANT;
#endif

#if OS_Q_POST_OPT_EN > 0
INT8U         OSQPostOpt(OS_EVENT *pevent, void *msg, INT8U opt) KCREENTRANT;
#endif

#if OS_Q_QUERY_EN > 0
INT8U         OSQQuery(OS_EVENT *pevent, OS_Q_DATA *pdata) KCREENTRANT;
#endif

#endif

/*$PAGE*/
/*
*********************************************************************************************************
*                                          SEMAPHORE MANAGEMENT
*********************************************************************************************************
*/
#if OS_SEM_EN > 0

#if OS_SEM_ACCEPT_EN > 0
INT16U        OSSemAccept(OS_EVENT *pevent) KCREENTRANT;
#endif

OS_EVENT     *OSSemCreate(INT16U cnt) KCREENTRANT;

#if OS_SEM_DEL_EN > 0
OS_EVENT     *OSSemDel(OS_EVENT *pevent, INT8U opt, INT8U *err) KCREENTRANT;
#endif

void          OSSemPend(OS_EVENT *pevent, INT16U timeout, INT8U *err) KCREENTRANT;
INT8U         OSSemPost(OS_EVENT *pevent) KCREENTRANT;

#if OS_SEM_QUERY_EN > 0
INT8U         OSSemQuery(OS_EVENT *pevent, OS_SEM_DATA *pdata) KCREENTRANT;
#endif

#endif

/*$PAGE*/
/*
*********************************************************************************************************
*                                            TASK MANAGEMENT
*********************************************************************************************************
*/
#if OS_TASK_CHANGE_PRIO_EN > 0
INT8U         OSTaskChangePrio(INT8U oldprio, INT8U newprio) KCREENTRANT;
#endif

#if OS_TASK_CREATE_EN > 0
INT8U         OSTaskCreate(void (*task)(void *pd) KCREENTRANT, void *pdata, OS_STK *ptos, INT8U prio) KCREENTRANT;
#endif

#if OS_TASK_CREATE_EXT_EN > 0
INT8U         OSTaskCreateExt(void  (*task)(void *pd) KCREENTRANT,
                              void   *pdata,
                              OS_STK *ptos,
                              INT8U   prio,
                              INT16U  id,
                              OS_STK *pbos,
                              INT32U  stk_size,
                              void   *pext,
                              INT16U  opt) KCREENTRANT;
#endif

#if OS_TASK_DEL_EN > 0
INT8U         OSTaskDel(INT8U prio) KCREENTRANT;
INT8U         OSTaskDelReq(INT8U prio) KCREENTRANT;
#endif

#if OS_TASK_SUSPEND_EN > 0
INT8U         OSTaskResume(INT8U prio) KCREENTRANT;
INT8U         OSTaskSuspend(INT8U prio) KCREENTRANT;
#endif

#if OS_TASK_CREATE_EXT_EN > 0
INT8U         OSTaskStkChk(INT8U prio, OS_STK_DATA *pdata) KCREENTRANT;
#endif

#if OS_TASK_QUERY_EN > 0
INT8U         OSTaskQuery(INT8U prio, OS_TCB *pdata) KCREENTRANT;
#endif

/*$PAGE*/
/*
*********************************************************************************************************
*                                            TIME MANAGEMENT
*********************************************************************************************************
*/

void          OSTimeDly(INT16U ticks) KCREENTRANT;

#if OS_TIME_DLY_HMSM_EN > 0
INT8U         OSTimeDlyHMSM(INT8U hours, INT8U minutes, INT8U seconds, INT16U milli) KCREENTRANT;
#endif

#if OS_TIME_DLY_RESUME_EN > 0
INT8U         OSTimeDlyResume(INT8U prio) KCREENTRANT;
#endif

#if OS_TIME_GET_SET_EN > 0
INT32U        OSTimeGet(void) KCREENTRANT;
void          OSTimeSet(INT32U ticks) KCREENTRANT;
#endif

void          OSTimeTick(void) KCREENTRANT;

/*
*********************************************************************************************************
*                                             MISCELLANEOUS
*********************************************************************************************************
*/

void          OSInit(void) KCREENTRANT;

void          OSIntEnter(void) KCREENTRANT;
void          OSIntExit(void) KCREENTRANT;

#if OS_SCHED_LOCK_EN > 0
void          OS_SchedLock(void) KCREENTRANT;
void          OSSchedUnlock(void) KCREENTRANT;
#endif

void          OSStart(void) KCREENTRANT;

void          OSStatInit(void) KCREENTRANT;

INT16U        OSVersion(void) KCREENTRANT;

/*$PAGE*/
/*
*********************************************************************************************************
*                                      INTERNAL FUNCTION PROTOTYPES
*                            (Your application MUST NOT call these functions)
*********************************************************************************************************
*/

#if OS_TASK_DEL_EN > 0
void          OS_Dummy(void) KCREENTRANT;
#endif

#if ((OS_Q_EN > 0) && (OS_MAX_QS > 0)) || (OS_MBOX_EN > 0) || (OS_SEM_EN > 0) || (OS_MUTEX_EN > 0)
INT8U         OS_EventTaskRdy(OS_EVENT *pevent, void *msg, INT8U msk) KCREENTRANT;
void          OS_EventTaskWait(OS_EVENT *pevent) KCREENTRANT;
void          OS_EventTO(OS_EVENT *pevent) KCREENTRANT;
void          OS_EventWaitListInit(OS_EVENT *pevent) KCREENTRANT;
#endif

#if (OS_VERSION >= 251) && (OS_FLAG_EN > 0) && (OS_MAX_FLAGS > 0)
void          OS_FlagInit(void) KCREENTRANT;
void          OS_FlagUnlink(OS_FLAG_NODE *pnode) KCREENTRANT;
#endif

#if (OS_MEM_EN > 0) && (OS_MAX_MEM_PART > 0)
void          OS_MemInit(void) KCREENTRANT;
#endif

#if OS_Q_EN > 0
void          OS_QInit(void) KCREENTRANT;
#endif

void          OS_Sched(void) KCREENTRANT;

void          OS_TaskIdle(void *data) KCREENTRANT;

#if OS_TASK_STAT_EN > 0
void          OS_TaskStat(void *data) KCREENTRANT;
#endif

INT8U         OS_TCBInit(INT8U prio, OS_STK *ptos, OS_STK *pbos, INT16U id, INT32U stk_size, void *pext, INT16U opt) KCREENTRANT;

/*$PAGE*/
/*
*********************************************************************************************************
*                                          FUNCTION PROTOTYPES
*                                      (Target Specific Functions)
*********************************************************************************************************
*/

#if OS_VERSION >= 204
void          OSInitHookBegin(void) KCREENTRANT;
void          OSInitHookEnd(void) KCREENTRANT;
#endif

void          OSIntCtxSw(void) KCREENTRANT;

void          OSStartHighRdy(void) KCREENTRANT;

void          OSTaskCreateHook(OS_TCB *ptcb) KCREENTRANT;
void          OSTaskDelHook(OS_TCB *ptcb) KCREENTRANT;

#if OS_VERSION >= 251
void          OSTaskIdleHook(void) KCREENTRANT;
#endif

void          OSTaskStatHook(void) KCREENTRANT;
OS_STK       *OSTaskStkInit(void (*task)(void *pd) KCREENTRANT, void *pdata, OS_STK *ptos, INT16U opt) KCREENTRANT;
void          OSTaskSwHook(void) KCREENTRANT;

#if OS_VERSION >= 204
void          OSTCBInitHook(OS_TCB *ptcb) KCREENTRANT;
#endif

void          OSTimeTickHook(void) KCREENTRANT;

#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久综合精品| 欧美电视剧免费全集观看| 久久精品视频在线看| 国产精品你懂的在线欣赏| 国产精品一区二区视频| 久久人人97超碰com| 国产在线播精品第三| 国产精品国模大尺度视频| 99免费精品视频| 亚洲免费高清视频在线| 欧美日韩一区中文字幕| 天天免费综合色| 精品欧美乱码久久久久久| 韩国女主播一区| 中文字幕 久热精品 视频在线| 风间由美性色一区二区三区| 成人欧美一区二区三区视频网页| 国产精品自在欧美一区| 国产精品人成在线观看免费| 色婷婷综合久久久久中文一区二区| 亚洲一区二区在线免费看| 欧美一级二级三级蜜桃| 国产一级精品在线| 国产精品激情偷乱一区二区∴| 一本久久综合亚洲鲁鲁五月天| 性做久久久久久免费观看欧美| 欧美性大战久久久| 久久99国内精品| 亚洲日本在线a| 日韩亚洲欧美成人一区| 久久精品无码一区二区三区| 99久久免费视频.com| 精一区二区三区| 日一区二区三区| 亚洲三级电影网站| 国产精品乱码妇女bbbb| 欧美成人精品1314www| 精品污污网站免费看| 91免费在线看| 成人一道本在线| 国产永久精品大片wwwapp| 首页国产欧美久久| 亚洲国产美国国产综合一区二区| 日韩毛片精品高清免费| 欧美韩国日本不卡| 久久久欧美精品sm网站| 亚洲精品一区二区在线观看| 日韩情涩欧美日韩视频| 欧美疯狂做受xxxx富婆| 欧美日韩精品一区二区三区四区 | 欧美色窝79yyyycom| 不卡一区二区在线| 99re成人精品视频| 波多野结衣欧美| 成人永久免费视频| 99久久99久久精品免费看蜜桃 | www.色精品| 成人教育av在线| 不卡的电影网站| 色婷婷av一区二区| 色爱区综合激月婷婷| 欧美午夜免费电影| 3751色影院一区二区三区| 精品少妇一区二区三区| 久久一夜天堂av一区二区三区| 精品国产不卡一区二区三区| 久久久久成人黄色影片| 日韩码欧中文字| 亚洲成人tv网| 美女视频免费一区| 国产91精品一区二区| 91蝌蚪porny成人天涯| 久久精品国产秦先生| 国产综合色视频| 成人黄页毛片网站| 欧美色综合影院| 精品少妇一区二区三区日产乱码 | 色综合网色综合| 欧美色电影在线| 精品国产91九色蝌蚪| 国产精品情趣视频| 五月天亚洲婷婷| 国产乱码精品一品二品| 成人少妇影院yyyy| 欧美视频精品在线| 国产视频一区不卡| 亚洲国产日韩一区二区| 国产91精品欧美| 欧美精品在线观看一区二区| 国产三级精品视频| 三级亚洲高清视频| www.在线欧美| 欧美成人官网二区| 亚洲成av人综合在线观看| 国产精品66部| 欧美人妇做爰xxxⅹ性高电影| 久久天天做天天爱综合色| 一区二区三区精品视频在线| 久久精品国产77777蜜臀| 欧美在线一二三| 国产精品毛片久久久久久久| 天堂一区二区在线免费观看| 成人福利视频网站| 日韩精品在线一区二区| 亚洲精品欧美二区三区中文字幕| 国内一区二区视频| 欧美日韩在线亚洲一区蜜芽| 国产精品久线在线观看| 国产又粗又猛又爽又黄91精品| 在线精品视频免费观看| 欧美本精品男人aⅴ天堂| 亚洲一区二区成人在线观看| 国产成人在线视频免费播放| 日韩欧美高清一区| 亚洲成av人片| 欧美在线免费视屏| 亚洲人成人一区二区在线观看| 国产成人av一区二区| 精品国产一区二区国模嫣然| 美女网站色91| 日韩午夜激情av| 日本亚洲一区二区| 欧美三级中文字| 亚洲小少妇裸体bbw| 在线看日本不卡| 亚洲韩国精品一区| 一本色道久久综合亚洲aⅴ蜜桃 | 午夜国产精品一区| 欧美群妇大交群的观看方式| 午夜精彩视频在线观看不卡| 欧美疯狂做受xxxx富婆| 男女视频一区二区| 欧美大片一区二区| 国内不卡的二区三区中文字幕 | 亚洲美女区一区| 91黄色免费版| 午夜激情一区二区| 日韩欧美一二三区| 美女一区二区在线观看| 久久嫩草精品久久久精品一| 国产一区二区成人久久免费影院 | 91色视频在线| 亚洲一区二区在线视频| 欧美日韩免费不卡视频一区二区三区| 亚洲国产视频一区| 在线观看91精品国产麻豆| 免费在线看一区| 国产视频一区二区在线观看| av午夜一区麻豆| 亚洲高清免费观看高清完整版在线观看| 欧美三级三级三级爽爽爽| 麻豆成人综合网| 国产精品久久久久久久久免费相片| 91色porny在线视频| 日韩电影一二三区| 中文字幕高清不卡| 欧美性感一区二区三区| 精品一区二区在线视频| 国产精品伦理在线| 欧美乱妇15p| 成人黄色一级视频| 日韩精品一级中文字幕精品视频免费观看| 日韩欧美一区二区视频| 成人黄页毛片网站| 日本特黄久久久高潮| 国产精品―色哟哟| 91精品国产乱码久久蜜臀| 成人性生交大片| 日韩在线一区二区| 国产精品久久精品日日| 欧美高清激情brazzers| 丁香激情综合国产| 日本不卡中文字幕| 亚洲日本一区二区三区| 久久综合色婷婷| 精品视频一区三区九区| 国产馆精品极品| 日韩精品三区四区| 亚洲欧美日韩国产综合在线| 精品少妇一区二区| 欧美日韩精品三区| 91在线精品一区二区三区| 国产综合久久久久影院| 亚洲v精品v日韩v欧美v专区| 中文字幕成人av| 精品av综合导航| 欧美另类一区二区三区| 91电影在线观看| 成年人国产精品| 国产成人av电影| 国产乱对白刺激视频不卡| 日本午夜一区二区| 天天色天天爱天天射综合| 一区二区三区美女| 亚洲人被黑人高潮完整版| 国产日本欧洲亚洲| 国产欧美一区二区在线| 久久久久久久久久久久电影| 日韩免费在线观看| 日韩欧美中文字幕公布|