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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ucos51.h

?? C源代碼的實時操作系統(tǒng)
?? H
字號:
/*
*********************************************************************************************************
*                                                 uC/OS
*                                          The Real-Time Kernel
*                                           SYSTEM DECLARATIONS
*
*                        (c) Copyright 1992-1996, Jean J. Labrosse, Plantation, FL
*                                           All Rights Reserved
*
*                                                  V1.09
*
* File : UCOS_CL.H
* By   : Jean J. Labrosse
*       				Ported to the 8051 by 
*                                             Rene Voorberg
*                                           80c52 (Large Model)
*				   Using the COMPASS51 compiler from PLC
* july 1997
*********************************************************************************************************
*/

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

#ifdef  OS_GLOBALS
#define OS_EXT
#else
#define OS_EXT  extern
#endif

#define OS_PRIO_SELF           0xFF    /* Indicate SELF priority                                       */

/*
*********************************************************************************************************
*                                           uC/OS ERROR CODES
*********************************************************************************************************
*/

#define OS_NO_ERR                 0

#define OS_TIMEOUT               10
#define OS_TASK_NOT_EXIST        11

#define OS_MBOX_FULL             20
#define OS_MBOX_MSG_NOT_AVAIL    21

#define OS_Q_FULL                30
#define OS_Q_MSG_NOT_AVAIL       31

#define OS_PRIO_EXIST            40
#define OS_PRIO_ERR              41
#define OS_PRIO_INVALID          42

#define OS_SEM_ERR               50
#define OS_SEM_OVF               51
#define OS_SEM_NOT_AVAIL         52

#define OS_TASK_DEL_ERR          60
#define OS_TASK_DEL_IDLE         61
#define OS_TASK_DEL_REQ          62

#define OS_NO_MORE_TCB           70

#define OS_TIME_NOT_DLY          80

#define OS_TASK_SUSPEND_PRIO     90
#define OS_TASK_SUSPEND_IDLE     91

#define OS_TASK_RESUME_PRIO     100
#define OS_TASK_NOT_SUSPENDED   101
/*$PAGE*/
/*
*********************************************************************************************************
*                                          EVENT CONTROL BLOCK
*********************************************************************************************************
*/

//typedef
struct os_event {
        UBYTE  OSEventGrp;             /* Group corresponding to tasks waiting for event to occur      */
        UBYTE  OSEventTbl[8];          /* List of tasks waiting for event to occur                     */
        UWORD  OSEventCnt;             /* Count of used when event is a semaphore                      */
    far void  *OSEventPtr;             /* Pointer to message or queue structure                        */
}; 

typedef struct os_event OS_EVENT;


/*
*********************************************************************************************************
*                                        uC/OS TASK CONTROL BLOCK
*********************************************************************************************************
*/

//typedef 
struct os_tcb {
    far void          *OSTCBStkPtr;    /* Pointer to current top of stack                              */
        UBYTE          OSTCBStat;      /* Task status                                                  */
        UBYTE          OSTCBPrio;      /* Task priority (0 == highest, 63 == lowest)                   */
        UWORD          OSTCBDly;       /* Nbr ticks to delay task or, timeout waiting for event        */
        BOOLEAN        OSTCBDelReq;    /* Indicates whether a task needs to delete itself              */
        UBYTE          OSTCBX;         /* Bit position in group  corresponding to task priority (0..7) */
        UBYTE          OSTCBY;         /* Index into ready table corresponding to task priority        */
        UBYTE          OSTCBBitX;      /* Bit mask to access bit position in ready table               */
        UBYTE          OSTCBBitY;      /* Bit mask to access bit position in ready group               */
    far OS_EVENT      *OSTCBEventPtr;  /* Pointer to event control block                               */
    far void          *OSTCBMsg;       /* Message received from OSMboxPost() or OSQPost()              */
    far struct os_tcb *OSTCBNext;      /* Pointer to next     TCB in the TCB list                      */
    far struct os_tcb *OSTCBPrev;      /* Pointer to previous TCB in the TCB list                      */
};
typedef struct os_tcb OS_TCB;


/*
*********************************************************************************************************
*                                          QUEUE CONTROL BLOCK
*********************************************************************************************************
*/

//typedef 
struct os_q {
    far struct os_q   *OSQPtr;         /* Link to next queue control block in list of free blocks      */
    far void         **OSQStart;       /* Pointer to start of queue data                               */
    far void         **OSQEnd;         /* Pointer to end   of queue data                               */
    far void         **OSQIn;          /* Pointer to where next message will be inserted  in   the Q   */
    far void         **OSQOut;         /* Pointer to where next message will be extracted from the Q   */
        UBYTE          OSQSize;        /* Size of queue (maximum number of entries)                    */
        UBYTE          OSQEntries;     /* Current number of entries in the queue                       */
};
typedef struct os_q OS_Q;
/*$PAGE*/
/*
*********************************************************************************************************
*                                         uC/OS GLOBAL VARIABLES
*********************************************************************************************************
*/
                                           /* SYSTEM VARIABLES                                         */
