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

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

?? ufi.lst

?? HardDiskUSBconnectsourcecode
?? LST
?? 第 1 頁 / 共 2 頁
字號:
C51 COMPILER V8.05a   UFI                                                                  05/22/2009 15:28:38 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE UFI
OBJECT MODULE PLACED IN UFI.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE UFI.C BROWSE INCDIR(.\INCLUDE;D:\ch9\include\) DEBUG OBJECTEXTEND

line level    source

   1          /**************************************************************************
   2           *                         H E A D E R   F I L E S
   3           *************************************************************************/
   4          #include <reg51.h>
   5          #include <intrins.h>
   6          #include <stdio.h>
   7          #include "AT89C51SND.h"
   8          #include "typedef.h"
   9          #include "config.h"
  10          #include "constant.h"
  11          #include "global.h"
  12          #include "gpio.h"
  13          #include "macro.h"
  14          #include "external.h"
  15          #include "usb.h"
  16          
  17          /**************************************************************************
  18           *                           C O N S T A N T S
  19           *************************************************************************/
  20          
  21          /**************************************************************************
  22           *                              M A C R O S
  23           *************************************************************************/
  24          
  25          /**************************************************************************
  26           *                          D A T A    T Y P E S
  27           *************************************************************************/
  28          
  29          /**************************************************************************
  30           *                         G L O B A L    D A T A
  31           *************************************************************************/
  32          //answer for UFI inquery command
  33          UINT8 code ATAInquiryData[] =
  34          {
  35                   0x00,0x00,0x00,0x01,0x1F,0,0,0,            //peripheral device type=0x00,RMB=0,ANSI=0,RESPONSE DATAFORMA
             -T=1,Direct-access device
  36                   'w','e','i','c','h','i','n','g',                        //8 bytes for Vendor Information
  37                   'U','S','B',' ','D','E','V','I','C','E',' ',' ',' ',' ',' ',' ',   //16 bytes for Product Information
  38                   ' ',' ',' ',' ',                           //4 bytes for Product Revision
  39          
  40          };
  41          
  42          /**************************************************************************
  43           *  Function Name:
  44           *
  45           *  Descriptions:
  46           *
  47           *  Arguments:
  48           *
  49           *  Returns: None
  50           **************************************************************************/
  51          void dmaCopyIn(UINT16 u16Offset, UINT8 *pu8Buf, UINT8 u8Size)
  52          {
  53   1              UINT8 i ;
  54   1              u16Offset=0;
C51 COMPILER V8.05a   UFI                                                                  05/22/2009 15:28:38 PAGE 2   

  55   1              for(i=0; i<u8Size; i++) UEPDATX= *(pu8Buf++) ;
  56   1      }
  57          
  58          /**************************************************************************
  59           *  Function Name:
  60           *
  61           *  Descriptions:
  62           *
  63           *  Arguments:
  64           *
  65           *  Returns: None
  66           **************************************************************************/
  67          UINT8 ufiInquiry(void)
  68          {
  69   1              UINT8 TransLength;
  70   1      
  71   1              Usb_sel_ep(1);
  72   1              if(gCBWDataLen>36)
  73   1                      TransLength=36;
  74   1              else
  75   1                      TransLength=gCBWDataLen;
  76   1              
  77   1              dmaCopyIn(0, ATAInquiryData,TransLength);
  78   1              Usb_set_TXRDY_bit();
  79   1              while (!(Usb_tx_complete_bit()));
  80   1              Usb_clear_TXCMPL_bit();
  81   1              gCBWDataLen-=TransLength;
  82   1              return (0);
  83   1      
  84   1      }
  85          
  86          /**************************************************************************
  87           *  Function Name:
  88           *
  89           *  Descriptions:
  90           *
  91           *  Arguments:
  92           *
  93           *  Returns: None
  94           **************************************************************************/
  95          UINT8 ufiRead10(void)
  96          {
  97   1              UINT8 Status ;
  98   1              gbUsbReadError=0;//for Request Sense
  99   1      
 100   1              Status=stReadSectors(gCmdBlock.CB1.LUN,gCmdBlock.CB1.LBA.ULONG, gCmdBlock.CB1.Length2.INTEGER) ;
 101   1      
 102   1              if(Status)
 103   1              {
 104   2                      if(gCBWDataLen!=0)//SEND NULL DATA IN BULK-IN ENDPOINT.
 105   2                      {
 106   3                              Usb_set_TXRDY_bit();
 107   3                              while (!(Usb_tx_complete_bit()));
 108   3                              Usb_clear_TXCMPL_bit();
 109   3                      }
 110   2                      gCBWDataLen=gOrgCBWDataLen;
 111   2                      gbUsbReadError=1;
 112   2              }
 113   1      
 114   1              return(Status);
 115   1      }
 116          /**************************************************************************
C51 COMPILER V8.05a   UFI                                                                  05/22/2009 15:28:38 PAGE 3   

 117           *  Function Name:
 118           *
 119           *  Descriptions:
 120           *
 121           *  Arguments:
 122           *
 123           *  Returns: None
 124           **************************************************************************/
 125          UINT8 ufiWrite10(void)
 126          {
 127   1              UINT8 Status;
 128   1              gbUsbWriteError=0;
 129   1      
 130   1              Status=stWriteSectors(gCmdBlock.CB1.LUN, gCmdBlock.CB1.LBA.ULONG, gCmdBlock.CB1.Length2.INTEGER) ;
 131   1              if(Status)
 132   1              {
 133   2                      if(gCBWDataLen!=0)//STALL ENDPOINT2
 134   2                      {
 135   3      
 136   3                              Usb_sel_ep(2);
 137   3                                      Usb_set_STALLRQ();
 138   3                      }
 139   2                      gCBWDataLen=gOrgCBWDataLen;
 140   2                      gbUsbWriteError=1;
 141   2              }
 142   1              return(Status);
 143   1      }
 144          
 145          /**************************************************************************
 146           *  Function Name:
 147           *
 148           *  Descriptions:
 149           *
 150           *  Arguments:
 151           *
 152           *  Returns: None
 153           **************************************************************************/
 154          UINT8 ufiRequestSense(void)
 155          {
 156   1              Usb_sel_ep(1);
 157   1              UEPDATX=0x70;
 158   1              UEPDATX=0x00;
 159   1              UEPDATX=0x05;
 160   1              UEPDATX=0x00;
 161   1              UEPDATX=0x00;
 162   1              UEPDATX=0x00;
 163   1              UEPDATX=0x00;
 164   1              UEPDATX=0x0a;
 165   1              UEPDATX=0x00;
 166   1              UEPDATX=0x00;
 167   1              UEPDATX=0x00;
 168   1              UEPDATX=0x00;
 169   1              UEPDATX=0x24;
 170   1              UEPDATX=0x00;
 171   1              UEPDATX=0x00;
 172   1              UEPDATX=0x00;
 173   1              UEPDATX=0x00;
 174   1              UEPDATX=0x00;
 175   1              
 176   1              Usb_set_TXRDY_bit();
 177   1              while (!(Usb_tx_complete_bit()));
 178   1              Usb_clear_TXCMPL_bit();
C51 COMPILER V8.05a   UFI                                                                  05/22/2009 15:28:38 PAGE 4   

 179   1              gCBWDataLen=0;
 180   1              return (0);
 181   1      }
 182          
 183          /**************************************************************************
 184           *  Function Name:
 185           *
 186           *  Descriptions:
 187           *
 188           *  Arguments:
 189           *
 190           *  Returns: None
 191           **************************************************************************/
 192          UINT8 ufiReadCapacity(void)
 193          {
 194   1              LongByte BAddr,TotalSectors;
 195   1                      Usb_sel_ep(1);
 196   1              TotalSectors.ULONG =stGetCapacity(gCmdBlock.CB1.LUN) ;
 197   1              if(TotalSectors.ULONG==0)
 198   1                       BAddr.ULONG = 0;
 199   1              else
 200   1                       BAddr.ULONG = TotalSectors.ULONG-1;                //Last Logical Block Address
 201   1      
 202   1              UEPDATX= BAddr.BYTE.B3 ;                //(J)LBA range
 203   1              UEPDATX= BAddr.BYTE.B2 ;
 204   1              UEPDATX= BAddr.BYTE.B1 ;
 205   1              UEPDATX= BAddr.BYTE.B0 ;
 206   1              //Block Length In Bytes
 207   1              UEPDATX= 0x00 ;                     //(J)Block length=512 bytes
 208   1              UEPDATX= 0x00 ;
 209   1              UEPDATX= 0x02 ;
 210   1              UEPDATX= 0x00 ;
 211   1              Usb_set_TXRDY_bit();
 212   1              while (!(Usb_tx_complete_bit()));
 213   1              Usb_clear_TXCMPL_bit();
 214   1              gCBWDataLen=0;
 215   1      
 216   1              if(TotalSectors.ULONG==0) return(1);
 217   1              else return(0);
 218   1      

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜臀久久99精品久久久久宅男| 亚洲欧洲日本在线| 欧美日韩一区二区三区免费看 | 91精品国产综合久久久久久| 99精品国产99久久久久久白柏| 国产成人精品一区二| 国产一区二区电影| 国产成a人无v码亚洲福利| 国产成人午夜99999| 99这里只有精品| 色丁香久综合在线久综合在线观看| 成人黄动漫网站免费app| jizz一区二区| 欧美少妇一区二区| 欧美绝品在线观看成人午夜影视| 欧美精三区欧美精三区| 欧美日韩国产区一| 日韩免费成人网| 国产亚洲精品资源在线26u| 亚洲国产精品成人综合色在线婷婷| 国产精品午夜久久| 亚洲视频每日更新| 亚洲成av人片一区二区梦乃| 蜜臀a∨国产成人精品| 国产东北露脸精品视频| 91女神在线视频| 制服丝袜av成人在线看| 亚洲福利一二三区| 六月丁香婷婷色狠狠久久| 国产成人在线视频网站| 91福利精品视频| 精品久久人人做人人爱| 亚洲欧洲成人自拍| 美女在线观看视频一区二区| 白白色 亚洲乱淫| 制服视频三区第一页精品| 国产欧美日韩视频一区二区| 亚洲成人黄色小说| 国产成人精品1024| 6080午夜不卡| 国产精品久久久久7777按摩| 日韩极品在线观看| av影院午夜一区| 日韩一区二区精品| 国产精品久久久久久一区二区三区| 亚洲国产日日夜夜| 丁香六月综合激情| 91精品国产综合久久久久久| 亚洲婷婷综合久久一本伊一区 | 精品视频一区 二区 三区| 日韩久久精品一区| 亚洲日穴在线视频| 国产精品18久久久久久久久久久久| 91国偷自产一区二区使用方法| 欧美一卡二卡三卡| 亚洲人xxxx| 国产91精品入口| 欧美xxxx在线观看| 亚州成人在线电影| 91在线视频观看| 亚洲国产高清在线| 国产一区二区毛片| 日韩一二三四区| 午夜精品久久久久| 色综合久久精品| 国产情人综合久久777777| 久久精品国产在热久久| 欧美一区永久视频免费观看| 一区二区在线看| 91视频xxxx| 成人免费在线播放视频| 成人黄动漫网站免费app| 国产欧美一区二区三区在线老狼| 久久99热这里只有精品| 欧美久久一二三四区| 亚洲成a人片在线观看中文| 成人av综合在线| 国产丝袜在线精品| 高清成人免费视频| 欧美精彩视频一区二区三区| 国产suv精品一区二区6| 久久九九全国免费| 成人自拍视频在线观看| 国产精品你懂的在线欣赏| 成人亚洲精品久久久久软件| 日本一区二区三区在线不卡| 99久久国产综合精品女不卡| 亚洲婷婷综合色高清在线| 色哟哟在线观看一区二区三区| 亚洲婷婷国产精品电影人久久| 97se亚洲国产综合自在线| 一区二区三区不卡在线观看| 欧美色爱综合网| 日本sm残虐另类| 久久亚洲二区三区| 不卡视频在线观看| 亚洲精品久久嫩草网站秘色| 欧美区在线观看| 国产一区二区三区日韩| 亚洲视频精选在线| 91麻豆精品国产91久久久资源速度| 久久国产精品99精品国产| 国产午夜亚洲精品理论片色戒| 99精品视频免费在线观看| 亚洲一区二区三区中文字幕在线| 欧美另类高清zo欧美| 国产一区二区三区在线观看精品| 中文字幕亚洲电影| 欧美肥胖老妇做爰| 成人国产电影网| 亚洲成av人影院| 久久日韩精品一区二区五区| 91在线观看高清| 日本不卡的三区四区五区| 欧美国产激情二区三区 | 蜜桃一区二区三区四区| 欧美激情在线免费观看| 欧美图区在线视频| 国产成人午夜精品影院观看视频| 亚洲香蕉伊在人在线观| 久久精品亚洲精品国产欧美kt∨| 一本色道久久综合亚洲精品按摩 | 国产精品亚洲专一区二区三区| 亚洲天天做日日做天天谢日日欢| 日韩一区二区在线看| thepron国产精品| 捆绑调教一区二区三区| 亚洲自拍偷拍综合| 久久精品人人爽人人爽| 欧美一级黄色片| 欧美亚洲免费在线一区| 丁香桃色午夜亚洲一区二区三区| 婷婷综合久久一区二区三区| 亚洲素人一区二区| 国产亚洲视频系列| 欧美大片在线观看| 欧美丰满嫩嫩电影| 欧美视频一区二| 色综合久久久久网| 99久久综合99久久综合网站| 国产成人综合网| 激情欧美日韩一区二区| 日本不卡123| 日韩制服丝袜av| 五月天激情综合| 亚洲一区在线电影| 亚洲精品高清在线| 亚洲女厕所小便bbb| 国产精品欧美精品| 中文字幕亚洲精品在线观看| 中文乱码免费一区二区| 国产清纯白嫩初高生在线观看91 | 91精品国产福利| 在线不卡的av| 欧美一区二区三区免费大片 | 中文字幕一区二区三区在线不卡 | 亚洲国产成人午夜在线一区| 久久久久国产精品麻豆ai换脸| 精品福利在线导航| 精品国产一区二区三区av性色| 欧美大片一区二区| 日韩欧美精品三级| 精品国产免费久久| 久久久精品国产免大香伊| 欧美国产一区视频在线观看| 中文字幕av一区 二区| 国产精品福利影院| 亚洲另类在线一区| 视频一区二区三区入口| 毛片av一区二区| 国产一区二区三区在线观看免费| 国产精品白丝jk白祙喷水网站| 成人动漫精品一区二区| 91免费观看在线| 91精品国产综合久久婷婷香蕉| 日韩免费成人网| 中文字幕五月欧美| 日本中文一区二区三区| 国产另类ts人妖一区二区| 99riav一区二区三区| 在线免费一区三区| 日韩一区二区三区三四区视频在线观看| 欧美成人vr18sexvr| 中文字幕色av一区二区三区| 亚洲成在人线免费| 国产精品456| 欧美日韩五月天| 国产欧美综合在线| 天天操天天色综合| 国产精品18久久久久久vr| 91久久奴性调教| 欧美大肚乱孕交hd孕妇| 亚洲蜜臀av乱码久久精品蜜桃| 日韩电影免费在线看| 福利一区福利二区| 4438成人网| 一区二区三国产精华液| 国产一区二区精品久久91| 欧美三级欧美一级| 国产精品天美传媒沈樵|