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

📄 fpusb.lst

📁 CY68013 芯片USB开发固件程序。
💻 LST
📖 第 1 页 / 共 2 页
字号:
 265   1         return(TRUE);
 266   1      }
 267          
 268          BOOL DR_SetConfiguration(void)   // Called when a Set Configuration command is received
 269          {
 270   1         Configuration = SETUPDAT[2];
 271   1         return(TRUE);            // Handled by user code
 272   1      }
 273          
 274          BOOL DR_GetConfiguration(void)   // Called when a Get Configuration command is received
 275          {
 276   1         EP0BUF[0] = Configuration;
 277   1         EP0BCH = 0;
 278   1         EP0BCL = 1;
 279   1         return(TRUE);            // Handled by user code
 280   1      }
 281          
 282          BOOL DR_SetInterface(void)       // Called when a Set Interface command is received
 283          {
 284   1         AlternateSetting = SETUPDAT[2];
 285   1         return(TRUE);            // Handled by user code
 286   1      }
 287          
 288          BOOL DR_GetInterface(void)       // Called when a Set Interface command is received
 289          {
 290   1         EP0BUF[0] = AlternateSetting;
 291   1         EP0BCH = 0;
 292   1         EP0BCL = 1;
 293   1         return(TRUE);            // Handled by user code
 294   1      }
 295          
 296          BOOL DR_GetStatus(void)
 297          {
 298   1         return(TRUE);
 299   1      }
 300          
 301          BOOL DR_ClearFeature(void)
 302          {
 303   1         return(TRUE);
C51 COMPILER V6.10  FPUSB                                                                  12/04/2003 12:14:10 PAGE 6   

 304   1      }
 305          
 306          BOOL DR_SetFeature(void)
 307          {
 308   1         return(TRUE);
 309   1      }
 310          
 311          BOOL DR_VendorCmnd(void)
 312          {
 313   1          switch(SETUPDAT[1])
 314   1          {
 315   2      		case VR_SEND_COMMAND:
 316   2      			PA0 = SETUPDAT[2] & 1;
 317   2      			PA1 = (SETUPDAT[2] >> 1) & 1;
 318   2      
 319   2      			PA3 = 0;
 320   2      			PA3 = 1;
 321   2      
 322   2      		   break;
 323   2      		case VR_RESET_FIFO:
 324   2                  
 325   2      
 326   2      			FIFORESET = 0x80; // reset all FIFOs
 327   2                  SYNCDELAY;
 328   2                  FIFORESET = 0x02;
 329   2                  SYNCDELAY;
 330   2                  FIFORESET = 0x04;
 331   2                  SYNCDELAY;
 332   2                  FIFORESET = 0x06;
 333   2                  SYNCDELAY;
 334   2                  FIFORESET = 0x08;
 335   2                  SYNCDELAY;
 336   2                  FIFORESET = 0x00;
 337   2                  SYNCDELAY;
 338   2      
 339   2                  break;
 340   2          }
 341   1      
 342   1      	return(FALSE); // no error; command handled OK
 343   1      }
 344          
 345          //-----------------------------------------------------------------------------
 346          // USB Interrupt Handlers
 347          //   The following functions are called by the USB interrupt jump table.
 348          //-----------------------------------------------------------------------------
 349          
 350          // Setup Data Available Interrupt Handler
 351          void ISR_Sudav(void) interrupt 0
 352          {
 353   1         GotSUD = TRUE;            // Set flag
 354   1         EZUSB_IRQ_CLEAR();
 355   1         USBIRQ = bmSUDAV;         // Clear SUDAV IRQ
 356   1      }
 357          
 358          // Setup Token Interrupt Handler
 359          void ISR_Sutok(void) interrupt 0
 360          {
 361   1         EZUSB_IRQ_CLEAR();
 362   1         USBIRQ = bmSUTOK;         // Clear SUTOK IRQ
 363   1      }
 364          
 365          void ISR_Sof(void) interrupt 0
