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

📄 mypcioin.lst

📁 cypress usb CY7C68103A的控制输出固件还有上位机c++源码
💻 LST
📖 第 1 页 / 共 2 页
字号:
 292          
 293          #define VX_C3 0xC3             // turn OFF debug LEDs...
 294          
 295          
 296          // Core uses bRequest value 0xA0 for Anchor downloads/uploads...
 297          // Cypress Semiconductor reserves bRequest values 0xA1 through 0xAF...
 298          // Your implementation should not use the above bRequest values...
 299          // Also, previous fw.c versions trap all bRequest values 0x00 through 0x0F...
 300          //
 301          //   bRequest value: SETUPDAT[1]
 302          //   standard, 0x00 through 0x0F
C51 COMPILER V7.50   MYPCIOIN                                                              05/27/2006 12:40:15 PAGE 6   

 303          //
 304          //   bmRequest value: SETUPDAT[0]
 305          //   standard,  0x80 IN   Token
 306          //   vendor,    0xC0 IN   Token
 307          //   class,     0xA0 IN   Token
 308          //   standard,  0x00 OUT  Token
 309          //   vendor,    0x40 OUT  Token
 310          //   class,     0x60 OUT  Token
 311          
 312          BOOL DR_VendorCmnd( void )
 313          {
 314   1      
 315   1        // Registers which require a synchronization delay, see section 15.14
 316   1        // FIFORESET        FIFOPINPOLAR
 317   1        // INPKTEND         OUTPKTEND
 318   1        // EPxBCH:L         REVCTL
 319   1        // GPIFTCB3         GPIFTCB2
 320   1        // GPIFTCB1         GPIFTCB0
 321   1        // EPxFIFOPFH:L     EPxAUTOINLENH:L
 322   1        // EPxFIFOCFG       EPxGPIFFLGSEL
 323   1        // PINFLAGSxx       EPxFIFOIRQ
 324   1        // EPxFIFOIE        GPIFIRQ
 325   1        // GPIFIE           GPIFADRH:L
 326   1        // UDMACRCH:L       EPxGPIFTRIG
 327   1        // GPIFTRIG
 328   1        
 329   1        // Note: The pre-REVE EPxGPIFTCH/L register are affected, as well...
 330   1        //      ...these have been replaced by GPIFTC[B3:B0] registers
 331   1      
 332   1      
 333   1          
 334   1      
 335   1              switch( SETUPDAT[ 1 ] )
 336   1              { 
 337   2          case VX_B2:
 338   2          { // turn OFF debug LEDs...
 339   3          
 340   3            ledX_rdvar = LED0_ON;    // visual
 341   3            ledX_rdvar = LED1_ON;    // visual
 342   3            ledX_rdvar = LED2_ON;    // visual
 343   3            ledX_rdvar = LED3_ON;    // visual
 344   3            
 345   3            *EP0BUF = VX_B2;
 346   3      
 347   3        EP0BCH = 0;
 348   3        EP0BCL = 1;               // Arm endpoint with # bytes to transfer
 349   3        EP0CS |= bmHSNAK;         // Acknowledge handshake phase of device request
 350   3        
 351   3      
 352   3            break;
 353   3          }
 354   2          case VX_B3:
 355   2          { // turn OFF debug LEDs...
 356   3          
 357   3            ledX_rdvar = LED0_OFF;    // visual
 358   3            ledX_rdvar = LED1_OFF;    // visual
 359   3            ledX_rdvar = LED2_OFF;    // visual
 360   3            ledX_rdvar = LED3_OFF;    // visual
 361   3            
 362   3            *EP0BUF = VX_B3;
 363   3              EP0BCH = 0;
 364   3              EP0BCL = 1;               // Arm endpoint with # bytes to transfer
C51 COMPILER V7.50   MYPCIOIN                                                              05/27/2006 12:40:15 PAGE 7   

 365   3              EP0CS |= bmHSNAK;         // Acknowledge handshake phase of device request
 366   3        
 367   3      
 368   3      
 369   3      
 370   3            break;
 371   3          }
 372   2      
 373   2          case VX_BC:
 374   2          { // turn OFF debug LEDs...
 375   3          
 376   3               
 377   3                                      
 378   3              
 379   3              
 380   3            
 381   3              *EP0BUF = num;
 382   3                      EP0BCH = 0;
 383   3                      EP0BCL = 1;               // Arm endpoint with # bytes to transfer
 384   3                      EP0CS |= bmHSNAK;         // Acknowledge handshake phase of device request
 385   3       
 386   3            break;
 387   3          }
 388   2      
 389   2       
 390   2          
 391   2          default:
 392   2          {
 393   3            ledX_rdvar = LED3_ON;     // debug visual, stuck "ON" to warn developer...
 394   3                  return( FALSE );          // no error; command handled OK
 395   3          }
 396   2              }
 397   1        
 398   1      
 399   1              return( FALSE );              // no error; command handled OK
 400   1      }
 401          
 402          //-----------------------------------------------------------------------------
 403          // USB Interrupt Handlers
 404          //   The following functions are called by the USB interrupt jump table.
 405          //-----------------------------------------------------------------------------
 406          
 407          // Setup Data Available Interrupt Handler
 408          void ISR_Sudav( void ) interrupt 0
 409          {
 410   1         GotSUD = TRUE;         // Set flag
 411   1         EZUSB_IRQ_CLEAR( );
 412   1         USBIRQ = bmSUDAV;      // Clear SUDAV IRQ
 413   1      }
 414          
 415          // Setup Token Interrupt Handler
 416          void ISR_Sutok( void ) interrupt 0
 417          {
 418   1         EZUSB_IRQ_CLEAR( );
 419   1         USBIRQ = bmSUTOK;      // Clear SUTOK IRQ
 420   1      }
 421          
 422          void ISR_Sof( void ) interrupt 0
 423          {
 424   1         EZUSB_IRQ_CLEAR( );
 425   1         USBIRQ = bmSOF;        // Clear SOF IRQ
 426   1      }
