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

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

?? f34x_usb_standard_requests.lst

?? C8051F340的USB應用例程
?? LST
?? 第 1 頁 / 共 3 頁
字號:
C51 COMPILER V8.02   F34X_USB_STANDARD_REQUESTS                                            04/28/2008 13:24:09 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE F34X_USB_STANDARD_REQUESTS
OBJECT MODULE PLACED IN F34x_USB_Standard_Requests.OBJ
COMPILER INVOKED BY: D:\Program Files\keil 3\C51\BIN\C51.EXE F34x_USB_Standard_Requests.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          //-----------------------------------------------------------------------------
   2          // F34x_USB_Standard_Requests.c
   3          //-----------------------------------------------------------------------------
   4          // Copyright 2005 Silicon Laboratories, Inc.
   5          // http://www.silabs.com
   6          //
   7          // Program Description:
   8          //
   9          // This source file contains the subroutines used to handle incoming 
  10          // setup packets. These are called by Handle_Setup in USB_ISR.c and used for 
  11          // USB chapter 9 compliance.
  12          //
  13          
  14          // How To Test:    See Readme.txt
  15          //
  16          //
  17          // FID:            34X000022
  18          // Target:         C8051F34x
  19          // Tool chain:     Keil C51 7.50 / Keil EVAL C51
  20          //                 Silicon Laboratories IDE version 2.6
  21          // Command Line:   See Readme.txt
  22          // Project Name:   F34x_USB_Interrupt
  23          //
  24          //
  25          // Release 1.0
  26          //    -Initial Revision (GP)
  27          //    -22 NOV 2005
  28          //    -Ported from 'F320_USB_Bulk
  29          //
  30          
  31          //-----------------------------------------------------------------------------
  32          // Includes
  33          //-----------------------------------------------------------------------------
  34          
  35          #include "c8051F340.h"
  36          #include "F34x_USB_Register.h"
  37          #include "F34x_USB_Main.h"
  38          #include "F34x_USB_Descriptor.h"
  39          
  40          //-----------------------------------------------------------------------------
  41          // Externs
  42          //-----------------------------------------------------------------------------
  43          
  44          // These are created in USB_DESCRIPTOR.h
  45          
  46          extern device_descriptor DeviceDesc;            
  47          extern configuration_descriptor ConfigDesc;
  48          extern interface_descriptor InterfaceDesc;
  49          extern endpoint_descriptor Endpoint1Desc;
  50          extern endpoint_descriptor Endpoint2Desc;
  51          extern BYTE* StringDescTable[];
  52          
  53          extern setup_buffer Setup;             // Buffer for current device request
  54          extern unsigned int DataSize;
  55          extern unsigned int DataSent;
