⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lst

📁 使用Jungo Windriver開發的USB driver 及其firmware,類型為mass storage,應用於FX2(Cypress CY68013A)上.
💻 LST
📖 第 1 页 / 共 4 页
字号:
 274   4                          Rwuen = FALSE;       // Disable Remote Wakeup
 275   4                      else
 276   4                          EZUSB_STALL_EP0();   // Stall End Point 0
 277   4                      break;
 278   4                  case FT_ENDPOINT:         // End Point
 279   4                      if(SETUPDAT[2] == 0)
 280   4                      {
 281   5                          *(BYTE xdata *) epcs(SETUPDAT[4]) &= ~bmEPSTALL;
 282   5                          EZUSB_RESET_DATA_TOGGLE( SETUPDAT[4] );
 283   5                      }
 284   4                      else
 285   4                          EZUSB_STALL_EP0();   // Stall End Point 0
 286   4                      break;
 287   4                  }
 288   3              }
 289   2              break;
 290   2          case SC_SET_FEATURE:                  // *** Set Feature
 291   2              if(WDF_SetFeature())
 292   2              {
 293   3                  switch(SETUPDAT[0])
 294   3                  {
 295   4                  case FT_DEVICE:            // Device
 296   4                      if(SETUPDAT[2] == 1)
 297   4                          Rwuen = TRUE;      // Enable Remote Wakeup
 298   4                      else if(SETUPDAT[2] == 2)
 299   4                          // Set Feature Test Mode.  The core handles this request.  However, it is
 300   4                          // necessary for the firmware to complete the handshake phase of the
 301   4                          // control transfer before the chip will enter test mode.  It is also
 302   4                          // necessary for FX2 to be physically disconnected (D+ and D-)
 303   4                          // from the host before it will enter test mode.
C51 COMPILER V7.06   MAIN                                                                  02/13/2008 21:37:10 PAGE 6   

 304   4                          break;
 305   4                     else
 306   4                          EZUSB_STALL_EP0();   // Stall End Point 0
 307   4                      break;
 308   4                  case FT_ENDPOINT:         // End Point
 309   4                      *(BYTE xdata *) epcs(SETUPDAT[4]) |= bmEPSTALL;
 310   4                             break;
 311   4                  default:
 312   4                      EZUSB_STALL_EP0();      // Stall End Point 0
 313   4                  }
 314   3              }
 315   2              break;
 316   2          default:                     // *** Invalid Command
 317   2              if(!WDF_VendorCmnd())
 318   2                  EZUSB_STALL_EP0();            // Stall End Point 0
 319   2          }
 320   1      
 321   1          // Acknowledge handshake phase of device request
 322   1          EP0CS |= bmHSNAK;
 323   1      }
 324          
 325          // Wake-up interrupt handler
 326          void resume_isr(void) interrupt WKUP_VECT
 327          {
 328   1          EZUSB_CLEAR_RSMIRQ();
 329   1      }
 330          
C51 COMPILER V7.06   MAIN                                                                  02/13/2008 21:37:10 PAGE 7   

ASSEMBLY LISTING OF GENERATED OBJECT CODE


             ; FUNCTION main (BEGIN)
                                           ; SOURCE LINE # 70
                                           ; SOURCE LINE # 71
                                           ; SOURCE LINE # 75
0000 E4                CLR     A
0001 F500        R     MOV     j+03H,A
0003 F500        R     MOV     j+02H,A
0005 F500        R     MOV     j+01H,A
0007 F500        R     MOV     j,A
                                           ; SOURCE LINE # 78
0009 F500        R     MOV     nSetupRequests+03H,A
000B F500        R     MOV     nSetupRequests+02H,A
000D F500        R     MOV     nSetupRequests+01H,A
000F F500        R     MOV     nSetupRequests,A
                                           ; SOURCE LINE # 81
0011 C200        R     CLR     Sleep
                                           ; SOURCE LINE # 82
0013 C200        R     CLR     GotSUD
                                           ; SOURCE LINE # 85
0015 120000      E     LCALL   WDF_I2CInit
                                           ; SOURCE LINE # 88
0018 120000      E     LCALL   WDF_Init
                                           ; SOURCE LINE # 97
001B 750000      E     MOV     pDeviceDscr,#HIGH DeviceDscr
001E 750000      E     MOV     pDeviceDscr+01H,#LOW DeviceDscr
                                           ; SOURCE LINE # 98
0021 750000      E     MOV     pDeviceQualDscr,#HIGH DeviceQualDscr
0024 750000      E     MOV     pDeviceQualDscr+01H,#LOW DeviceQualDscr
                                           ; SOURCE LINE # 99
0027 750000      E     MOV     pHighSpeedConfigDscr,#HIGH HighSpeedConfigDscr
002A 750000      E     MOV     pHighSpeedConfigDscr+01H,#LOW HighSpeedConfigDscr
                                           ; SOURCE LINE # 100
