Strictly necessary cookies are on by default and cannot be turned off. Functional, Performance and Tracking/targeting/sharing cookies can be turned on below based on your preferences (this banner will remain available for you to accept cookies). You may change your cookie settings by deleting cookies from your browser. Then this banner will appear again. You can learn more details about cookies HERE.
Strictly necessary (always on)
Functional, Performance and Tracking/targeting/sharing (default off)
There's a sentence in the FX3 technical reference manual that is not clearly understandable.
It is said that " All 60 GPIO pins in FX3 can function as GPIOs. Each is multiplexed to support other functions/peripheral blocks (like UART,SPI, and so on). By default, the pins are allocated in groups to either one function block or the other, depending on the interface mode, in their respective power domains"
Does that mean that any GPIO pins can be used for any interface ? I'd like to use 2 SPI interface with the FX3.
You cannot use any GPIO pins for any interface. What meant was, you can use the Pins dedicated for SPI/UART/I2C/I2S as ordinary GPIOs also.
There is only one dedicated SPI block with its IOs. However, in addition to the original SPI Pins you can create a custom SPI using ordinary GPIOs but bitbanging. We have an example code for doing so. In the SDK, please refer "C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\firmware\serialif_examples\cyfxusbspigpiomode"
But this bigbanging will have its own disadvantages of loading the CPU and slow data transfer rate.