I would like to do the following with a CY7C68013A-100AXC (100 pin FX2LP):
1. Connect to USB and power up
2. Enumerate with default, download firmware and descriptor tables, reenumerate
3. Configure the device in port mode and use ports A through E as 40 GPIO pins
4. Set some IO pins, read some IO pins, do some stuff (ports A, C and E always as outputs, ports B and D as I/O)
5. Configure the device as GPIF master (just port B and D, no GPIF address pins needed), while keeping ports A, C and E as outputs (Is it possible that ports A, C and E keep their output states without glitches when switching ports B and D from GPIO to GPIF?)
6. Stream out 16 bit data through GPIF on ports B and D with 5 MHz external clock for up to 100 seconds without losing data (10MByte/sec, up to 1Gbyte of data)
7. Switch back to all port mode while keeping at least the outputs at ports A, C and E unchanged
8. Set output values of ports B and D
9. Go in suspend mode while keeping all port outputs active in their state before entering suspend mode
10. Wake up the device some minutes or hours later via USB
Would this be possible or is there any difficulty?
- Yes, you could switch between ports mode and GPIF mode on the same firmware. This would not affect the output values of PORTS A,C,E.