002D 750000      E     MOV     pFullSpeedConfigDscr,#HIGH FullSpeedConfigDscr
0030 750000      E     MOV     pFullSpeedConfigDscr+01H,#LOW FullSpeedConfigDscr
                                           ; SOURCE LINE # 101
0033 750000      E     MOV     pStringDscr,#HIGH StringDscr
0036 750000      E     MOV     pStringDscr+01H,#LOW StringDscr
                                           ; SOURCE LINE # 108
0039 C3                CLR     C
003A 7400        E     MOV     A,#LOW UserDscr
003C 9400        E     SUBB    A,#LOW DeviceDscr
003E FF                MOV     R7,A
003F 7400        E     MOV     A,#HIGH UserDscr
0041 9400        E     SUBB    A,#HIGH DeviceDscr
0043 CF                XCH     A,R7
0044 2402              ADD     A,#02H
0046 CF                XCH     A,R7
0047 3400              ADDC    A,#00H
0049 FE                MOV     R6,A
004A E4                CLR     A
004B 8F00        R     MOV     DevDescrLen+03H,R7
004D 8E00        R     MOV     DevDescrLen+02H,R6
004F F500        R     MOV     DevDescrLen+01H,A
0051 F500        R     MOV     DevDescrLen,A
                                           ; SOURCE LINE # 109
0053 7F12              MOV     R7,#012H
0055 FE                MOV     R6,A
0056 FD                MOV     R5,A
0057 FC                MOV     R4,A
C51 COMPILER V7.06   MAIN                                                                  02/13/2008 21:37:10 PAGE 8   

0058 AB00        R     MOV     R3,DevDescrLen+03H
005A AA00        R     MOV     R2,DevDescrLen+02H
005C A900        R     MOV     R1,DevDescrLen+01H
005E A800        R     MOV     R0,DevDescrLen
0060 120000      E     LCALL   ?C?LMUL
0063 7400        E     MOV     A,#LOW DeviceDscr
0065 2F                ADD     A,R7
0066 F9                MOV     R1,A
0067 7400        E     MOV     A,#HIGH DeviceDscr
0069 3E                ADDC    A,R6
006A 54C0              ANL     A,#0C0H
006C 7003              JNZ     $ + 5H
006E 020000      R     LJMP    ?C0001
                                           ; SOURCE LINE # 110
                                           ; SOURCE LINE # 112
0071 750000      R     MOV     IntDescrAddr,#00H
0074 750080      R     MOV     IntDescrAddr+01H,#080H
                                           ; SOURCE LINE # 113
0077 750000      E     MOV     ExtDescrAddr,#HIGH DeviceDscr
007A 750000      E     MOV     ExtDescrAddr+01H,#LOW DeviceDscr
                                           ; SOURCE LINE # 114
007D E4                CLR     A
007E F500        R     MOV     i+03H,A
0080 F500        R     MOV     i+02H,A
0082 F500        R     MOV     i+01H,A
0084 F500        R     MOV     i,A
0086         ?C0002:
0086 AF00        R     MOV     R7,DevDescrLen+03H
0088 AE00        R     MOV     R6,DevDescrLen+02H
008A AD00        R     MOV     R5,DevDescrLen+01H
008C AC00        R     MOV     R4,DevDescrLen
008E AB00        R     MOV     R3,i+03H
0090 AA00        R     MOV     R2,i+02H
0092 A900        R     MOV     R1,i+01H
0094 A800        R     MOV     R0,i
0096 C3                CLR     C
0097 120000      E     LCALL   ?C?ULCMP
009A 5033              JNC     ?C0003
                                           ; SOURCE LINE # 115
009C E500        R     MOV     A,ExtDescrAddr+01H
009E 2500        R     ADD     A,i+03H
00A0 F582              MOV     DPL,A
00A2 E500        R     MOV     A,ExtDescrAddr
00A4 3500        R     ADDC    A,i+02H
00A6 F583              MOV     DPH,A
00A8 E0                MOVX    A,@DPTR
00A9 FF                MOV     R7,A
00AA E500        R     MOV     A,IntDescrAddr+01H
00AC 2500        R     ADD     A,i+03H
00AE F582              MOV     DPL,A
00B0 E500        R     MOV     A,IntDescrAddr
00B2 3500        R     ADDC    A,i+02H
00B4 F583              MOV     DPH,A
00B6 EF                MOV     A,R7
00B7 F0                MOVX    @DPTR,A
00B8 E500        R     MOV     A,i+03H
00BA 2401              ADD     A,#01H
00BC F500        R     MOV     i+03H,A
00BE E4                CLR     A
00BF 3500        R     ADDC    A,i+02H
00C1 F500        R     MOV     i+02H,A
00C3 E4                CLR     A
C51 COMPILER V7.06   MAIN                                                                  02/13/2008 21:37:10 PAGE 9   

