Gentlemen,
While the question itself is not new, I was not able to find the answer for one specific detail: how to take advantage of the SSI hardware do his automatic job properly, EXCEPT for the enabling of FSS pin when using multiple slaves on the same SPI port.
General description: using 4 identical sensors, all SPI legacy. Protocol and data rate for all is obviously the same.
SSI0CLK connected to SENSOR_ALL_SPI_CLK
SSI0XDAT0 into SENSOR_ALL_SPI_MOSI
SSI0XDAT1 into SENSOR_ALL_SPI_MISO
SSI0FSS into SENSOR1_SPI_CS
GPIO_PB0 into SENSOR2_SPI_CS
GPIO_PB1 into SENSOR3_SPI_CS
GPIO_PB2 into SENSOR4_SPI_CS
If I were to use a single slave, the mere fact of adding data to the FIFO (after proper SSI configuration), would generate the correct FSS sequence, clock, and data transmission. For using the other slaves, it is necessary to manually control the FSS bit for the desired sensor, and let the SSI hardware take care of the rest. Questions...
1) If I simply change the mux settings for that port's SSI0FSS, defining it as GPIO, will it get properly disconnected from the SSI hardware control? Or will the hardware SSI still be messing up with my SSI0FSS output?
2) This particular sensor uses 32 bit words (it does not expect any shifting on FSS before 32 bits are transported). Is my understanding correct that, even if I were using a single sensor, I would still need to control FSS manually, as the hardware can automatically control it only from 4 to 16 bits?
Regards,
Bruno