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

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

?? host2131.lst

?? keyword:usb host sl8
?? LST
?? 第 1 頁 / 共 2 頁
字號:
C51 COMPILER V6.10  HOST2131                                                               09/04/2002 22:22:07 PAGE 1   


C51 COMPILER V6.10, COMPILATION OF MODULE HOST2131
OBJECT MODULE PLACED IN .\host2131.OBJ
COMPILER INVOKED BY: f:\Keil\C51\BIN\C51.EXE .\host2131.c OPTIMIZE(6,SPEED) INCDIR(c:\cypress\usb\target\inc) DEBUG OBJE
                    -CTEXTEND

stmt level    source

   1          #pragma NOIV					            // Do not generate interrupt vectors
   2          ////////////////////////////////////////////////////////////////////////////////
   3          // File:		host2131.c
   4          // Purpose:	    8051 firmware to master SL811 Embedded Host.
   5          //              Derived from periph.c frameworks file.
   6          //              Contains USB peripheral-related firmware.
   7          //              Contains PC host command interface.
   8          //              Based on SL811HST code written by cxn.
   9          //
  10          // $Header: /USB/ez811/firmware/Emb_Host/host2131.c 8     5/17/02 6:09p Tpm $
  11          // Copyright (c) 2002 Cypress Semiconductor. May not be reproduced without permission.
  12          // See the license agreement for more details.
  13          ////////////////////////////////////////////////////////////////////////////////
  14          
  15          #include "ezusb.h"
*** ERROR 318 IN LINE 15 OF .\host2131.c: can't open file 'ezusb.h'
  16          #include "ezregs.h"
*** ERROR 318 IN LINE 16 OF .\host2131.c: can't open file 'ezregs.h'
  17          #include "host_811.h"
*** ERROR 318 IN LINE 9 OF host_811.h: can't open file 'ezusb.h'
*** ERROR 318 IN LINE 10 OF host_811.h: can't open file 'ezregs.h'
*** ERROR C141 IN LINE 55 OF HOST_811.H: syntax error near 'WORD'
*** ERROR C129 IN LINE 55 OF HOST_811.H: missing ';' before 'wVID'
  18          
  19          extern BOOL	GotSUD;			// Received setup data flag
  20          extern BOOL	Sleep;
  21          extern BOOL	Rwuen;
  22          extern BOOL	Selfpwr;
  23          
  24          extern BOOL SLAVE_ENUMERATED;
  25          extern BOOL	BULK_OUT_DONE;
  26          extern BOOL DESC_XFER;
  27          extern BOOL DATA_XFER;
  28          extern xdata BYTE DataBufLen;
  29          extern xdata BYTE DBUF[];
  30          extern xdata BYTE HOSTCMD[];
  31          extern xdata BYTE REGBUFF[];
  32          extern xdata BYTE remainder;
  33          extern void sl811h_init(void);
  34          extern int slave_detect(void);
  35          extern BOOL	CONFIG_DONE;
  36          
  37          extern BOOL DATA_XFER_OUT;
  38          extern xdata BYTE DBUFOut[];
  39          extern BOOL dsPoll;
  40          extern BOOL bDataToggle;
  41          
  42          extern xdata pDevDesc  	pDev;			// Device descriptor struct
  43          extern xdata pCfgDesc  	pCfg;			// Config descriptor struct
  44          extern xdata pStrDesc 	pStr;			// String descriptor struct
  45          extern xdata pHidDesc 	pHid;			// HID class descriptor struct
  46          extern xdata pHubDesc 	pHub;			// HUD class descriptor struct
  47          extern xdata pIntfDesc 	pIfc;			// Interface descriptor struct
  48          extern xdata pHUBDEV    uHub;			// Struct for downstream device on HUB
