I’m trying to implement an SPI slave interface with DMA on the BW16 module.
I am using the standard SDK.
I can see the RTL8720DN does not have SPI0, and the external SPI1 pins are SPI master only.
Can I use the USI SPI port on this module?
PA25 (MOSI), PA26 (MISO), PA30 (CLS) are available on the BW16, but not PA28 (CS).
I am thinking of doing it like this:
- external interrupt on another GPIO pin, which will become a software chip select
- when the pin is driven low, enable the USI SPI port and do the transaction
- when the pin goes high, disable USI SPI port
Can the USI SPI port handle this kind of software chip select? (some STM32 micros have a register setting for software CS.)
Also, where can I find a list of what peripheral functions are mapped to each pin? It is not covered in the data sheet or anywhere else that I can find. Just some comments in some examples.
Finally, the BW16 data sheet has a very blurry schematic in it. Is there a proper clear version available?
I need to see the label on PA28, to see if there will be a conflict on the CS pin.