OS_EXT  far UWORD         OSCtxSwCtr;      /* Counter of number of context switches                    */
OS_EXT  far ULONG         OSIdleCtr;       /* Idle counter                                             */
OS_EXT  near UBYTE        OSIntNesting;    /* Interrupt nesting level                                  */
OS_EXT  far BOOLEAN       OSRunning;       /* Flag indicating that kernel is running                   */

OS_EXT  far OS_TCB  * near OSTCBCur;        /* Pointer to currently running TCB                         */
OS_EXT  far OS_TCB  * near OSTCBHighRdy;    /* Pointer to highest priority TCB ready to run             */
//OS_EXT  far OS_TCB  * far  OSTCBCur;        /* Pointer to currently running TCB                         */
//OS_EXT  far OS_TCB  * far  OSTCBHighRdy;    /* Pointer to highest priority TCB ready to run             */

OS_EXT  far OS_TCB  * far OSTCBPrioTbl[64];/* Table of pointers to all created TCBs                    */

/*
*********************************************************************************************************
*                                       uC/OS FUNCTION PROTOTYPES
*********************************************************************************************************
*/
    void 	OSInit_Timer0(void);
    void        OSInit(void);

    void        OSStart(void);
    void        OSStartHighRdy(void);

    void        OSSched(void);
    void        OSSchedLock(void);
    void        OSSchedUnlock(void);

    UBYTE       OSTaskCreate(void (*task)(far void *pd), far void *pdata, far void *pstk, UBYTE prio);
    UBYTE       OSTaskDel(UBYTE prio);
    UBYTE       OSTaskDelReq(UBYTE prio);
    UBYTE       OSTaskChangePrio(UBYTE oldprio, UBYTE newprio);
    UBYTE       OSTaskSuspend(UBYTE prio);
    UBYTE       OSTaskResume(UBYTE prio);
    UBYTE       OSTCBInit(UBYTE prio, far void *stk);

    void        OSIntEnter(void);
    void        OSIntExit(void);
    void        OSIntCtxSw(void);

    void        OSCtxSw(void);
    void        OSTickISR(void);

    void        OSTimeDly(UWORD ticks);
    UBYTE       OSTimeDlyResume(UBYTE prio);
    void        OSTimeTick(void);
    void        OSTimeSet(ULONG ticks);
    ULONG       OSTimeGet(void);

far OS_EVENT   *OSSemCreate(UWORD value);
    UWORD       OSSemAccept(far OS_EVENT *pevent);
    UBYTE       OSSemPost(far OS_EVENT *pevent);
    void        OSSemPend(far OS_EVENT *pevent, UWORD timeout, UBYTE *err);

far OS_EVENT   *OSMboxCreate(far void *msg);
far void       *OSMboxAccept(far OS_EVENT *pevent);
    UBYTE       OSMboxPost(far OS_EVENT *pevent, far void *msg);
far void       *OSMboxPend(far OS_EVENT *pevent, UWORD timeout, UBYTE *err);

far OS_EVENT   *OSQCreate(far void **start, UBYTE size);
far void       *OSQAccept(far OS_EVENT *pevent);
    UBYTE       OSQPost(far OS_EVENT *pevent, far void *msg);