C51 COMPILER V8.02   F34X_USB_STANDARD_REQUESTS                                            04/28/2008 13:24:09 PAGE 2   

  56          extern BYTE* DataPtr;
  57          
  58          extern BYTE Ep_Status[];               // Contains status bytes for EP 0-2
  59          
  60          extern BYTE USB_State;                 // Determines current usb device state
  61          
  62          //-----------------------------------------------------------------------------
  63          // Global Variables
  64          //-----------------------------------------------------------------------------
  65          
  66          // These are response packets used for communication with host
  67          code BYTE ONES_PACKET[2] = {0x01, 0x00};        
  68          code BYTE ZERO_PACKET[2] = {0x00, 0x00};        
  69          
  70          //-----------------------------------------------------------------------------
  71          // Support Subroutines
  72          //-----------------------------------------------------------------------------
  73          
  74          //-----------------------------------------------------------------------------
  75          // Get_Status
  76          //-----------------------------------------------------------------------------
  77          //
  78          // Return Value : None
  79          // Parameters   : None
  80          //
  81          // This routine returns a two byte status packet to the host
  82          //
  83          //-----------------------------------------------------------------------------
  84          
  85          void Get_Status(void)                  
  86          {                                      
  87   1      
  88   1         if (Setup.wValue.c[MSB] || Setup.wValue.c[LSB] ||
  89   1                                                      
  90   1         // If non-zero return length or data length not  equal to 2 then send a stall
  91   1         // indicating invalid request
  92   1         Setup.wLength.c[MSB]    || (Setup.wLength.c[LSB] != 2))                                               
  93   1         {                                            
  94   2            Force_Stall();
  95   2         }
  96   1      
  97   1         // Determine if recipient was device, interface, or EP
  98   1         switch(Setup.bmRequestType)                  
  99   1         {
 100   2            // If recipient was device
 101   2            case OUT_DEVICE:                          
 102   2               if (Setup.wIndex.c[MSB] || Setup.wIndex.c[LSB])
 103   2               {
 104   3                          // Send stall if request is invalid
 105   3                  Force_Stall();             
 106   3               }
 107   2               else
 108   2               {
 109   3                          // Otherwise send 0x00, indicating bus power and no
 110   3                              // remote wake-up supported
 111   3                  DataPtr = (BYTE*)&ZERO_PACKET;      
 112   3                  DataSize = 2;                       
 113   3               }
 114   2               break;
 115   2      
 116   2            // See if recipient was interface
 117   2            case OUT_INTERFACE:                       
C51 COMPILER V8.02   F34X_USB_STANDARD_REQUESTS                                            04/28/2008 13:24:09 PAGE 3   

 118   2                   // Only valid if device is configured and non-zero index
 119   2               if ((USB_State != DEV_CONFIGURED) ||
 120   2                    Setup.wIndex.c[MSB] || Setup.wIndex.c[LSB])                                                
 121   2               {
 122   3                          // Otherwise send stall to host
 123   3                  Force_Stall();                      
 124   3               }
 125   2               else
 126   2               {
 127   3                          // Status packet always returns 0x00
 128   3                  DataPtr = (BYTE*)&ZERO_PACKET;      
 129   3                  DataSize = 2;
 130   3               }
 131   2               break;
 132   2      
 133   2            // See if recipient was an endpoint
 134   2            case OUT_ENDPOINT:                        
 135   2                   // Make sure device is configured and index msb = 0x00
 136   2               if ((USB_State != DEV_CONFIGURED) || Setup.wIndex.c[MSB])                   
 137   2               {                                     
 138   3                  Force_Stall();              // otherwise return stall to host
 139   3               }
 140   2               else
 141   2               {
 142   3                  // Handle case if request is directed to EP 1
 143   3                  if (Setup.wIndex.c[LSB] == IN_EP1)  
 144   3                  {
 145   4                     if (Ep_Status[1] == EP_HALT)
 146   4                     {                                
 147   5                                    // If endpoint is halted, return 0x01,0x00
 148   5                        DataPtr = (BYTE*)&ONES_PACKET;
 149   5                        DataSize = 2;
 150   5                     }
 151   4                     else
 152   4                     {
 153   5                                    // Otherwise return 0x00,0x00 to indicate endpoint active
 154   5                        DataPtr = (BYTE*)&ZERO_PACKET;
 155   5                        DataSize = 2;
 156   5                     }
 157   4                  }
 158   3                  else
 159   3                  {
 160   4                                 // If request is directed to endpoint 2, send either
 161   4                                 // 0x01,0x00 if endpoint halted or 0x00,0x00 if endpoint is active
 162   4                     if (Setup.wIndex.c[LSB] == OUT_EP2)
 163   4                                                      
 164   4                     {                                
 165   5                        if (Ep_Status[2] == EP_HALT)
 166   5                        {
 167   6                           DataPtr = (BYTE*)&ONES_PACKET;
 168   6                           DataSize = 2;
 169   6                        }
 170   5                        else
 171   5                        {
 172   6                           DataPtr = (BYTE*)&ZERO_PACKET;
 173   6                           DataSize = 2;
 174   6                        }
 175   5                     }
 176   4                     else
 177   4                     {
 178   5                        Force_Stall();       // Send stall if unexpected data
 179   5                     }
C51 COMPILER V8.02   F34X_USB_STANDARD_REQUESTS                                            04/28/2008 13:24:09 PAGE 4   

 180   4                  }
 181   3               }
 182   2               break;
 183   2      
 184   2            default:
 185   2               Force_Stall();
 186   2               break;
 187   2         }
 188   1         if (Ep_Status[0] != EP_STALL)
 189   1         {
 190   2            // Set serviced Setup Packet, Endpoint 0 intransmit mode, 
 191   2                // and reset DataSent counter
 192   2            POLL_WRITE_BYTE(E0CSR, rbSOPRDY);        
 193   2            Ep_Status[0] = EP_TX;                     
 194   2            DataSent = 0;
 195   2         }
 196   1      }
 197          

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区日韩精品| 久久精品999| 自拍偷拍欧美激情| 国产精品久久久一本精品| 国产偷国产偷亚洲高清人白洁 | 欧美日韩在线三区| 91片在线免费观看| 91丨porny丨国产入口| 91在线一区二区三区| 色综合久久天天| 一本色道久久综合亚洲精品按摩 | 精品国产乱码久久久久久老虎 | 亚洲国产精品一区二区www在线| 国产精品超碰97尤物18| 亚洲男帅同性gay1069| 亚洲精品欧美综合四区| 亚洲福利视频一区二区| 日韩激情一二三区| 美女视频第一区二区三区免费观看网站| 日韩电影在线看| 青草国产精品久久久久久| 美女国产一区二区三区| 国产一区二区三区国产| 国产a区久久久| 一本到高清视频免费精品| 欧美亚洲高清一区二区三区不卡| 欧美日韩色一区| 日韩欧美一区二区久久婷婷| 久久麻豆一区二区| 国产精品久久久久一区| 亚洲成人7777| 国产一区在线看| youjizz久久| 欧美日韩一区成人| 精品美女在线播放| 国产精品久久看| 午夜精品福利一区二区蜜股av| 麻豆国产91在线播放| 国产成人自拍高清视频在线免费播放| av高清久久久| 欧美精品三级在线观看| 久久一区二区视频| 亚洲精品久久久久久国产精华液| 日本欧美在线观看| 国产精品一区二区x88av| 91在线观看地址| 欧美一区二区三区在线电影| 亚洲国产精品成人久久综合一区| 亚洲一二三四区不卡| 国产综合色视频| 在线观看91视频| 国产欧美日韩在线| 香蕉成人啪国产精品视频综合网| 国产精品影视天天线| 91传媒视频在线播放| 日韩欧美久久一区| 亚洲欧美成aⅴ人在线观看| 美腿丝袜在线亚洲一区| 91传媒视频在线播放| 久久久综合九色合综国产精品| 一区二区三区四区蜜桃| 国产一区二区久久| 欧美日韩日日摸| 国产精品久久久久久亚洲毛片 | 亚洲三级免费观看| 国内久久精品视频| 精品视频在线看| 国产欧美一区二区精品秋霞影院 | 丝袜诱惑亚洲看片| 成人app在线| 欧美v亚洲v综合ⅴ国产v| 亚洲精品成人悠悠色影视| 国产在线精品一区二区不卡了| 在线视频一区二区免费| 亚洲国产成人自拍| 久久99热99| 欧美在线观看一区二区| 国产精品二区一区二区aⅴ污介绍| 久久精品国产一区二区| 欧美色手机在线观看| 亚洲欧美一区二区三区极速播放| 激情五月婷婷综合网| 欧美一区二区视频观看视频 | 成人自拍视频在线| 精品sm在线观看| 日韩激情中文字幕| 欧美日韩小视频| 亚洲最新视频在线观看| 91丨porny丨首页| 国产精品久久久久9999吃药| 国产精品一区二区男女羞羞无遮挡 | 亚洲一二三专区| 91啦中文在线观看| 国产精品欧美一区二区三区| 国产九九视频一区二区三区| 欧美一区二区在线播放| 五月激情六月综合| 91精品国产一区二区三区香蕉 | 国产老女人精品毛片久久| 精品不卡在线视频| 精品在线播放免费| 亚洲精品一区二区三区香蕉| 久久爱www久久做| 日韩三级高清在线| 免费成人av在线播放| 日韩欧美专区在线| 麻豆精品一区二区综合av| 日韩欧美中文字幕精品| 黄网站免费久久| 精品少妇一区二区三区| 紧缚奴在线一区二区三区| 精品三级在线观看| 国产精品性做久久久久久| 国产亚洲精品7777| 成人精品免费看| 亚洲欧洲日韩综合一区二区| k8久久久一区二区三区 | 国产盗摄一区二区| 国产精品久久久久一区二区三区共| 成人h动漫精品一区二区| 亚洲欧美一区二区在线观看| 91麻豆国产福利在线观看| 一区二区成人在线视频| 欧美日韩国产中文| 精品一区二区三区香蕉蜜桃| 久久久国产精品麻豆| 99精品在线观看视频| 亚洲国产视频一区二区| 日韩欧美国产一区二区三区| 国产一区二区免费看| 亚洲人妖av一区二区| 欧美日韩在线播放| 久久av资源站| 国产精品国产三级国产aⅴ入口| 在线精品视频一区二区三四| 天堂一区二区在线| 久久久综合精品| 97国产精品videossex| 午夜日韩在线观看| 久久久久久免费| 91麻豆免费观看| 老司机精品视频在线| 中文字幕第一页久久| 欧美色综合影院| 激情欧美日韩一区二区| 亚洲欧美日韩一区二区三区在线观看| 欧美日本韩国一区二区三区视频 | 久久国产尿小便嘘嘘| 成人免费小视频| 欧美精品乱码久久久久久按摩| 韩国一区二区视频| 亚洲免费高清视频在线| 日韩欧美一区二区在线视频| 成人国产电影网| 日本亚洲最大的色成网站www| 欧美激情艳妇裸体舞| 欧美日高清视频| 99久久精品免费观看| 免费精品视频在线| 亚洲欧美激情在线| 精品国产乱码久久| 欧美系列亚洲系列| 国产精品一品视频| 日韩电影在线一区| 亚洲乱码日产精品bd| 日韩精品中文字幕在线不卡尤物| 色综合亚洲欧洲| 国产精品一区久久久久| 天天操天天综合网| 日韩美女精品在线| 国产欧美日韩精品在线| 51精品国自产在线| 91麻豆产精品久久久久久 | 欧美剧情片在线观看| 成人动漫一区二区在线| 久久国产麻豆精品| 亚洲一线二线三线视频| 欧美经典一区二区| 日韩一二三区不卡| 欧美色图天堂网| kk眼镜猥琐国模调教系列一区二区 | 捆绑调教一区二区三区| 亚洲精品第1页| 亚洲欧美在线观看| 国产精品免费aⅴ片在线观看| 日韩精品中文字幕一区二区三区| 欧美日韩免费不卡视频一区二区三区| 波多野结衣在线一区| 国内精品伊人久久久久av影院| 视频一区二区欧美| 一区二区三区高清| ...中文天堂在线一区| 国产欧美精品一区| 久久久久久久久伊人| 精品日韩欧美在线| 5566中文字幕一区二区电影| 欧美三级蜜桃2在线观看| 在线视频你懂得一区| 91免费观看在线| 色婷婷亚洲精品|