Can you please attach the screenshot of the error message shown in devcoe manager (right click on the device with exclamation, select 'Properties' and select General tab and Details tab)? What is the VID/PID being shown in dev manager? Also please attach teh USB trace that you analyzed.
1) project ,source code and hex of Bulkloop
2)We capture the screen about the first enumeration and the second enumeration.
3)Bushound log information, mark the first and second enumeration log
We change register config value in file BulkLoop.c as following:
CPUCS = (CPUCS & ~bmCLKSPD) |bmCLKSPD0; //24MHz
//CPUCS = CPUCS & ~bmCLKSPD; //12MHz
//IFCONFIG |= 0x40;
//IFCONFIG = 0x03; //slave fifo, sync, external
IFCONFIG = 0xc3; //slave fifo, sync, internaland measure CLKOUT frequency, after download, it changed from default 12Mhz to 24MHz.So we are sure the firmware is running.Use internal 48MHz clock for IFCLK, so CY7C68013A not need FPGA's pll clock.Thanks for your echo.Eerry Christmas!
We find what the question is. On our board, Wakeup is connected to GND via a resister.
So if we only enable DPEN in register WAKEUPCS, Buckloop.hex Renumerate successfully.
WAKEUPCS =0x04; //ok
But if we enable WUEN and seletect WUPOL=0, fail again.
WAKEUPCS =0x05; //fail.
It's strange thing. We wakeup assert always, Renumerate fail. Why?
Once the device has entered suspend mode, in order to exit the state through one of of the WAKEUP pin sources, it needs a FALS to TRUE transition on one of the enabled WAKEUP pin sources for it to assert wakeup interrupt.