far void       *OSQPend(far OS_EVENT *pevent, UWORD timeout, UBYTE *err);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品国产亚洲高清剧情介绍| 懂色av噜噜一区二区三区av| 精品一区二区免费在线观看| av中文字幕不卡| 91精品在线观看入口| 国产嫩草影院久久久久| 石原莉奈在线亚洲二区| thepron国产精品| 精品精品欲导航| 性久久久久久久久| 91丨九色丨蝌蚪富婆spa| 国产婷婷色一区二区三区四区| 三级欧美在线一区| 91久久精品一区二区二区| 国产精品久久久久久久第一福利 | 欧美亚洲综合色| 国产视频一区二区在线| 热久久久久久久| 欧美日韩国产精品成人| 亚洲一二三四久久| 一本久久精品一区二区| 国产精品美女久久久久久久久| 久久99精品国产麻豆婷婷洗澡| 欧美久久久久久久久中文字幕| 亚洲免费看黄网站| 97成人超碰视| 最近中文字幕一区二区三区| 国产69精品一区二区亚洲孕妇| 精品福利av导航| 久久精品国产秦先生| 欧美一区二区日韩| 久久99精品久久久久婷婷| 日韩欧美成人午夜| 麻豆精品久久精品色综合| 欧美成人免费网站| 国产精品综合在线视频| 精品欧美乱码久久久久久1区2区| 免费不卡在线观看| 精品国产乱码久久久久久牛牛| 精品写真视频在线观看| 亚洲精品在线三区| 国产成人免费视频一区| 国产精品污www在线观看| 国产成人午夜片在线观看高清观看| 久久亚洲精精品中文字幕早川悠里| 国内精品视频一区二区三区八戒| 久久网站热最新地址| 懂色av一区二区三区蜜臀| 国产精品久久久久四虎| 日本精品裸体写真集在线观看| 亚洲综合免费观看高清完整版在线| 欧美性感一类影片在线播放| 午夜私人影院久久久久| 精品少妇一区二区三区日产乱码 | 亚洲成人激情av| 51精品国自产在线| 国产永久精品大片wwwapp| 国产日韩欧美a| 色欧美乱欧美15图片| 日韩精品三区四区| 国产视频一区二区在线| 在线观看91精品国产入口| 日韩二区在线观看| 中文字幕亚洲一区二区av在线| 欧美一区二区三区四区久久| 欧美成va人片在线观看| 成人爱爱电影网址| 亚洲国产精品麻豆| 亚洲精品一区在线观看| 成人av免费在线观看| 视频在线观看91| 中文字幕第一区二区| 欧美美女bb生活片| 高清在线成人网| 视频一区二区三区中文字幕| 国产精品水嫩水嫩| 欧美日本高清视频在线观看| 国产老女人精品毛片久久| 亚洲福利一区二区| 中文字幕av一区 二区| 7777精品伊人久久久大香线蕉经典版下载 | 亚洲永久精品大片| 亚洲第一二三四区| 久久久亚洲午夜电影| 日本久久电影网| 国产91精品一区二区麻豆亚洲| 日韩国产精品久久| 亚洲欧美综合另类在线卡通| 日韩久久免费av| 欧美性生活一区| 成人福利视频在线看| 另类小说色综合网站| 午夜久久久久久电影| 亚洲视频免费在线观看| 久久精子c满五个校花| 日韩无一区二区| 欧美日韩在线免费视频| 不卡在线视频中文字幕| 国产一区二区三区久久久| 天天综合网 天天综合色| 亚洲黄色尤物视频| 亚洲欧洲精品一区二区三区不卡| 亚洲精品一区二区三区影院| 3d动漫精品啪啪| 欧美伦理影视网| 欧美体内she精视频| 色综合一区二区| 成人av免费在线播放| 高清av一区二区| 国产乱码精品一区二区三区五月婷| 美女视频网站黄色亚洲| 日韩成人免费电影| 美腿丝袜亚洲综合| 精品一区二区在线视频| 精品中文av资源站在线观看| 另类小说一区二区三区| 另类小说色综合网站| 激情六月婷婷综合| 韩国精品在线观看| 国产a级毛片一区| 国产在线精品一区二区夜色| 国产主播一区二区| 国产精品一线二线三线| 国产99久久久国产精品免费看 | 欧美一激情一区二区三区| 欧美日韩1234| 正在播放亚洲一区| 日韩免费电影一区| 久久免费电影网| 欧美国产视频在线| 亚洲色图丝袜美腿| 亚洲国产cao| 久久国产麻豆精品| 国产精品一区二区无线| a在线播放不卡| 欧美日韩精品二区第二页| 欧美一区二区三区婷婷月色| 亚洲综合精品久久| 天天综合色天天综合| 久久精品国产澳门| 成人免费高清在线| 欧美又粗又大又爽| 日韩欧美激情四射| 欧美极品美女视频| 亚洲一区二区三区自拍| 麻豆成人91精品二区三区| 国产成人自拍网| 在线亚洲高清视频| 精品国产sm最大网站| 自拍偷拍欧美激情| 三级在线观看一区二区| 成人免费高清在线| 欧美日韩一区中文字幕| 久久久亚洲精华液精华液精华液| 日韩伦理电影网| 麻豆专区一区二区三区四区五区| 懂色av中文一区二区三区| 欧美巨大另类极品videosbest| 久久精品免费在线观看| 亚洲一区av在线| 国产99久久精品| 日韩视频一区二区| 日韩久久一区二区| 久久99久久久久| 91精品福利在线| 久久综合色8888| www久久精品| 一区二区三区欧美日| 美女网站在线免费欧美精品| 成人黄色大片在线观看| 欧美另类变人与禽xxxxx| 国产精品动漫网站| 国内精品伊人久久久久av影院| 日本二三区不卡| 中文字幕欧美区| 久久超碰97人人做人人爱| av电影天堂一区二区在线| 欧美电影免费观看高清完整版在 | 91亚洲精品一区二区乱码| 欧美丰满少妇xxxxx高潮对白| 国产精品你懂的在线| 日本欧美一区二区三区| 欧美综合久久久| 国产精品三级电影| 一本色道久久综合亚洲91| 欧美日韩亚洲综合一区| 樱桃国产成人精品视频| 不卡电影一区二区三区| 久久综合九色综合97婷婷女人 | 激情亚洲综合在线| 欧美一级欧美三级| 国产成人在线网站| 久久久蜜桃精品| 蜜臀国产一区二区三区在线播放| 欧美性受极品xxxx喷水| 尤物视频一区二区| 99精品久久99久久久久| 久久久久久久免费视频了| 国内精品在线播放| 久久久亚洲精华液精华液精华液|