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

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

?? net_ctr.h

?? ucos的tcpip協(xié)議占
?? H
字號:
/*
*********************************************************************************************************
*                                              uC/TCP-IP
*                                      The Embedded TCP/IP Suite
*
*                          (c) Copyright 2003-2006; Micrium, Inc.; Weston, FL
*
*               All rights reserved.  Protected by international copyright laws.
*
*               uC/TCP-IP is provided in source form for FREE evaluation, for educational
*               use or peaceful research.  If you plan on using uC/TCP-IP in a commercial
*               product you need to contact Micrium to properly license its use in your
*               product.  We provide ALL the source code for your convenience and to help
*               you experience uC/TCP-IP.  The fact that the source code is provided does
*               NOT mean that you can use it without paying a licensing fee.
*
*               Knowledge of the source code may NOT be used to develop a similar product.
*
*               Please help us continue to provide the Embedded community with the finest
*               software available.  Your honesty is greatly appreciated.
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*
*                                      NETWORK COUNTER MANAGEMENT
*
* Filename      : net_ctr.h
* Version       : V1.87
* Programmer(s) : ITJ
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                               EXTERNS
*********************************************************************************************************
*/

#ifdef   NET_CTR_MODULE
#define  NET_CTR_EXT
#else
#define  NET_CTR_EXT  extern
#endif


/*$PAGE*/
/*
*********************************************************************************************************
*                                               DEFINES
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*                                               MACRO'S
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                       NETWORK COUNTER MACRO'S
*
* Description : Increment network counter(s).
*
* Argument(s) : Various network counter variable(s) to increment.
*
* Return(s)   : none.
*
* Caller(s)   : various.
*
*               These macro's are INTERNAL network protocol suite macro's & SHOULD NOT be called by 
*               application function(s).
*
* Note(s)     : (1) ALL functions which call network counter macro's MUST declare local variable 'cpu_sr' if
*                   critical section method is configured as CPU_CRITICAL_METHOD_STATUS_LOCAL :
*
*                       #if (CPU_CFG_CRITICAL_METHOD == CPU_CRITICAL_METHOD_STATUS_LOCAL)
*                            CPU_SR  cpu_sr;
*                       #endif
*
*                   (a) #### Macro's require critical section for exclusive access?
*********************************************************************************************************
*/

#define  NET_CTR_INC(ctr)                                       { CPU_CRITICAL_ENTER(); \
                                                                 (ctr)++;               \
                                                                  CPU_CRITICAL_EXIT();  }

#define  NET_CTR_INC_LARGE(ctr_hi, ctr_lo)                      { CPU_CRITICAL_ENTER(); \
                                                                 (ctr_lo)++;            \
                                                                  if ((ctr_lo) == 0) {  \
                                                                      (ctr_hi)++;       \
                                                                  }                     \
                                                                  CPU_CRITICAL_EXIT();  }


#if (NET_CTR_CFG_STAT_EN == DEF_ENABLED)
#define  NET_CTR_STAT_INC(stat_ctr)                             { NET_CTR_INC(stat_ctr);                       }
#define  NET_CTR_STAT_INC_LARGE(stat_ctr_hi, stat_ctr_lo)       { NET_CTR_INC_LARGE(stat_ctr_hi, stat_ctr_lo); }
#else
#define  NET_CTR_STAT_INC(stat_ctr)
#define  NET_CTR_STAT_INC_LARGE(stat_ctr_hi, stat_ctr_lo)
#endif


#if (NET_CTR_CFG_ERR_EN == DEF_ENABLED)
#define  NET_CTR_ERR_INC(err_ctr)                               { NET_CTR_INC(err_ctr);                        }
#define  NET_CTR_ERR_INC_LARGE(err_ctr_hi, err_ctr_lo)          { NET_CTR_INC_LARGE(err_ctr_hi,  err_ctr_lo);  }
#else
#define  NET_CTR_ERR_INC(err_ctr)
#define  NET_CTR_ERR_INC_LARGE(err_ctr_hi, err_ctr_lo)
#endif


/*$PAGE*/
/*
*********************************************************************************************************
*                                             DATA TYPES
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                      NETWORK COUNTER DATA TYPE
*
* Note(s) : (1) NET_CTR_MAX  SHOULD be globally #define'd AFTER 'NET_CTR' data type declared.
*
*           (2) NET_CTR_PCT_NUMER_MAX_TH, NET_CTR_BIT_LO, & NET_CTR_BIT_HI  MUST be globally #define'd
*               AFTER 'NET_CTR' data type declared.
*
*           (3) NET_CTR_PCT_NUMER_MAX_TH  #define's the maximum value for a counter that is used as a 
*               numerator in a percentage calculation.  This threshold is required since the numerator in
*               a percentage calculation is multiplied by 100 (%) BEFORE division with the denominator :
*
*                                    Numerator * 100%
*                   Percentage (%) = ----------------
*                                      Denominator
*
*               Therefore, the numerator MUST be constrained by this threshold to prevent integer overflow
*               from the multiplication BEFORE the division.
*
*               (a) The percentage threshold value is calculated as follows :
*
*                                                N  
*                                               2  
*                       Percentage Threshold = ---
*                                              100
*
*               (b) To avoid macro integer overflow, the threshold value is modified by one less "divide-by-2"
*                   left-shift compensated by dividing the numerator by 50, instead of 100 :
*
*                                               N-1     N
*                                              2       2  / 2
*                       Percentage Threshold = ---- = -------
*                                               50    100 / 2
*********************************************************************************************************
*/
                                                                
