SPI module does have bidirectional mode, but using it is somewhat tricky because as soon as you turn to Rx, clocks automatically are generated until you turn it back again. So code must time the whole process relatively precisely.
After changing to Rx, can I receive 3 bytes continuously as shown in the figure? In that case, should I use RXFIFO? Is it possible to select only 8-bit or 16-bit data size for the FIFO? Goto