This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

SM320F28335-EP: SPI Communication with External ADC

Part Number: SM320F28335-EP

Hello,

I'm trying to use the SM320F28335GJZMEP microcontroller with an external ADC AD7091R-4BRUZ.

Looking at the datasheet for the AD7091R-4BRUZ, I believe I need first write 0000110000001111b on MOSI to write to the channel register of the ADC and select Ch0,Ch1,Ch2, and Ch3 for inclusion in the channel conversion sequence.   Then I need to continuous write on 0000000000000000b on MOSI to read request of the conversion result register of the ADC.  (On the next conversion cycle after the read request of the conversion result register, the results of the conversion result register will be sent on MISO where the first 3 bits indicate which analog input channel and the final 12 bits indicate the conversion result.)

Each time I send a 0000000000000000b message on MOSI using the SPITXBUF, I see that in the SPIFFRX register that the receive FIFO buffer has an additional word until the 16 word maximum is reached

0010000000100001b (initially before I send any read requests on MOSI >> Receive FIFO is empty)
0010000110100001b (after the first read requests on MOSI >> Receive FIFO has 1 word)
0010001010100001b (after the second read requests on MOSI >> Receive FIFO has 2 words)
0010001110100001b (after the third read requests on MOSI >> Receive FIFO has 3 words)
.

.

.
0011000010100001b (after the 16th read requests on MOSI >> Receive FIFO has 16 words)

However I'm not seeing the SPIRXBUF ever change.  What do I need to do to get data from the Receive FIFO to the SPIRXBUF?

If relevant, here's all of my register values

Thanks,

Kevin