enumerate with blank eeprom ok, but fail when download BulkLoop.hex

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

1)Hardware enviroment

   

 Our board use CY7C68013A as synchronouse slave fifo, and a fpga as master.

   

CY7C68013A's CLKOUT at 12MHz, and FPGA's PLL use as input, output 40Mhz as CY7C68013A's IFCLK.

   

EEPROM is blank.

   

2)firmware and modification

   

use Cypress Suite USB 3.4.7\Firmware\Bulkloop example,  and only modify BulkLoop.c as follow:

   

   

   // CPUCS = ((CPUCS & ~bmCLKSPD) | bmCLKSPD1) ;

   

   // CPUCS = (CPUCS & ~bmCLKSPD) |bmCLKSPD0; //24MHz

   

    CPUCS = CPUCS & ~bmCLKSPD ;  //12MHz CLKOUT

   

   

   // set the slave FIFO interface to 48MHz

   

   //IFCONFIG |= 0x40;

   

   IFCONFIG = 0x03; //slave fifo, sync, external

   

3)host pc

   

   windows 7 32bit. 

   

   Cypress Suite USB 3.4.7

   

  CY3684_EZ-USB_FX2LP_DVK

   
    3)Running result   
   
      When board first plug in, enumerate ok. We can find Cypress EZ-USB FX2LP No EEPROM(3.4.5.000).   
   
      Use Cyconsole download BulkLoop.hex to CY7C68013A, re enumerate fail.   
   
      We can only find a "Unknown Device" in windows device manager. In the device property, can't find anything   
   
      about VID and PID.    
   
      We run bus hound, can capture the first enumerate, but no packet about the second enumerate.   
   
        
   
    Any tip will be wellcome.   
   
    Thanks a lot!   
   

   
        
0 Likes
3 Replies