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

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

?? os_task.lst

?? 運行環(huán)境是keil。這是一個實現(xiàn)嵌入式TCP/IP的程序
?? LST
?? 第 1 頁 / 共 4 頁
字號:
C51 COMPILER V6.12  OS_TASK                                                                04/12/2004 19:13:38 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE OS_TASK
OBJECT MODULE PLACED IN .\DEBUG\OS_TASK.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE .\CORE\SOURCE\OS_TASK.C LARGE OPTIMIZE(6,SPEED) BROWSE DEBUG OBJECTEXTEND P
                    -RINT(.\DEBUG\OS_TASK.lst) OBJECT(.\DEBUG\OS_TASK.obj) 

stmt level    source

   1          /*
   2          *********************************************************************************************************
   3          *                                                uC/OS-II
   4          *                                          The Real-Time Kernel
   5          *                                            TASK MANAGEMENT
   6          *
   7          *                        (c) Copyright 1992-1998, Jean J. Labrosse, Plantation, FL
   8          *                                           All Rights Reserved
   9          *
  10          *                                                  V2.00
  11          *
  12          * File : OS_TASK.C
  13          * By   : Jean J. Labrosse
  14          *********************************************************************************************************
  15          */
  16          
  17          #ifndef  OS_MASTER_FILE
  18          #include    <CORE\includes.h> 
  19          #endif
  20          
  21          /*
  22          *********************************************************************************************************
  23          *                                        LOCAL FUNCTION PROTOTYPES
  24          *********************************************************************************************************
  25          */
  26          
  27          
  28          static  void  OSDummy(void) reentrant;
  29          
  30          /*
  31          *********************************************************************************************************
  32          *                                            DUMMY FUNCTION
  33          *
  34          * Description: This function doesn't do anything.  It is called by OSTaskDel() to ensure that interrupts
  35          *              are disabled immediately after they are enabled.
  36          *
  37          * Arguments  : none
  38          *
  39          * Returns    : none
  40          *********************************************************************************************************
  41          */
  42          
  43          static void  OSDummy (void) reentrant
  44          {
  45   1      }
  46          
  47          /*$PAGE*/
  48          /*
  49          *********************************************************************************************************
  50          *                                        CHANGE PRIORITY OF A TASK
  51          *
  52          * Description: This function allows you to change the priority of a task dynamically.  Note that the new
  53          *              priority MUST be available.
  54          *
C51 COMPILER V6.12  OS_TASK                                                                04/12/2004 19:13:38 PAGE 2   

  55          * Arguments  : oldp     is the old priority
  56          *
  57          *              newp     is the new priority
  58          *
  59          * Returns    : OS_NO_ERR        is the call was successful
  60          *              OS_PRIO_INVALID  if the priority you specify is higher that the maximum allowed
  61          *                               (i.e. >= OS_LOWEST_PRIO)
  62          *              OS_PRIO_EXIST    if the new priority already exist.
  63          *              OS_PRIO_ERR      there is no task with the specified OLD priority (i.e. the OLD task does
  64          *                               not exist.
  65          *********************************************************************************************************
  66          */
  67          
  68          #if OS_TASK_CHANGE_PRIO_EN
  69          INT8U OSTaskChangePrio (INT8U oldprio, INT8U newprio) reentrant
  70          {
  71   1          OS_TCB   *ptcb;
  72   1          OS_EVENT *pevent;
  73   1          INT8U     x;
  74   1          INT8U     y;
  75   1          INT8U     bitx;
  76   1          INT8U     bity;
  77   1      
  78   1      
  79   1          if ((oldprio >= OS_LOWEST_PRIO && oldprio != OS_PRIO_SELF)  ||
  80   1               newprio >= OS_LOWEST_PRIO) {
  81   2              return (OS_PRIO_INVALID);
  82   2          }
  83   1          OS_ENTER_CRITICAL();
  84   1          if (OSTCBPrioTbl[newprio] != (OS_TCB *)0) {                 /* New priority must not already exist */
  85   2              OS_EXIT_CRITICAL();
  86   2              return (OS_PRIO_EXIST);
  87   2          } else {
  88   2              OSTCBPrioTbl[newprio] = (OS_TCB *)1;                    /* Reserve the entry to prevent others */
*** WARNING C196 IN LINE 88 OF .\CORE\SOURCE\OS_TASK.C: mspace probably invalid
  89   2              OS_EXIT_CRITICAL();
  90   2              y    = newprio >> 3;                                    /* Precompute to reduce INT. latency   */
  91   2              bity = OSMapTbl[y];
  92   2              x    = newprio & 0x07;
  93   2              bitx = OSMapTbl[x];
  94   2              OS_ENTER_CRITICAL();
  95   2              if (oldprio == OS_PRIO_SELF) {                          /* See if changing self                */
  96   3                  oldprio = OSTCBCur->OSTCBPrio;                      /* Yes, get priority                   */
  97   3              }
  98   2              if ((ptcb = OSTCBPrioTbl[oldprio]) != (OS_TCB *)0) {    /* Task to change must exist           */
  99   3                  OSTCBPrioTbl[oldprio] = (OS_TCB *)0;                /* Remove TCB from old priority        */
 100   3                  if (OSRdyTbl[ptcb->OSTCBY] & ptcb->OSTCBBitX) {     /* If task is ready make it not ready  */
 101   4                      if ((OSRdyTbl[ptcb->OSTCBY] &= ~ptcb->OSTCBBitX) == 0) {
 102   5                          OSRdyGrp &= ~ptcb->OSTCBBitY;
 103   5                      }
 104   4                      OSRdyGrp    |= bity;                            /* Make new priority ready to run      */
 105   4                      OSRdyTbl[y] |= bitx;
 106   4                  } else {
 107   4                      if ((pevent = ptcb->OSTCBEventPtr) != (OS_EVENT *)0) { /* Remove from event wait list  */
 108   5                          if ((pevent->OSEventTbl[ptcb->OSTCBY] &= ~ptcb->OSTCBBitX) == 0) {
 109   6                              pevent->OSEventGrp &= ~ptcb->OSTCBBitY;
 110   6                          }
 111   5                          pevent->OSEventGrp    |= bity;              /* Add new priority to wait list       */
 112   5                          pevent->OSEventTbl[y] |= bitx;
 113   5                      }
 114   4                  }
 115   3                  OSTCBPrioTbl[newprio] = ptcb;                       /* Place pointer to TCB @ new priority */
C51 COMPILER V6.12  OS_TASK                                                                04/12/2004 19:13:38 PAGE 3   

 116   3                  ptcb->OSTCBPrio       = newprio;                    /* Set new task priority               */
 117   3                  ptcb->OSTCBY          = y;
 118   3                  ptcb->OSTCBX          = x;
 119   3                  ptcb->OSTCBBitY       = bity;
 120   3                  ptcb->OSTCBBitX       = bitx;
 121   3                  OS_EXIT_CRITICAL();
 122   3                  OSSched();                                          /* Run highest priority task ready     */
 123   3                  return (OS_NO_ERR);
 124   3              } else {
 125   3                  OSTCBPrioTbl[newprio] = (OS_TCB *)0;                /* Release the reserved prio.          */
 126   3                  OS_EXIT_CRITICAL();
 127   3                  return (OS_PRIO_ERR);                               /* Task to change didn't exist         */
 128   3              }
 129   2          }
 130   1      }
 131          #endif
 132          /*$PAGE*/
 133          /*
 134          *********************************************************************************************************
 135          *                                            CREATE A TASK
 136          *
 137          * Description: This function is used to have uC/OS-II manage the execution of a task.  Tasks can either
 138          *              be created prior to the start of multitasking or by a running task.  A task cannot be
 139          *              created by an ISR.
 140          *
 141          * Arguments  : task     is a pointer to the task's code
 142          *
 143          *              pdata    is a pointer to an optional data area which can be used to pass parameters to
 144          *                       the task when the task first executes.  Where the task is concerned it thinks
 145          *                       it was invoked and passed the argument 'pdata' as follows:
 146          *
 147          *                           void Task (void *pdata)
 148          *                           {
 149          *                               for (;;) {
 150          *                                   Task code;
 151          *                               }
 152          *                           }
 153          *
 154          *              ptos     is a pointer to the task's top of stack.  If the configuration constant
 155          *                       OS_STK_GROWTH is set to 1, the stack is assumed to grow downward (i.e. from high
 156          *                       memory to low memory).  'pstk' will thus point to the highest (valid) memory
 157          *                       location of the stack.  If OS_STK_GROWTH is set to 0, 'pstk' will point to the
 158          *                       lowest memory location of the stack and the stack will grow with increasing
 159          *                       memory locations.
 160          *
 161          *              prio     is the task's priority.  A unique priority MUST be assigned to each task and the
 162          *                       lower the number, the higher the priority.
 163          *
 164          * Returns    : OS_NO_ERR        if the function was successful.
 165          *              OS_PRIO_EXIT     if the task priority already exist
 166          *                               (each task MUST have a unique priority).
 167          *              OS_PRIO_INVALID  if the priority you specify is higher that the maximum allowed
 168          *                               (i.e. >= OS_LOWEST_PRIO)
 169          *********************************************************************************************************
 170          */
 171          
 172          #if OS_TASK_CREATE_EN
 173          INT8U OSTaskCreate (void (*task)(void *pd), void *ppdata, OS_STK *ptos, INT8U prio) reentrant
 174          {
 175   1          void   *psp;
 176   1          INT8U   err;
 177   1      

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产不卡高清在线观看视频| 99re在线视频这里只有精品| 国产免费久久精品| 蜜臀久久99精品久久久久久9| 99久久精品久久久久久清纯| 国产日产精品1区| 国产suv精品一区二区三区 | 国产最新精品精品你懂的| 亚洲免费在线视频| 欧美在线制服丝袜| 日一区二区三区| 色哟哟在线观看一区二区三区| 亚洲欧美视频在线观看| 欧美成人性福生活免费看| 亚洲制服丝袜av| 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美性极品少妇| 亚洲一本大道在线| 欧美久久久久久久久中文字幕| 亚洲欧美日韩系列| 3d动漫精品啪啪一区二区竹菊 | 狠狠色狠狠色综合日日91app| 制服视频三区第一页精品| 天天射综合影视| 欧美韩国日本一区| 欧美日韩国产乱码电影| 91福利区一区二区三区| 日本女人一区二区三区| 一区二区三区四区视频精品免费| 国产午夜亚洲精品羞羞网站| 久久人人97超碰com| 欧美高清你懂得| 日本韩国欧美一区| 成人免费看片app下载| 国产精品女主播av| 久久久久久久久久久久久夜| 欧美性欧美巨大黑白大战| 天使萌一区二区三区免费观看| 国产精品入口麻豆原神| 国产日韩欧美精品综合| 欧美精品一区二区三区在线播放 | 国产成人亚洲综合a∨猫咪| 日本美女一区二区| 卡一卡二国产精品| 亚洲最快最全在线视频| 亚洲精品午夜久久久| 欧美激情一区二区三区蜜桃视频| 久久久综合精品| 国产亚洲欧美一区在线观看| 26uuu亚洲婷婷狠狠天堂| 精品国产乱码91久久久久久网站| 精品88久久久久88久久久| 欧美精品视频www在线观看| 欧美一级国产精品| 久久久久久久综合日本| 成人欧美一区二区三区白人| 26uuu久久综合| 一区二区三区国产豹纹内裤在线| 一区二区三区四区视频精品免费| 亚洲成av人片在线观看无码| 日韩国产高清在线| 99久久精品情趣| 欧美一区二区三区不卡| 国产欧美日韩在线| 成人免费一区二区三区视频| 国产精品护士白丝一区av| 17c精品麻豆一区二区免费| 婷婷六月综合网| 一本色道久久综合亚洲aⅴ蜜桃| 欧美电影免费观看完整版| 在线成人免费视频| 亚洲五码中文字幕| 粉嫩aⅴ一区二区三区四区五区 | 日韩av一级电影| 欧美午夜影院一区| 亚洲大片精品永久免费| 蜜桃精品在线观看| 91精品国产综合久久精品app| 欧美—级在线免费片| 日韩av电影免费观看高清完整版| 久久成人羞羞网站| 日韩美女一区二区三区四区| 日韩专区在线视频| 91麻豆精品国产91久久久久久 | 亚洲va中文字幕| 91老师国产黑色丝袜在线| 亚洲欧美在线另类| 日本道免费精品一区二区三区| 亚洲欧洲韩国日本视频| av电影在线不卡| 亚洲国产成人tv| 在线观看三级视频欧美| 丝袜国产日韩另类美女| 精品国产污网站| av一区二区三区黑人| 久久精品国产在热久久| 亚洲国产精品影院| 中文字幕日韩精品一区| 欧美精品一区二区三区在线| 欧美视频精品在线观看| av不卡一区二区三区| 国产99久久久国产精品潘金网站| 午夜精品成人在线| 亚洲欧洲综合另类在线| 中文子幕无线码一区tr| 久久综合九色综合欧美亚洲| 欧美丰满少妇xxxbbb| 欧美日韩一区二区三区不卡| 色综合久久精品| 在线亚洲一区二区| 色又黄又爽网站www久久| 91丝袜呻吟高潮美腿白嫩在线观看| 成人免费视频caoporn| 成人h动漫精品一区二| 成人综合激情网| 91麻豆精品视频| 欧美自拍偷拍一区| 欧美乱熟臀69xxxxxx| 欧美一区二区久久久| 精品99一区二区| 亚洲日本电影在线| 日韩国产欧美在线观看| 日韩成人av影视| 国产精品18久久久久久vr| 国产精品原创巨作av| 国产乱码精品一区二区三区五月婷| 国产99久久久国产精品潘金| av不卡在线播放| 777午夜精品免费视频| 久久久久久久久久久99999| 亚洲欧美日韩久久精品| 日本成人在线网站| 粉嫩一区二区三区性色av| 欧美性极品少妇| 中文字幕欧美激情| 青青草伊人久久| 97久久超碰国产精品| 久久久久国产精品麻豆ai换脸| 亚洲欧洲三级电影| 六月丁香婷婷色狠狠久久| 91免费小视频| 国产精品全国免费观看高清| 婷婷亚洲久悠悠色悠在线播放| 欧美精品日日鲁夜夜添| 亚洲综合免费观看高清完整版在线| 免费高清在线一区| 91麻豆精品国产91久久久久久| 亚洲国产精品人人做人人爽| 99久久婷婷国产| 亚洲桃色在线一区| 欧美影院午夜播放| 一区二区三区成人| 91精品福利在线一区二区三区| 亚洲免费观看高清完整版在线观看| 国产精品亚洲成人| 欧美激情在线免费观看| 黑人巨大精品欧美一区| 日韩欧美高清一区| 成人久久视频在线观看| ...av二区三区久久精品| 成人综合婷婷国产精品久久蜜臀 | 欧美一区2区视频在线观看| 天堂成人国产精品一区| 日韩欧美激情在线| 在线影院国内精品| 秋霞成人午夜伦在线观看| 日韩一区二区三区免费观看 | 国产69精品久久久久毛片| 一区在线观看视频| 欧美色手机在线观看| 精品一区二区三区免费观看| 久久精品网站免费观看| 欧美中文字幕一二三区视频| 免费人成网站在线观看欧美高清| 欧美电视剧免费观看| 91免费国产视频网站| 极品少妇xxxx偷拍精品少妇| 国产精品久久精品日日| 欧美日韩成人高清| 国产福利精品一区二区| 免费成人在线视频观看| 一级精品视频在线观看宜春院| 精品国产91乱码一区二区三区| 91在线视频观看| 99免费精品视频| 国产成人无遮挡在线视频| 日韩电影网1区2区| 免费成人在线观看| 开心九九激情九九欧美日韩精美视频电影 | 日韩欧美一级二级| 欧美绝品在线观看成人午夜影视| 99re视频精品| 91在线丨porny丨国产| 91免费观看国产| 一本到一区二区三区| 色综合久久久久综合| 色香蕉久久蜜桃| 欧美乱妇一区二区三区不卡视频| 欧美在线播放高清精品| 色婷婷久久久久swag精品|