C51 COMPILER V6.10  FPUSB                                                                  12/04/2003 12:14:10 PAGE 7   

 366          {
 367   1         EZUSB_IRQ_CLEAR();
 368   1         USBIRQ = bmSOF;            // Clear SOF IRQ
 369   1      }
 370          
 371          void ISR_Ures(void) interrupt 0
 372          {
 373   1         if (EZUSB_HIGHSPEED())
 374   1         {
 375   2            pConfigDscr = pHighSpeedConfigDscr;
 376   2            pOtherConfigDscr = pFullSpeedConfigDscr;
 377   2         }
 378   1         else
 379   1         {
 380   2            pConfigDscr = pFullSpeedConfigDscr;
 381   2            pOtherConfigDscr = pHighSpeedConfigDscr;
 382   2         }
 383   1         
 384   1         EZUSB_IRQ_CLEAR();
 385   1         USBIRQ = bmURES;         // Clear URES IRQ
 386   1      }
 387          
 388          void ISR_Susp(void) interrupt 0
 389          {
 390   1         Sleep = TRUE;
 391   1         EZUSB_IRQ_CLEAR();
 392   1         USBIRQ = bmSUSP;
 393   1         
 394   1      }
 395          
 396          void ISR_Highspeed(void) interrupt 0
 397          {
 398   1         if (EZUSB_HIGHSPEED())
 399   1         {
 400   2            pConfigDscr = pHighSpeedConfigDscr;
 401   2            pOtherConfigDscr = pFullSpeedConfigDscr;
 402   2      
 403   2         }
 404   1         else
 405   1         {
 406   2            pConfigDscr = pFullSpeedConfigDscr;
 407   2            pOtherConfigDscr = pHighSpeedConfigDscr;
 408   2       
 409   2          }
 410   1      
 411   1         EZUSB_IRQ_CLEAR();
 412   1         USBIRQ = bmHSGRANT;
 413   1         
 414   1      }
 415          void ISR_Ep0ack(void) interrupt 0
 416          {
 417   1      }
 418          void ISR_Stub(void) interrupt 0
 419          {
 420   1      }
 421          void ISR_Ep0in(void) interrupt 0
 422          {
 423   1      }
 424          void ISR_Ep0out(void) interrupt 0
 425          {
 426   1      }
 427          void ISR_Ep1in(void) interrupt 0
C51 COMPILER V6.10  FPUSB                                                                  12/04/2003 12:14:10 PAGE 8   

 428          {
 429   1      }
 430          void ISR_Ep1out(void) interrupt 0
 431          {
 432   1      }
 433          void ISR_Ep2inout(void) interrupt 0
 434          {
 435   1      }
 436          void ISR_Ep4inout(void) interrupt 0
 437          {
 438   1      }
 439          void ISR_Ep6inout(void) interrupt 0
 440          {
 441   1      }
 442          void ISR_Ep8inout(void) interrupt 0
 443          {
 444   1      }
 445          void ISR_Ibn(void) interrupt 0
 446          {
 447   1      }
 448          void ISR_Ep0pingnak(void) interrupt 0
 449          {
 450   1      }
 451          void ISR_Ep1pingnak(void) interrupt 0
 452          {
 453   1      }
 454          void ISR_Ep2pingnak(void) interrupt 0
 455          {
 456   1      }
 457          void ISR_Ep4pingnak(void) interrupt 0
 458          {
 459   1      }
 460          void ISR_Ep6pingnak(void) interrupt 0
 461          {
 462   1      }
 463          void ISR_Ep8pingnak(void) interrupt 0
 464          {
 465   1      }
 466          void ISR_Errorlimit(void) interrupt 0
 467          {
 468   1      }
 469          void ISR_Ep2piderror(void) interrupt 0
 470          {
 471   1      }
 472          void ISR_Ep4piderror(void) interrupt 0
 473          {
 474   1      }
 475          void ISR_Ep6piderror(void) interrupt 0
 476          {
 477   1      }
 478          void ISR_Ep8piderror(void) interrupt 0
 479          {
 480   1      }
 481          void ISR_Ep2pflag(void) interrupt 0
 482          {
 483   1      }
 484          void ISR_Ep4pflag(void) interrupt 0
 485          {
 486   1      }
 487          void ISR_Ep6pflag(void) interrupt 0
 488          {
 489   1      }
C51 COMPILER V6.10  FPUSB                                                                  12/04/2003 12:14:10 PAGE 9   

 490          void ISR_Ep8pflag(void) interrupt 0
 491          {
 492   1      }
 493          void ISR_Ep2eflag(void) interrupt 0
 494          {
 495   1      }
 496          void ISR_Ep4eflag(void) interrupt 0
 497          {
 498   1      }
 499          void ISR_Ep6eflag(void) interrupt 0
 500          {
 501   1      }
 502          void ISR_Ep8eflag(void) interrupt 0
 503          {
 504   1      }
 505          void ISR_Ep2fflag(void) interrupt 0
 506          {
 507   1      }
 508          void ISR_Ep4fflag(void) interrupt 0
 509          {
 510   1      }
 511          void ISR_Ep6fflag(void) interrupt 0
 512          {
 513   1      }
 514          void ISR_Ep8fflag(void) interrupt 0
 515          {
 516   1      }
 517          void ISR_GpifComplete(void) interrupt 0
 518          {
 519   1      }
 520          void ISR_GpifWaveform(void) interrupt 0
 521          {
 522   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    824    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      2    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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