00C4 3500        R     ADDC    A,i+01H
00C6 F500        R     MOV     i+01H,A
00C8 E4                CLR     A
00C9 3500        R     ADDC    A,i
00CB F500        R     MOV     i,A
00CD 80B7              SJMP    ?C0002
00CF         ?C0003:
                                           ; SOURCE LINE # 118
00CF 850000      R     MOV     pDeviceDscr,IntDescrAddr
00D2 850000      R     MOV     pDeviceDscr+01H,IntDescrAddr+01H
                                           ; SOURCE LINE # 119
00D5 7400        E     MOV     A,#LOW DeviceDscr
00D7 2480              ADD     A,#080H
00D9 FF                MOV     R7,A
00DA 7400        E     MOV     A,#HIGH DeviceDscr
00DC 34FF              ADDC    A,#0FFH
00DE FE                MOV     R6,A
;---- Variable 'offset' assigned to Register 'R6/R7' ----
                                           ; SOURCE LINE # 120
00DF C3                CLR     C
00E0 E500        R     MOV     A,pDeviceQualDscr+01H
00E2 9F                SUBB    A,R7
00E3 F500        R     MOV     pDeviceQualDscr+01H,A
00E5 E500        R     MOV     A,pDeviceQualDscr
00E7 9E                SUBB    A,R6
00E8 F500        R     MOV     pDeviceQualDscr,A
                                           ; SOURCE LINE # 121
00EA C3                CLR     C
00EB E500        R     MOV     A,pConfigDscr+01H
00ED 9F                SUBB    A,R7
00EE F500        R     MOV     pConfigDscr+01H,A
00F0 E500        R     MOV     A,pConfigDscr
00F2 9E                SUBB    A,R6
00F3 F500        R     MOV     pConfigDscr,A
                                           ; SOURCE LINE # 122
00F5 C3                CLR     C
00F6 E500        R     MOV     A,pOtherConfigDscr+01H
00F8 9F                SUBB    A,R7
00F9 F500        R     MOV     pOtherConfigDscr+01H,A
00FB E500        R     MOV     A,pOtherConfigDscr
00FD 9E                SUBB    A,R6
00FE F500        R     MOV     pOtherConfigDscr,A
                                           ; SOURCE LINE # 123
0100 C3                CLR     C
0101 E500        R     MOV     A,pHighSpeedConfigDscr+01H
0103 9F                SUBB    A,R7
0104 F500        R     MOV     pHighSpeedConfigDscr+01H,A
0106 E500        R     MOV     A,pHighSpeedConfigDscr
0108 9E                SUBB    A,R6
0109 F500        R     MOV     pHighSpeedConfigDscr,A
                                           ; SOURCE LINE # 124
010B C3                CLR     C
010C E500        R     MOV     A,pFullSpeedConfigDscr+01H
010E 9F                SUBB    A,R7
010F F500        R     MOV     pFullSpeedConfigDscr+01H,A
0111 E500        R     MOV     A,pFullSpeedConfigDscr
0113 9E                SUBB    A,R6
0114 F500        R     MOV     pFullSpeedConfigDscr,A
                                           ; SOURCE LINE # 125
0116 C3                CLR     C
0117 E500        R     MOV     A,pStringDscr+01H
0119 9F                SUBB    A,R7
C51 COMPILER V7.06   MAIN                                                                  02/13/2008 21:37:10 PAGE 10  

011A F500        R     MOV     pStringDscr+01H,A
011C E500        R     MOV     A,pStringDscr
011E 9E                SUBB    A,R6
011F F500        R     MOV     pStringDscr,A
                                           ; SOURCE LINE # 126
0121         ?C0001:
                                           ; SOURCE LINE # 128
0121 D2E8              SETB    EUSB
                                           ; SOURCE LINE # 129
0123 43D820            ORL     EICON,#020H
                                           ; SOURCE LINE # 131
0126 900000      E     MOV     DPTR,#INTSETUP
0129 E0                MOVX    A,@DPTR
012A 4409              ORL     A,#09H
012C F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 133
012D 900000      E     MOV     DPTR,#USBIE
0130 E0                MOVX    A,@DPTR
0131 443D              ORL     A,#03DH
0133 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 134
0134 D2AF              SETB    EA
                                           ; SOURCE LINE # 137
0136 D200        E     SETB    ?EZUSB_Discon?BIT
0138 120000      E     LCALL   EZUSB_Discon
                                           ; SOURCE LINE # 143
013B 900000      E     MOV     DPTR,#USBCS
013E E0                MOVX    A,@DPTR
013F 54F7              ANL     A,#0F7H
0141 F0                MOVX    @DPTR,A
                                           ; SOURCE LINE # 145
0142 538EF8            ANL     CKCON,#0F8H
0145         ?C0005:
                                           ; SOURCE LINE # 148
                                           ; SOURCE LINE # 149
                                           ; SOURCE LINE # 151
0145 120000      E     LCALL   WDF_Poll

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -