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

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

?? periph.lst

?? EZ USB GPIF的控制器的源代碼
?? LST
?? 第 1 頁 / 共 2 頁
字號:
C51 COMPILER V8.05a   PERIPH                                                               02/09/2009 15:21:59 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE PERIPH
OBJECT MODULE PLACED IN periph.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE periph.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #pragma NOIV               // Do not generate interrupt vectors
   2          //-----------------------------------------------------------------------------
   3          //   File:      periph.c
   4          //   Contents:   Hooks required to implement USB peripheral function.
   5          //
   6          //   Copyright (c) 1997 AnchorChips, Inc. All rights reserved
   7          //-----------------------------------------------------------------------------
   8          #include "fx2.h"
   9          #include "fx2regs.h"
  10          #include "fx2sdly.h"     
  11          #include "io.h"
  12          #include "gpif.h"
  13          #include "serial.h"
  14          
  15          extern BOOL   GotSUD;         // Received setup data flag
  16          extern BOOL   Sleep;
  17          extern BOOL   Rwuen;
  18          extern BOOL   Selfpwr;
  19          
  20          BYTE   Configuration;      // Current configuration
  21          BYTE   AlternateSetting;   // Alternate settings
  22          BYTE   GpifHighAddr;       //gpif high addr
  23          BYTE   GpifReadWriteFlag;  //gpif read write flag
  24          BYTE   GpifFinishFlag;     
  25          BYTE   High_Full_Flag;
  26          //-----------------------------------------------------------------------------
  27          // Task Dispatcher hooks
  28          //   The following hooks are called by the task dispatcher.
  29          //-----------------------------------------------------------------------------
  30          
  31          void TD_Init(void)             // Called once at startup
  32          {
  33   1         BREAKPT &= ~bmBPEN;      // to see BKPT LED go out TGE
  34   1         Rwuen = TRUE;            // Enable remote-wakeup
  35   1         GpifInit();
  36   1      
  37   1         // EP2 512 BULK OUT 4x
  38   1         SYNCDELAY;                    // see TRM section 15.14
  39   1         EP2CFG = 0xA0; //512PACKET;                // BUF[1:0]=00 for 4x buffering
  40   1        
  41   1        // EP4 and  EP6 and EP8 are not used in this implementation...
  42   1        SYNCDELAY;                    // 
  43   1        EP4CFG = 0x20;                // clear valid bit
  44   1        SYNCDELAY;                    // 
  45   1        EP6CFG = 0xE0;                // clear valid bit
  46   1        SYNCDELAY;                    // 
  47   1        EP8CFG = 0x60;                // clear valid bit
  48   1      
  49   1      SYNCDELAY;                    // 
  50   1        FIFORESET = 0x80;             // activate NAK-ALL to avoid race conditions
  51   1        SYNCDELAY;                    // 
  52   1        FIFORESET = 0x02;             // reset, FIFO 2
  53   1        SYNCDELAY;                    // 
  54   1        FIFORESET = 0x04;             // reset, FIFO 4
  55   1        SYNCDELAY;                    // 
C51 COMPILER V8.05a   PERIPH                                                               02/09/2009 15:21:59 PAGE 2   

  56   1        FIFORESET = 0x06;             // reset, FIFO 6
  57   1        SYNCDELAY;                    // 
  58   1        FIFORESET = 0x08;             // reset, FIFO 8
  59   1        SYNCDELAY;                    // 
  60   1        FIFORESET = 0x00;             // deactivate NAK-ALL
  61   1        SYNCDELAY;
  62   1      
  63   1               // 8-bit bus (WORDWIDE=1)...
  64   1         EP2FIFOCFG = 0x10;//AUTO OUT 8-BIT BUS
  65   1         SYNCDELAY; 
  66   1         EP6FIFOCFG = 0x08;//AUTO IN  8-BIT BUS
  67   1         SYNCDELAY; 
  68   1        
  69   1        // setup INT4 as internal source for GPIF interrupts
  70   1        // using INT4CLR (SFR), automatically enabled
  71   1        SYNCDELAY;
  72   1        INTSETUP |= 0x03;   // Enable INT4 FIFO/GPIF Autovectoring
  73   1        SYNCDELAY;          // used here as "delay"
  74   1              EXIF &=  ~0x40;     // just in case one was pending...
  75   1        SYNCDELAY;          // used here as "delay"
  76   1        GPIFIRQ = 0x03;
  77   1        SYNCDELAY;          // 
  78   1        GPIFIE = 0x03;      // Enable GPIFDONE interrupt
  79   1        SYNCDELAY;          // 
  80   1        EIE |= 0x04;        // Enable INT4 ISR, EIE.2(EIEX4=1)
  81   1      
  82   1              GpifReadWriteFlag = 0;  //write
  83   1              GpifHighAddr = 0;
  84   1          *GA = GpifHighAddr;
  85   1          Peripheral_SetAddress(0);
  86   1              Peripheral_SetEP2GPIFTC(512);        //transfer 512 byte data to gipf
  87   1              Peripheral_FIFOWrite(0);                 //ep2 fifo write
  88   1              GpifFinishFlag = 0;
  89   1              High_Full_Flag = 0;
  90   1      }
  91          
  92          void TD_Poll(void)             // Called repeatedly while the device is idle
  93          {
  94   1              if(GpifFinishFlag == 1)
  95   1              {
  96   2                      GpifFinishFlag = 0;
  97   2                      GpifHighAddr++;
  98   2                      GpifHighAddr&=0x3F;
  99   2                      *GA = GpifHighAddr;
 100   2                      if(GpifHighAddr == 0)
 101   2                      {
 102   3                              GpifReadWriteFlag = (~GpifReadWriteFlag)&1;
 103   3                      }
 104   2                      if(GpifReadWriteFlag == 0)
 105   2                      {
 106   3                              Peripheral_SetAddress(0);
 107   3                              Peripheral_SetEP2GPIFTC(512);        //write 512 byte data to gipf
 108   3                              Peripheral_FIFOWrite(0);
 109   3                      }
 110   2                      else
 111   2                      {
 112   3                              Peripheral_SetAddress(0);
 113   3                              Peripheral_SetEP6GPIFTC(512);        //read 512 byte data from gipf
 114   3                              Peripheral_FIFORead(2);
 115   3                  }
 116   2              }
 117   1      }
