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

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

?? os_sem.lst

?? keil下單片機C8051F020的源程序
?? LST
?? 第 1 頁 / 共 2 頁
字號:
C51 COMPILER V7.50   OS_SEM                                                                12/12/2007 16:55:25 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE OS_SEM
OBJECT MODULE PLACED IN OS_SEM.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE OS_SEM.C LARGE BROWSE INCDIR(F:\software\KEIL\;C:\keil\C51\) DEBUG OBJECTEX
                    -TEND

line level    source

   1          /*
   2          *********************************************************************************************************
   3          *                                                uC/OS-II
   4          *                                          The Real-Time Kernel
   5          *                                          SEMAPHORE MANAGEMENT
   6          *
   7          *                        (c) Copyright 1992-1998, Jean J. Labrosse, Plantation, FL
   8          *                                           All Rights Reserved
   9          *
  10          *                                                  V2.00
  11          *
  12          * File : OS_SEM.C
  13          * By   : Jean J. Labrosse
  14          *********************************************************************************************************
  15          */
  16          
  17          #ifndef  OS_MASTER_FILE
  18          #include "includes.h"
  19          #endif
  20          
  21          #if OS_SEM_EN
              /*
              *********************************************************************************************************
              *                                           ACCEPT SEMAPHORE
              *
              * Description: This function checks the semaphore to see if a resource is available or, if an event
              *              occurred.  Unlike OSSemPend(), OSSemAccept() does not suspend the calling task if the
              *              resource is not available or the event did not occur.
              *
              * Arguments  : pevent     is a pointer to the event control block
              *
              * Returns    : >  0       if the resource is available or the event did not occur the semaphore is
              *                         decremented to obtain the resource.
              *              == 0       if the resource is not available or the event did not occur or,
              *                         you didn't pass a pointer to a semaphore
              *********************************************************************************************************
              */
              
              INT16U OSSemAccept (OS_EVENT *pevent) reentrant
              {
                  INT16U cnt;
              
              
                  OS_ENTER_CRITICAL();
                  if (pevent->OSEventType != OS_EVENT_TYPE_SEM) {   /* Validate event block type                     */
                      OS_EXIT_CRITICAL();
                      return (0);
                  }
                  cnt = pevent->OSEventCnt;
                  if (cnt > 0) {                                    /* See if resource is available                  */
                      pevent->OSEventCnt--;                         /* Yes, decrement semaphore and notify caller    */
                  }
                  OS_EXIT_CRITICAL();
                  return (cnt);                                     /* Return semaphore count                        */
C51 COMPILER V7.50   OS_SEM                                                                12/12/2007 16:55:25 PAGE 2   

              }
              
              /*$PAGE*/
              /*
              *********************************************************************************************************
              *                                           CREATE A SEMAPHORE
              *
              * Description: This function creates a semaphore.
              *
              * Arguments  : cnt           is the initial value for the semaphore.  If the value is 0, no resource is
              *                            available (or no event has occurred).  You initialize the semaphore to a 
              *                            non-zero value to specify how many resources are available (e.g. if you have
              *                            10 resources, you would initialize the semaphore to 10).
              *
              * Returns    : != (void *)0  is a pointer to the event control clock (OS_EVENT) associated with the
              *                            created semaphore
              *              == (void *)0  if no event control blocks were available
              *********************************************************************************************************
              */
              
              OS_EVENT *OSSemCreate (INT16U cnt) reentrant
              {
                  OS_EVENT *pevent;
              
              
                  OS_ENTER_CRITICAL();
                  pevent = OSEventFreeList;                              /* Get next free event control block        */
                  if (OSEventFreeList != (OS_EVENT *)0) {                /* See if pool of free ECB pool was empty   */
                      OSEventFreeList = (OS_EVENT *)OSEventFreeList->OSEventPtr;
                  }
                  OS_EXIT_CRITICAL();
                  if (pevent != (OS_EVENT *)0) {                         /* Get an event control block               */
                      pevent->OSEventType = OS_EVENT_TYPE_SEM;
                      pevent->OSEventCnt  = cnt;                         /* Set semaphore value                      */
                      OSEventWaitListInit(pevent);
                  }
                  return (pevent);
              }
              
              /*$PAGE*/
              /*
              *********************************************************************************************************
              *                                           PEND ON SEMAPHORE
              *
              * Description: This function waits for a semaphore.
              *
              * Arguments  : pevent        is a pointer to the event control block associated with the desired 
              *                            semaphore.
              *
              *              timeout       is an optional timeout period (in clock ticks).  If non-zero, your task will
              *                            wait for the resource up to the amount of time specified by this argument.  
              *                            If you specify 0, however, your task will wait forever at the specified 
              *                            semaphore or, until the resource becomes available (or the event occurs).
              *
              *              err           is a pointer to where an error message will be deposited.  Possible error
              *                            messages are:
              *
              *                            OS_NO_ERR          The call was successful and your task owns the resource 
              *                                               or, the event you are waiting for occurred.
              *                            OS_TIMEOUT         The semaphore was not received within the specified 
              *                                               timeout.
              *                            OS_ERR_EVENT_TYPE  If you didn't pass a pointer to a semaphore.
C51 COMPILER V7.50   OS_SEM                                                                12/12/2007 16:55:25 PAGE 3   

              *                            OS_ERR_PEND_ISR    If you called this function from an ISR and the result
              *                                               would lead to a suspension.
              *
              * Returns    : none
              *********************************************************************************************************

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人午夜私人影院| 精品黑人一区二区三区久久| 国产色一区二区| 美女视频网站久久| 99国产精品视频免费观看| 中文字幕+乱码+中文字幕一区| 国产日产亚洲精品系列| 91精品国产综合久久精品图片| 成人h版在线观看| jlzzjlzz欧美大全| 高清不卡在线观看av| 久久99精品国产.久久久久久| 日本一区二区动态图| 久久夜色精品国产欧美乱极品| 91精品黄色片免费大全| 欧美日韩不卡在线| 欧美日韩视频第一区| 欧美日韩亚洲综合一区| 欧美日韩国产一二三| 在线免费观看日韩欧美| 欧美日韩精品一区二区天天拍小说 | 欧美日韩国产综合一区二区| 91女厕偷拍女厕偷拍高清| 日本福利一区二区| 91蝌蚪porny| 欧美va日韩va| 国产精品福利一区| 欧美性大战xxxxx久久久| 黑人精品欧美一区二区蜜桃| 亚洲成人自拍偷拍| 欧美高清hd18日本| 亚洲精品成人悠悠色影视| 青青国产91久久久久久| 欧美成人bangbros| 一本久道久久综合中文字幕| 国产成人激情av| 国产精品水嫩水嫩| 久久成人羞羞网站| 亚洲人成电影网站色mp4| 精品视频在线免费| 午夜精品福利一区二区蜜股av| av网站免费线看精品| 91丝袜美腿高跟国产极品老师| 91成人国产精品| 久久蜜桃香蕉精品一区二区三区| 一区二区三区四区av| 大陆成人av片| 91精品国产综合久久婷婷香蕉| 欧美日韩一区二区在线观看视频| 久久综合色之久久综合| 亚洲国产一区二区视频| 91丝袜美腿高跟国产极品老师| 欧美嫩在线观看| 欧美极品少妇xxxxⅹ高跟鞋 | 精品国产sm最大网站免费看| 国产欧美日韩卡一| 日本sm残虐另类| 91麻豆国产香蕉久久精品| 欧美激情综合网| 国产在线视频精品一区| 精品久久人人做人人爽| 天堂久久一区二区三区| 在线精品视频小说1| 亚洲精品视频免费观看| 国产一区二区不卡| 国产精品无人区| 色综合天天性综合| 久久午夜国产精品| 国产精品每日更新| 91网页版在线| 欧美嫩在线观看| 国产校园另类小说区| 在线一区二区三区四区五区 | 欧美一区二区在线免费观看| 在线观看91精品国产入口| 99久久99久久久精品齐齐| 高清不卡一区二区| 国产大陆精品国产| 麻豆国产91在线播放| 亚洲午夜私人影院| 精品欧美一区二区在线观看| 99久久国产免费看| 国产精品资源站在线| 亚洲国产综合色| 中文字幕一区二区三区色视频| 欧美肥大bbwbbw高潮| 成人晚上爱看视频| 国产大片一区二区| 免费久久99精品国产| 亚洲男人天堂av| 日韩一区二区三区高清免费看看| 91网站在线观看视频| 麻豆久久一区二区| 精品在线你懂的| 美女视频黄久久| 免费美女久久99| 黄色日韩三级电影| 久久精品国产亚洲aⅴ | 亚洲一区在线视频| 亚洲欧美色一区| 亚洲欧洲色图综合| 中文幕一区二区三区久久蜜桃| 欧美精品一区二| 国产日韩欧美精品综合| 国产欧美一区在线| 亚洲精选一二三| 国产亚洲精品aa午夜观看| 精品久久久久久久久久久久包黑料| 视频在线观看国产精品| 国产精品色哟哟网站| 国产九色精品成人porny| 国产色综合一区| 国产激情91久久精品导航| 国产成人一区在线| 色婷婷激情一区二区三区| 日韩一区二区免费高清| 亚洲国产激情av| 午夜精品久久久久久| 国产麻豆精品在线| 欧美影院精品一区| 久久综合五月天婷婷伊人| 亚洲激情网站免费观看| 蜜臀精品一区二区三区在线观看| 丰满白嫩尤物一区二区| 在线播放/欧美激情| 国产欧美精品一区aⅴ影院| 亚洲一区二区三区三| 国产在线国偷精品免费看| 色吊一区二区三区| 久久久电影一区二区三区| 亚洲国产日韩av| 国产成人亚洲精品青草天美 | 亚洲综合在线五月| 国产一区三区三区| 欧美三电影在线| 久久精品视频网| 免费人成精品欧美精品| 一本大道综合伊人精品热热| 精品成人一区二区| 婷婷国产v国产偷v亚洲高清| 91影视在线播放| 亚洲国产精品传媒在线观看| 日本欧美一区二区在线观看| 色嗨嗨av一区二区三区| 国产精品视频观看| 国产综合色视频| 日韩午夜av一区| 午夜视频一区二区三区| 一本久久精品一区二区| 亚洲国产电影在线观看| 麻豆传媒一区二区三区| 欧美理论片在线| 亚洲图片欧美综合| 色婷婷狠狠综合| 18成人在线观看| 99久久精品国产一区二区三区| 国产欧美va欧美不卡在线| 精品在线观看免费| 日韩欧美在线123| 青椒成人免费视频| 91精品啪在线观看国产60岁| 亚洲成人黄色影院| 欧美在线视频日韩| 亚洲一区二区三区中文字幕在线| 一本色道a无线码一区v| 亚洲精品免费在线播放| 一本色道久久综合狠狠躁的推荐| 国产精品超碰97尤物18| 成人精品小蝌蚪| 国产精品家庭影院| 99国产精品久久久久| 中文字幕永久在线不卡| 99在线精品视频| 亚洲情趣在线观看| 一本久久精品一区二区| 亚洲妇熟xx妇色黄| 91精品国产一区二区三区 | 国产一区二区三区久久悠悠色av| 日韩一级片网址| 久久99九九99精品| 久久精品一区二区三区不卡牛牛| 国v精品久久久网| 一区在线播放视频| 欧美视频你懂的| 日韩主播视频在线| 精品国产sm最大网站| 国产成人免费高清| 亚洲欧美中日韩| 欧美色综合天天久久综合精品| 亚洲国产你懂的| 日韩视频123| 成人av在线播放网站| 亚洲国产综合人成综合网站| 欧美一区国产二区| 国产99久久久国产精品潘金网站| 中文字幕字幕中文在线中不卡视频| 色综合久久88色综合天天| 五月婷婷久久丁香| 国产免费成人在线视频| 色av综合在线|