C51 COMPILER V6.10  HOST2131                                                               09/04/2002 22:22:07 PAGE 2   

  49          extern xdata pUSBDEV    uDev[];	// Multiple USB devices attributes, Max 5 devices
  50          
  51          void dsOut(void);
  52          int DataRW(BYTE usbaddr, BYTE epaddr, WORD wPayload, WORD wLen, BYTE *pData);
  53          WORD GetDevInfo(BYTE *DevInfo);
  54          
  55          int	desc_next;
  56          int	data_next;
  57          void TD_Poll(void);
  58          
  59          BYTE	Configuration;		// Current configuration
  60          BYTE	AlternateSetting;	// Alternate settings
  61          
  62          //-----------------------------------------------------------------------------
  63          // Task Dispatcher hooks
  64          //	The following hooks are called by the task dispatcher.
  65          //-----------------------------------------------------------------------------
  66          // IN2 	=>  1 bytes max, Refresh data update from ezusb to host
  67          //-----------------------------------------------------------------------------
  68          void TD_Init(void) 				// Called once at startup
  69          {
  70          	Rwuen = TRUE;				// Enable remote-wakeup
  71          	ISOCTL |= 0x01;				// free up iso endpoints for external data space (1024)
  72          
  73          	IN07VAL |= bmEP1;			// Enable endpoint 1 IN
  74          	IN07VAL |= bmEP2;			// Enable endpoint 2 IN
  75          	IN07VAL |= bmEP3;			// Enable endpoint 3 IN
  76          	OUT07VAL |= bmEP1;			// Enable endpoint 1 OUT 
  77             	OUT07IEN |= bmEP1;			// Enable endpoint 1 OUT interrupt
  78          	OUT1BC = 0;					// Arm Endpoint 1 OUT to recieve data
  79          	OUT07VAL |= bmEP3;			// Enable endpoint 3 OUT 
  80             	OUT07IEN |= bmEP3;			// Enable endpoint 3 OUT interrupt
  81          	OUT3BC = 0;					// Arm Endpoint 3 OUT to recieve data
  82          	
  83          	BPADDR = (WORD)TD_Poll;     // Setup breakpoint to trigger on TD_Poll()
  84          	USBBAV |= bmBPEN;			// Enable the breakpoint
  85          	USBBAV &= ~bmBPPULSE;
  86          
  87          	sl811h_init();				// setup SL811H chip variables
  88          	desc_next = 0;
  89          	data_next = 0;
  90          
  91          }
  92          
  93          //*****************************************************************************************
  94          // ENDPOINT FUNCTION :
  95          // EP2-IN  -> Return a byte of 0x01 to ezusb host to indicate a attach/detach for refresh
  96          //*****************************************************************************************
  97          void TD_Poll(void) 
  98          {
  99          	int	i,count;
 100              BYTE DescBufLen;		    // EZUSB's IN #1 descriptor buffer length
 101          
 102          	slave_detect();				// Poll for any slave USB device attached to "SL811HS" Embedded Host
 103          
 104              if(BULK_OUT_DONE && !DESC_XFER)
 105              {
 106          			BULK_OUT_DONE = FALSE;
 107          				switch(HOSTCMD[0])							// type of commands from EZUSB host
 108          				{
 109          					case SL_REFRESH:
 110          	                    DescBufLen = GetDevInfo(DBUF);
C51 COMPILER V6.10  HOST2131                                                               09/04/2002 22:22:07 PAGE 3   

 111                                  if(!DescBufLen)				
 112                                  { // there is nothing to transfer - keep the host app from pending
 113          	                      DBUF[0] = 0;		
 114          	                      DescBufLen = 1;			// arming the IN1 is done in the slave_detect loop               
             -         
 115                                  }
 116          						DESC_XFER = TRUE;					// set DESC_XFER to start transfer
 117          						break;
 118          
 119          					default: break;							// default break;
 120                          }
 121              }
 122          
 123          	if(DESC_XFER && !(IN1CS & bmEPBUSY))
 124          	{													// ensure DESC_XFER & IN1 not busy
 125          		if(DescBufLen)									// check for any data length
 126          		{												//
 127          			count = (int)((DescBufLen>=64) ? 64:DescBufLen);	// select data length, max allowed is 64 bytes
 128          			for(i=0; i<count; i++)						// copy data into IN buffer
 129          				IN1BUF[i] = DBUF[i+desc_next];			// 
 130          			IN1BC = count;								// arm IN data transfer
 131          			DescBufLen -= count;						// update remaining data len
 132          			desc_next += count;
 133                      if(!DescBufLen)
 134                      {
 135          			  desc_next = 0;
 136          			  DESC_XFER = FALSE;					    // reset DESC_XFER to stop transfer
 137                      }
 138          		}
 139          	}
 140          }
 141          
 142          //---------------------------------------
 143          BOOL TD_Suspend(void) 			// Called before the device goes into suspend mode
 144          {
 145          	return(TRUE);
 146          }
 147          
 148          BOOL TD_Resume(void) 			// Called after the device resumes
 149          {
 150          	return(TRUE);
 151          }
 152          
 153          //-----------------------------------------------------------------------------
 154          // Device Request hooks
 155          //	The following hooks are called by the end point 0 device request parser.
 156          //-----------------------------------------------------------------------------
 157          
 158          BOOL DR_GetDescriptor(void)
 159          {
 160          	return(TRUE);
 161          }
 162          
 163          BOOL DR_SetConfiguration(void)	// Called when a Set Configuration command is received
 164          {
 165          	Configuration = SETUPDAT[2];
 166             CONFIG_DONE = TRUE;
 167          	return(TRUE);				// Handled by user code
 168          }
 169          
 170          BOOL DR_GetConfiguration(void)	// Called when a Get Configuration command is received
 171          {
C51 COMPILER V6.10  HOST2131                                                               09/04/2002 22:22:07 PAGE 4   

 172          	IN0BUF[0] = Configuration;
 173          	EZUSB_SET_EP_BYTES(IN0BUF_ID,1);
 174          	return(TRUE);				// Handled by user code
 175          }
 176          
 177          BOOL DR_SetInterface(void) 		// Called when a Set Interface command is received
 178          {
 179          	AlternateSetting = SETUPDAT[2];
 180          	return(TRUE);				// Handled by user code
 181          }
 182          
 183          BOOL DR_GetInterface(void) 		// Called when a Set Interface command is received
 184          {
 185          	IN0BUF[0] = AlternateSetting;
 186          	EZUSB_SET_EP_BYTES(IN0BUF_ID,1);
 187          	return(TRUE);				// Handled by user code
 188          }
 189          
 190          BOOL DR_GetStatus(void)
 191          {
 192          	return(TRUE);
 193          }
 194          
 195          BOOL DR_ClearFeature(void)
 196          {
 197          	return(TRUE);
 198          }
 199          
 200          BOOL DR_SetFeature(void)
 201          {
 202          	return(TRUE);
 203          }
 204          
 205          #define EP0BUFF_SIZE	0x40
 206          
 207          BOOL DR_VendorCmnd(void)
 208          {
 209            WORD addr, len, bc;
 210            BYTE EpAddr, EpIdx;
 211            WORD i;
 212            BYTE RegAddr;
 213            xdata BYTE OUT_DATA[EP0BUFF_SIZE];	// OUT data buffer
 214            int retDataRW = FALSE;
 215            BYTE DescBufLen = 0;
 216            WORD ReqLen = 0;
 217          
 218            switch(SETUPDAT[1])
 219            { // NOTE" 0xA0 is reserved: 0xA0 = Anchor Download (handled by core)
 220              case SL_RESET:
 221          	{
 222                sl811h_init();            // initialize SL811HST
 223                *IN0BUF = SETUPDAT[1];    // return command type
 224                IN0BC = 0x01;             // arm endp, # bytes to xfr
 225                EP0CS |= bmBIT1;          // ack handshake phase of device request
 226                break;
 227              }
 228              case SL_DEVICE_DESCP:                                      // GetDevDesc
 229              case SL_CONFIG_DESCP:                                      // GetConfDesc
 230              case SL_CLASS_DESCP:                                      // GetClassDesc
 231              case SL_STRING_DESCP:                                      // GetStringDesc
 232          	{
 233          		EpAddr = SETUPDAT[2];		                // Get address
C51 COMPILER V6.10  HOST2131                                                               09/04/2002 22:22:07 PAGE 5   

 234          		ReqLen = SETUPDAT[6];
 235          		ReqLen |= SETUPDAT[7] << 8;                    // Get requested length
 236          
 237          		if(SETUPDAT[1] == SL_DEVICE_DESCP)
 238          		{
 239          		  pDev =(pDevDesc)DBUF;
 240          		  if(GetDesc(EpAddr,DEVICE,0,18,DBUF))	    // Device Descp - 18 bytes 
 241          		    DescBufLen = (WORD)pDev->bLength;		// update buffer length 
 242          		}
 243          		if(SETUPDAT[1] == SL_CONFIG_DESCP)
 244          		{
 245          		  pCfg =(pCfgDesc)DBUF;				
 246          		  if (GetDesc(EpAddr,CONFIGURATION,0,255,DBUF))
 247          		    DescBufLen = WordSwap(pCfg->wLength); 				
 248          		}
 249          		if(SETUPDAT[1] == SL_CLASS_DESCP)
 250          		{
 251                    if (GetDesc(EpAddr,CONFIGURATION,0,255,DBUF))	// Configuration Descp
 252                    {
 253          	        pIfc = (pIntfDesc)(DBUF + 9);				// point to Interface Descp
 254                      if(pIfc->iClass==HIDCLASS)			// HID_CLASS
 255                      {
 256                        pHid = (pHidDesc)(DBUF + 9 + 9);		// get HID's report descriptor
 257                        DescBufLen = (pHid->wItemLength <= 255) ? pHid->wItemLength : 255; 
 258                        if(!GetHid_Desc(EpAddr,HID_REPORT,DescBufLen,DBUF))
 259                          DescBufLen = 0;
 260                      }
 261                      else if(pIfc->iClass==HUBCLASS)		// HUB_CLASS
 262                      {
 263                        pHub =(pHubDesc)DBUF;					// get HUB class descriptor
 264                        DescBufLen = (pHub->bLength <= 255) ? pHub->bLength : 255; 
 265                        if(!GetHubDesc(EpAddr,0,9,DBUF)) 
 266                          DescBufLen = 0;
 267                      }
 268          			else
 269                          DescBufLen = 0;                 // Undefined Class
 270                    }
 271          		}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99热这里都是精品| 成人av网址在线观看| 欧美日韩在线免费视频| 亚洲丶国产丶欧美一区二区三区| 91蜜桃视频在线| 五月天精品一区二区三区| 欧美日韩精品一区视频| 蜜桃传媒麻豆第一区在线观看| 日韩精品中文字幕一区二区三区| 国产传媒日韩欧美成人| 国产精品国产三级国产aⅴ无密码| 色婷婷精品大视频在线蜜桃视频| 亚洲成人免费电影| 久久综合色鬼综合色| 国产成人av电影在线观看| 亚洲男同性视频| 欧美精品vⅰdeose4hd| 国产一区二区三区在线观看精品| 国产精品传媒视频| 欧美一区二区网站| 成人高清免费观看| 亚洲va国产天堂va久久en| 久久综合色一综合色88| 91麻豆6部合集magnet| 奇米色一区二区| 国产精品亲子伦对白| 欧美日韩一区二区在线视频| 极品少妇xxxx偷拍精品少妇| 日韩毛片视频在线看| 日韩精品中文字幕一区二区三区| 91小视频免费看| 久久精品国产网站| 亚洲伦在线观看| 国产视频一区二区在线| 欧美日韩亚洲综合一区二区三区| 国产高清一区日本| 无码av免费一区二区三区试看| 久久久美女毛片| 91精品在线免费观看| 99免费精品视频| 国产乱子伦一区二区三区国色天香| 亚洲精品视频自拍| 欧美激情中文字幕一区二区| 91精品国产欧美一区二区| 91亚洲永久精品| 国产成a人亚洲| 国内不卡的二区三区中文字幕 | 亚洲精品国产一区二区精华液 | 精品国产伦理网| 一本久久a久久免费精品不卡| 久久99精品久久久| 午夜精品福利一区二区三区蜜桃| 国产精品蜜臀av| 国产日韩欧美精品在线| 欧美日韩高清一区二区| 97久久精品人人爽人人爽蜜臀| 色视频欧美一区二区三区| 捆绑变态av一区二区三区| 午夜久久久影院| 亚洲一区二区偷拍精品| 国产精品传媒入口麻豆| 久久美女高清视频| 精品国产污网站| 久久网这里都是精品| 日韩一区二区在线看片| 欧美美女bb生活片| 欧美丝袜自拍制服另类| 欧美亚洲一区二区在线| 91黄色小视频| 色偷偷一区二区三区| 99re亚洲国产精品| 色悠久久久久综合欧美99| 成人h动漫精品一区二区| 国产成人免费网站| 成人免费毛片aaaaa**| 国产成人av电影在线播放| 国产成人一区二区精品非洲| 激情文学综合插| 国产在线播放一区二区三区| 国产一区三区三区| 国产成人av福利| 99热99精品| 91国产免费看| 欧美福利视频导航| 日韩亚洲欧美一区二区三区| 欧美一区二区大片| 91精品国产aⅴ一区二区| 欧美一区二区成人| 精品1区2区在线观看| 久久久电影一区二区三区| 久久精品人人做人人综合| 日本一区二区不卡视频| 亚洲欧美综合色| 亚洲国产va精品久久久不卡综合| 午夜不卡av在线| 美女在线观看视频一区二区| 国产一区二区三区四| 不卡的av电影| 欧美性猛交xxxx黑人交| 日韩一级片网站| 国产拍揄自揄精品视频麻豆| 亚洲天堂成人在线观看| 五月天一区二区三区| 黄色小说综合网站| 99在线精品视频| 欧美日韩在线一区二区| 久久综合色之久久综合| 国产一区二区福利视频| 99re热视频这里只精品| 色中色一区二区| 日韩视频免费观看高清在线视频| 久久久噜噜噜久久中文字幕色伊伊 | 欧洲生活片亚洲生活在线观看| 欧美区在线观看| 久久久精品欧美丰满| 一区二区三区日韩精品视频| 久久www免费人成看片高清| 成人蜜臀av电影| 91麻豆精品国产综合久久久久久| xnxx国产精品| 亚洲一区二区3| 国产九色sp调教91| 欧美亚洲一区二区在线观看| 久久伊人中文字幕| 亚洲成av人影院在线观看网| 国产成人av在线影院| 日韩一区二区三区免费观看| 麻豆极品一区二区三区| 成年人国产精品| 日韩欧美自拍偷拍| 一区二区三区中文字幕精品精品 | 亚洲chinese男男1069| 成人免费黄色在线| 欧美大度的电影原声| 一区二区三区日韩精品| 成人免费视频视频在线观看免费| 欧美一区二区三区系列电影| 亚洲欧美日韩一区| 国产高清成人在线| 精品国产一区二区三区av性色| 亚洲高清免费观看| 91丨porny丨蝌蚪视频| 国产亚洲精品精华液| 奇米一区二区三区| 欧美日韩国产精选| 亚洲一区二区在线观看视频| 99久久99久久精品免费观看| 久久久不卡网国产精品二区| 日本美女视频一区二区| 欧美日韩成人综合| 亚洲成人中文在线| 欧美三级一区二区| 亚洲精品免费一二三区| kk眼镜猥琐国模调教系列一区二区| 久久精品免费在线观看| 久久精品99国产精品| 欧美一区二区三区免费大片 | 精品剧情v国产在线观看在线| 亚洲国产cao| 欧美男男青年gay1069videost| 亚洲免费视频成人| 日本韩国一区二区三区视频| 亚洲精品欧美二区三区中文字幕| 99vv1com这只有精品| 成人欧美一区二区三区1314| 成人丝袜高跟foot| 亚洲欧美综合在线精品| 91网站最新网址| 亚洲精品国产视频| 欧美综合久久久| 午夜视黄欧洲亚洲| 日韩亚洲欧美高清| 国产在线麻豆精品观看| 久久综合九色综合欧美就去吻| 九九九久久久精品| 国产日产精品1区| 成人午夜碰碰视频| 一区二区三区久久久| 欧美性大战久久久久久久蜜臀| 亚洲午夜免费电影| 欧美一区二区三区日韩| 强制捆绑调教一区二区| 久久久久久久久久久久久夜| 丁香一区二区三区| 亚洲一区二区在线免费看| 91.xcao| 国产一区二区福利| 亚洲欧洲国产日本综合| 欧美日韩你懂的| 美国十次了思思久久精品导航| 国产日韩精品久久久| 91同城在线观看| 日本伊人午夜精品| 国产偷国产偷亚洲高清人白洁| 北条麻妃一区二区三区| 亚洲福利视频导航| 26uuu另类欧美| 91免费版pro下载短视频| 日韩综合在线视频| 亚洲国产岛国毛片在线|