I am using the USB interface to setup the register values of the AD9910 for operation in Linear FM and RAM playback mode. To do this, as I understand, the CPLD has to be enabled and therefor drives the IO_UPDATE, DRCTL, OSK etc pins. After setup I need to then drive these pins externally through the various headers on the board to be controlled by/interface with other parts of the system.
Is there any way through the USB software interface to configure the CPLD outputs to tristate after setup of the AD9910 registers to avoid bus contention when driving the pins externally?
The solutions I can think of if the above is not possible are:
1. Reprogram the CPLD slightly to allow the pins to be tristated through the output enable bit of the relevant IO pins. This would be time consuming unless I could start with the current source code for the CPLD.
2. Externally control the OE pin of the CPLD after setting up the AD9910 registers resulting in all pins being tristate. This requires extra hardware and seems a bit of a hack as well as a global reset of the board after re-enabling the CPLD.
Many thanks for your advice.