C51 COMPILER V7.50   MYPCIOIN                                                              05/27/2006 12:40:15 PAGE 8   

 427          
 428          void ISR_Ures( void ) interrupt 0
 429          {
 430   1         if ( EZUSB_HIGHSPEED( ) )
 431   1         {
 432   2            pConfigDscr = pHighSpeedConfigDscr;
 433   2            pOtherConfigDscr = pFullSpeedConfigDscr;
 434   2         }
 435   1         else
 436   1         {
 437   2            pConfigDscr = pFullSpeedConfigDscr;
 438   2            pOtherConfigDscr = pHighSpeedConfigDscr;
 439   2         }
 440   1         
 441   1         EZUSB_IRQ_CLEAR( );
 442   1         USBIRQ = bmURES;       // Clear URES IRQ
 443   1      }
 444          
 445          void ISR_Susp( void ) interrupt 0
 446          {
 447   1         Sleep = TRUE;
 448   1         EZUSB_IRQ_CLEAR( );
 449   1         USBIRQ = bmSUSP;
 450   1      }
 451          
 452          void ISR_Highspeed( void ) interrupt 0
 453          {
 454   1         if ( EZUSB_HIGHSPEED( ) )
 455   1         {
 456   2            pConfigDscr = pHighSpeedConfigDscr;
 457   2            pOtherConfigDscr = pFullSpeedConfigDscr;
 458   2         }
 459   1         else
 460   1         {
 461   2            pConfigDscr = pFullSpeedConfigDscr;
 462   2            pOtherConfigDscr = pHighSpeedConfigDscr;
 463   2         }
 464   1      
 465   1         EZUSB_IRQ_CLEAR( );
 466   1         USBIRQ = bmHSGRANT;
 467   1      }
 468          void ISR_Ep0ack( void ) interrupt 0
 469          {
 470   1      }
 471          void ISR_Stub( void ) interrupt 0
 472          {
 473   1      }
 474          void ISR_Ep0in( void ) interrupt 0
 475          {
 476   1      }
 477          void ISR_Ep0out( void ) interrupt 0
 478          {
 479   1      }
 480          void ISR_Ep1in( void ) interrupt 0
 481          {
 482   1      }
 483          void ISR_Ep1out( void ) interrupt 0
 484          {
 485   1      }
 486          void ISR_Ep2inout( void ) interrupt 0
 487          {
 488   1      }
C51 COMPILER V7.50   MYPCIOIN                                                              05/27/2006 12:40:15 PAGE 9   

 489          void ISR_Ep4inout( void ) interrupt 0
 490          {
 491   1      }
 492          void ISR_Ep6inout( void ) interrupt 0
 493          {
 494   1      }
 495          void ISR_Ep8inout( void ) interrupt 0
 496          {
 497   1      }
 498          void ISR_Ibn( void ) interrupt 0
 499          {
 500   1      }
 501          void ISR_Ep0pingnak( void ) interrupt 0
 502          {
 503   1      }
 504          void ISR_Ep1pingnak( void ) interrupt 0
 505          {
 506   1      }
 507          void ISR_Ep2pingnak( void ) interrupt 0
 508          {
 509   1      }
 510          void ISR_Ep4pingnak( void ) interrupt 0
 511          {
 512   1      }
 513          void ISR_Ep6pingnak( void ) interrupt 0
 514          {
 515   1      }
 516          void ISR_Ep8pingnak( void ) interrupt 0
 517          {
 518   1      }
 519          void ISR_Errorlimit( void ) interrupt 0
 520          {
 521   1      }
 522          void ISR_Ep2piderror( void ) interrupt 0
 523          {
 524   1      }
 525          void ISR_Ep4piderror( void ) interrupt 0
 526          {
 527   1      }
 528          void ISR_Ep6piderror( void ) interrupt 0
 529          {
 530   1      }
 531          void ISR_Ep8piderror( void ) interrupt 0
 532          {
 533   1      }
 534          void ISR_Ep2pflag( void ) interrupt 0
 535          {
 536   1      }
 537          void ISR_Ep4pflag( void ) interrupt 0
 538          {
 539   1      }
 540          void ISR_Ep6pflag( void ) interrupt 0
 541          {
 542   1      }
 543          void ISR_Ep8pflag( void ) interrupt 0
 544          {
 545   1      }
 546          void ISR_Ep2eflag( void ) interrupt 0
 547          {
 548   1      }
 549          void ISR_Ep4eflag( void ) interrupt 0
 550          {
C51 COMPILER V7.50   MYPCIOIN                                                              05/27/2006 12:40:15 PAGE 10  

 551   1      }
 552          void ISR_Ep6eflag( void ) interrupt 0
 553          {
 554   1      }
 555          void ISR_Ep8eflag( void ) interrupt 0
 556          {
 557   1      }
 558          void ISR_Ep2fflag( void ) interrupt 0
 559          {
 560   1      }
 561          void ISR_Ep4fflag( void ) interrupt 0
 562          {
 563   1      }
 564          void ISR_Ep6fflag( void ) interrupt 0
 565          {
 566   1      }
 567          void ISR_Ep8fflag( void ) interrupt 0
 568          {
 569   1      }
 570          void ISR_GpifComplete( void ) interrupt 0
 571          {
 572   1      }
 573          void ISR_GpifWaveform( void ) interrupt 0
 574          {
 575   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    732    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =     16       1
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      5       1
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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