typedef  CPU_INT32U  NET_CTR;                                   /* Defines   max nbr of errs/stats to cnt.              */

#define  NET_CTR_MAX                        DEF_INT_32U_MAX_VAL /* Define as max unsigned val (see Note #1).            */


#define  NET_CTR_PCT_NUMER_MAX_TH        (((NET_CTR)1 << ((sizeof(NET_CTR) * DEF_OCTET_NBR_BITS) - 1)) / (NET_CTR)50)

#define  NET_CTR_BIT_LO                   ((NET_CTR)DEF_BIT_00)
#define  NET_CTR_BIT_HI                   ((NET_CTR)1 << ((sizeof(NET_CTR) * DEF_OCTET_NBR_BITS) - 1))


/*$PAGE*/
/*
*********************************************************************************************************
*                                          GLOBAL VARIABLES
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*                                         FUNCTION PROTOTYPES
*********************************************************************************************************
*/

CPU_INT08U  NetCtr_CalcPctLarge(NET_CTR  pct_numer_hi,
                                NET_CTR  pct_numer_lo,
                                NET_CTR  pct_denom_hi,
                                NET_CTR  pct_denom_lo);


/*$PAGE*/
/*
*********************************************************************************************************
*                                        CONFIGURATION ERRORS
*********************************************************************************************************
*/

#ifndef  NET_CTR_CFG_STAT_EN
#error  "NET_CTR_CFG_STAT_EN        not #define'd in 'net_cfg.h'"
#error  "                     [MUST be  DEF_DISABLED]           "
#error  "                     [     ||  DEF_ENABLED ]           "
#elif  ((NET_CTR_CFG_STAT_EN != DEF_DISABLED) && \
        (NET_CTR_CFG_STAT_EN != DEF_ENABLED ))
#error  "NET_CTR_CFG_STAT_EN  illegally #define'd in 'net_cfg.h'"
#error  "                     [MUST be  DEF_DISABLED]           "
#error  "                     [     ||  DEF_ENABLED ]           "
#endif



#ifndef  NET_CTR_CFG_ERR_EN
#error  "NET_CTR_CFG_ERR_EN        not #define'd in 'net_cfg.h'"
#error  "                    [MUST be  DEF_DISABLED]           "
#error  "                    [     ||  DEF_ENABLED ]           "
#elif  ((NET_CTR_CFG_ERR_EN != DEF_DISABLED) && \
        (NET_CTR_CFG_ERR_EN != DEF_ENABLED ))
#error  "NET_CTR_CFG_ERR_EN  illegally #define'd in 'net_cfg.h'"
#error  "                    [MUST be  DEF_DISABLED]           "
#error  "                    [     ||  DEF_ENABLED ]           "
#endif
	 	 			 		    	 				 	    	 	 	 		    	     	 	 	 		 	  	  	  	     	 	      	   		 	 	 	   		   			 	     			  			 		   	 			       	  	 		  	 	  	 		 		   		  	  			 	  	 		 	 	 			 	 		 		 	 		 	   		 	 	 	   		     			  			 		  	 		 	  			 	 	 	 	  		  	   		   	   	 				 		 			 			  			 		   		 		 				 		 	    		   	  		 

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产在线精品一区在线观看麻豆| 夜夜嗨av一区二区三区中文字幕| 成人免费黄色在线| 亚洲午夜影视影院在线观看| 欧美成人三级在线| 91捆绑美女网站| 国产一区欧美日韩| 亚洲成人tv网| 亚洲欧美另类久久久精品2019| 欧美一区二区三区四区高清| 99久久99久久综合| 国产精品一区在线观看你懂的| 亚洲国产精品自拍| 亚洲女同一区二区| 亚洲国产精品国自产拍av| 欧美日韩一区精品| 色综合天天在线| 精品日韩一区二区三区| 色中色一区二区| 国产99久久久国产精品免费看| 丝瓜av网站精品一区二区| 亚洲色图在线看| 久久精品一区二区三区不卡| 日韩一区二区三区电影在线观看 | 在线免费观看日本一区| 大白屁股一区二区视频| 国精产品一区一区三区mba桃花 | 国内外精品视频| 日韩二区三区四区| 亚洲大片免费看| 洋洋av久久久久久久一区| 亚洲欧洲日本在线| 欧美国产精品一区| 久久精品一区四区| 久久久综合精品| 欧美精品一区二区久久婷婷| 欧美一区午夜视频在线观看| 7777精品伊人久久久大香线蕉 | 亚洲国产日韩a在线播放| 亚洲婷婷国产精品电影人久久| 国产精品美女久久久久高潮| 国产精品萝li| 国产精品灌醉下药二区| 国产精品久久久久久户外露出| 国产欧美日韩卡一| 中文一区二区在线观看| 国产精品白丝在线| 国产精品成人网| 亚洲精品国产无套在线观| 亚洲欧美日韩在线| 亚洲国产cao| 日韩不卡一区二区三区| 蜜臀va亚洲va欧美va天堂| 久久久久久久精| 国产亚洲综合av| 欧美激情艳妇裸体舞| 国产精品无圣光一区二区| |精品福利一区二区三区| 亚洲精品成a人| 亚洲第一成年网| 久久福利资源站| 成人免费看黄yyy456| 在线观看精品一区| 日韩欧美中文字幕精品| 久久精品水蜜桃av综合天堂| 中文字幕在线播放不卡一区| 亚洲一二三四区| 日韩av一二三| 国产91精品久久久久久久网曝门| 91首页免费视频| 欧美久久久久久久久久| 337p日本欧洲亚洲大胆精品| 中文字幕一区二区三区蜜月| 亚洲国产成人精品视频| 国产一区二区网址| 色94色欧美sute亚洲线路一久| 欧美日本不卡视频| 国产肉丝袜一区二区| 一区二区三区av电影| 久久精品99国产精品| 97久久超碰精品国产| 91麻豆精品国产91久久久更新时间 | 免费精品视频在线| 成人丝袜高跟foot| 欧美精三区欧美精三区| 亚洲精品免费视频| 欧美a一区二区| 成人动漫视频在线| 91麻豆精品久久久久蜜臀| 国产精品无码永久免费888| 亚洲v日本v欧美v久久精品| 国产成人免费在线观看| 欧美日韩国产首页| 国产欧美日韩在线| 日韩电影在线免费| 91在线视频观看| 精品国产乱码久久| 亚洲精品乱码久久久久久久久| 久久精品国产网站| 在线观看日韩毛片| 国产精品美女一区二区三区| 裸体在线国模精品偷拍| 欧美中文字幕久久| 国产精品第13页| 国产精品一区二区久久不卡 | 亚洲高清久久久| 成人国产亚洲欧美成人综合网| 欧美伦理视频网站| 亚洲欧美日韩中文字幕一区二区三区 | 亚洲成av人片观看| 日本精品一区二区三区四区的功能| 欧美成人精品1314www| 亚洲一区视频在线观看视频| 成人av电影在线网| 久久久久久久久久久黄色| 视频在线观看91| 精品视频一区三区九区| 综合久久国产九一剧情麻豆| 国产精品一区久久久久| 精品国产成人在线影院| 日韩成人dvd| 91精品国产91综合久久蜜臀| 午夜影院久久久| 欧美亚洲国产一区二区三区va| 中文字幕在线一区二区三区| 国产精品一区免费视频| 久久蜜桃一区二区| 国产真实乱子伦精品视频| 欧美一区二区视频观看视频| 肉肉av福利一精品导航| 欧美老人xxxx18| 五月婷婷久久综合| 欧美日韩视频专区在线播放| 亚洲一区自拍偷拍| 欧美视频精品在线观看| 艳妇臀荡乳欲伦亚洲一区| 在线视频综合导航| 一级精品视频在线观看宜春院| 色婷婷久久久久swag精品 | 国产精品一级在线| 久久精品在线免费观看| 丁香激情综合国产| 国产精品久久久久久久久久免费看 | 国产精品免费久久| 99久久国产免费看| 亚洲综合一二区| 欧美日韩在线综合| 日产欧产美韩系列久久99| 日韩午夜激情av| 精品亚洲国内自在自线福利| 精品国精品自拍自在线| 国产成人一区二区精品非洲| 国产精品色在线| 色婷婷综合视频在线观看| 亚洲高清在线视频| 欧美一区二区播放| 激情综合色播激情啊| 久久精品日产第一区二区三区高清版 | 久久不见久久见免费视频7| 欧美精品一区二区三区蜜臀| 成人精品视频网站| 玉米视频成人免费看| 7777精品伊人久久久大香线蕉最新版| 久久精品72免费观看| 国产欧美一区二区精品性| 91视频91自| 日韩国产在线观看一区| 2024国产精品| 色综合天天综合给合国产| 日产精品久久久久久久性色| 精品久久久久久久久久久久包黑料 | 国产欧美视频一区二区| 91麻豆产精品久久久久久 | 国产福利一区二区三区视频| 日韩一区欧美一区| 在线成人小视频| 国产精品99久久久久| 亚洲人123区| 精品区一区二区| 97久久精品人人做人人爽50路| 偷拍一区二区三区| 日本一区二区三级电影在线观看 | 青娱乐精品在线视频| 国产日韩欧美高清在线| 欧美在线小视频| 国产原创一区二区| 夜夜嗨av一区二区三区四季av| 久久亚区不卡日本| 欧美在线免费视屏| 国产高清在线精品| 亚洲国产精品人人做人人爽| 国产欧美一区视频| 在线电影欧美成精品| 91丝袜国产在线播放| 精品亚洲国内自在自线福利| 亚洲一二三专区| 综合色中文字幕| 久久亚洲春色中文字幕久久久| 欧美日韩电影一区| 99精品久久只有精品|