C51 COMPILER V8.05a   PERIPH                                                               02/09/2009 15:21:59 PAGE 3   

 118          
 119          BOOL TD_Suspend(void)          // Called before the device goes into suspend mode
 120          {
 121   1         return(TRUE);
 122   1      }
 123          
 124          BOOL TD_Resume(void)          // Called after the device resumes
 125          {
 126   1         return(TRUE);
 127   1      }
 128          
 129          //-----------------------------------------------------------------------------
 130          // Device Request hooks
 131          //   The following hooks are called by the end point 0 device request parser.
 132          //-----------------------------------------------------------------------------
 133          
 134          BOOL DR_GetDescriptor(void)
 135          {
 136   1         return(TRUE);
 137   1      }
 138          
 139          BOOL DR_SetConfiguration(void)   // Called when a Set Configuration command is received
 140          {
 141   1         Configuration = SETUPDAT[2];
 142   1         if(High_Full_Flag == 1)
 143   1         {
 144   2                      SYNCDELAY;                    // 
 145   2                      EP2AUTOINLENH  = 0x02;        //ep2 auto commit length 512
 146   2              SYNCDELAY;
 147   2              EP2AUTOINLENL = 0x00;
 148   2              SYNCDELAY;
 149   2              EP6AUTOINLENH  = 0x02;       //ep6 auto commit length 512
 150   2              SYNCDELAY;
 151   2              EP6AUTOINLENL = 0x00;
 152   2              SYNCDELAY;
 153   2         }
 154   1         else
 155   1         {
 156   2                      SYNCDELAY;                    // 
 157   2                      EP2AUTOINLENH  = 0x00;        //ep2 auto commit length 512
 158   2              SYNCDELAY;
 159   2              EP2AUTOINLENL = 0x40;
 160   2              SYNCDELAY;
 161   2              EP6AUTOINLENH  = 0x00;       //ep6 auto commit length 512
 162   2              SYNCDELAY;
 163   2              EP6AUTOINLENL = 0x40;
 164   2              SYNCDELAY;
 165   2         }
 166   1         return(TRUE);            // Handled by user code
 167   1      }
 168          
 169          BOOL DR_GetConfiguration(void)   // Called when a Get Configuration command is received
 170          {
 171   1         EP0BUF[0] = Configuration;
 172   1         EP0BCH = 0;
 173   1         EP0BCL = 1;
 174   1         return(TRUE);            // Handled by user code
 175   1      }
 176          
 177          BOOL DR_SetInterface(void)       // Called when a Set Interface command is received
 178          {
 179   1         AlternateSetting = SETUPDAT[2];
C51 COMPILER V8.05a   PERIPH                                                               02/09/2009 15:21:59 PAGE 4   

 180   1         return(TRUE);            // Handled by user code
 181   1      }
 182          
 183          BOOL DR_GetInterface(void)       // Called when a Set Interface command is received
 184          {
 185   1         EP0BUF[0] = AlternateSetting;
 186   1         EP0BCH = 0;
 187   1         EP0BCL = 1;
 188   1         return(TRUE);            // Handled by user code
 189   1      }
 190          
 191          BOOL DR_GetStatus(void)
 192          {
 193   1         return(TRUE);
 194   1      }
 195          
 196          BOOL DR_ClearFeature(void)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线精品视频一区二区| 色综合久久久久综合| 午夜精品成人在线视频| 一区二区欧美国产| 亚洲小说欧美激情另类| 亚洲va韩国va欧美va| 日韩精品亚洲一区二区三区免费| 亚洲国产精品人人做人人爽| 三级在线观看一区二区| 美日韩一区二区| 国产91精品在线观看| 成人高清伦理免费影院在线观看| 99re6这里只有精品视频在线观看| 成人av在线观| 成人美女在线观看| 成人av在线资源网| 91福利视频在线| 欧美一级日韩免费不卡| 国产午夜精品一区二区| 国产精品久久久一本精品| 亚洲综合色婷婷| 久久精品国产亚洲aⅴ| 国产亚洲精品超碰| 亚洲女人的天堂| 水蜜桃久久夜色精品一区的特点| 日韩国产在线一| 国产麻豆日韩欧美久久| 91行情网站电视在线观看高清版| 欧美妇女性影城| 欧美国产日韩亚洲一区| 亚洲午夜久久久久久久久久久| 乱中年女人伦av一区二区| 成人免费视频国产在线观看| 欧美夫妻性生活| 日本一区二区免费在线观看视频 | 播五月开心婷婷综合| 在线观看91视频| 久久久一区二区三区| 亚洲高清不卡在线观看| 国产一区激情在线| 欧美另类z0zxhd电影| 国产精品久久777777| 经典一区二区三区| 欧美日韩综合在线| 国产精品国产三级国产aⅴ中文| 日日摸夜夜添夜夜添精品视频| 国产**成人网毛片九色| 欧美日韩一区不卡| 中文字幕亚洲一区二区va在线| 日本中文一区二区三区| 一本一道综合狠狠老| 久久亚洲捆绑美女| 青青草97国产精品免费观看 | 国产大片一区二区| 91精品蜜臀在线一区尤物| 亚洲欧美激情小说另类| 国产91精品一区二区麻豆网站 | 亚洲天堂2014| 夫妻av一区二区| 久久欧美中文字幕| 狠狠色2019综合网| 日韩精品中文字幕在线一区| 水野朝阳av一区二区三区| 欧美在线你懂得| 亚洲综合激情另类小说区| 91在线播放网址| 亚洲天堂精品视频| 91在线porny国产在线看| 国产精品久久久久影视| 成人免费视频视频在线观看免费| 久久久噜噜噜久久人人看| 国产原创一区二区| 国产亚洲一区字幕| 成人午夜av影视| 国产精品福利电影一区二区三区四区| 国产精品99久久久久| 久久免费看少妇高潮| 国产成人激情av| 国产精品无人区| 97久久人人超碰| 一区二区三区日韩欧美| 欧美视频一区在线| 亚洲一级二级在线| 7777精品伊人久久久大香线蕉最新版| 五月天激情综合网| 日韩一区二区三区精品视频 | 国产精品三级电影| 一本一道久久a久久精品综合蜜臀 一本一道综合狠狠老 | 国产乱码精品一区二区三| 久久久久久久久久久99999| 成人美女视频在线观看18| 亚洲三级免费观看| 欧美美女网站色| 国产精品原创巨作av| 国产精品福利一区| 欧美精选一区二区| 国产精品一区不卡| 一区二区激情小说| 精品久久久久久无| 色妹子一区二区| 日日夜夜精品视频免费| 成人午夜视频网站| 一区二区中文字幕在线| 色综合色综合色综合| 日韩影视精彩在线| 久久网站最新地址| 欧美中文字幕亚洲一区二区va在线| 午夜视频一区二区三区| 久久精品亚洲乱码伦伦中文 | 蜜乳av一区二区三区| 欧美国产在线观看| 91精选在线观看| 国产91色综合久久免费分享| 亚洲一区二区成人在线观看| 高清av一区二区| 中文字幕欧美国产| 一本到高清视频免费精品| 麻豆成人在线观看| 亚洲自拍偷拍麻豆| 国产日产亚洲精品系列| 9191精品国产综合久久久久久| 成人免费视频视频在线观看免费| 视频一区视频二区中文| 一区二区三区欧美视频| 欧美国产精品一区二区三区| 日韩午夜av一区| 欧美日韩国产免费一区二区| 国产精品亚洲第一区在线暖暖韩国| 亚洲午夜av在线| 亚洲人成在线播放网站岛国| 久久女同性恋中文字幕| 欧美一级搡bbbb搡bbbb| 欧美日韩第一区日日骚| 色噜噜狠狠成人中文综合| 国产不卡在线播放| 国产盗摄女厕一区二区三区| 久久精品国产免费看久久精品| 欧美精品一区在线观看| 亚洲狼人国产精品| 久久精品亚洲乱码伦伦中文| 日韩一区二区精品在线观看| 欧美日韩一级片在线观看| 99久久99久久精品国产片果冻| 精品亚洲成a人在线观看| 日韩成人精品在线观看| 五月天激情综合| 午夜精品在线看| 五月婷婷久久综合| 日韩电影免费一区| 日韩经典中文字幕一区| 青青草97国产精品免费观看| 欧美人狂配大交3d怪物一区| 欧美亚洲日本国产| 欧美日韩中文精品| 欧美日韩国产综合一区二区| 欧美日韩日日骚| 91精品欧美久久久久久动漫| 日韩一级片在线观看| 精品成人a区在线观看| 欧美激情一区二区三区蜜桃视频| 精品久久一二三区| 在线一区二区三区做爰视频网站| 一本大道久久a久久精二百| 色88888久久久久久影院野外| 91久久香蕉国产日韩欧美9色| 91在线观看地址| 欧美亚洲一区二区三区四区| 91精品国产91热久久久做人人| 日韩女优视频免费观看| 久久久亚洲精华液精华液精华液| 国产欧美日韩视频在线观看| 亚洲欧美日韩在线| 亚洲成人久久影院| 久久国产免费看| 成人免费va视频| 欧美福利电影网| 中文字幕第一区综合| 午夜电影网一区| 国产黄色成人av| 欧美四级电影网| 国产色产综合色产在线视频| 亚洲综合成人网| 九九精品视频在线看| 97se亚洲国产综合在线| 4438x亚洲最大成人网| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 欧美性videosxxxxx| 色婷婷综合久久久久中文一区二区| 91蝌蚪国产九色| 555夜色666亚洲国产免| 国产欧美日韩另类视频免费观看| 亚洲欧美日韩电影| 美国十次了思思久久精品导航| 成人黄页毛片网站| 日韩精品一区二区三区三区免费| 亚洲欧洲精品一区二区三区不卡| 免费观看成人av| 91久久国产综合久久| 久久久久国产精品麻豆| 日韩黄色一级片|