Hi experts,
I'm looking to use an integrated TMS570 MibSPI to communicate with an Analog Devices AD7490 SPI ADC (16 channels).The included documentation in the spnu499a doesn't provide enough information for my understanding of how the MibSPI multi-buffer mode works.
Here is the situation: the AD7490 ADC has the ability, after been programmed, to perform continuous conversions on dummy input clock pulses, 16 SPI clock pulses per channel. For my purpose, on each reading cycle, I have 18 x 16-bit words to transmit over to the external ADC (1x dummy write, 1x configuration word and 16x dummy write to read). Starting with the third transmission, I'll have valid conversion result for the first analog input channel coming back from the ADC.
Here is what I want to achieve:
1) Configure the TMS570LS2134 MibSPI1 in multi-buffer master mode (ADC in slave mode)
2) Store the 18 x 16-bit words for TX in one TX buffer memory
3) Use the selected N2HET1 pin (EVENTs 8 ... 13) that will be triggered with a fixed timer interrupt, to start the TX/RX cycle on a timely fashion, by transmitting the 18x predefined words on the SPI (DMA???)
4) All without CPU intervention, while the SPI is TX, read and store RX results in another RX buffer memory (DMA???)
5) When last 16 bits are stored in the RX buffer memory, interrupt the CPU of its completion
Is this something feasible with the TMS570?
If so, what registers should I use and how the DMA and TG are involved?
Thank you for any help.
Regards.