Other Parts Discussed in Thread: ADS8598S
Tool/software:
Hi All,
ADS8598S: Is it possible to connect AM62x and ADS8598S via SPI using DOUTA and DOUTB?
Are there any materials or sample codes explaining how to connect?
Best Regards,
Ito
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.
Ito-san,
ADS8598S: Is it possible to connect AM62x and ADS8598S via SPI using DOUTA and DOUTB?
I'm not an ADSxxx device expert but according to the device datasheet this should be possible if you use the "serial interface mode". The AM62x would need to operate in SPI master mode it seems, connecting to the CLK, CS, and DOUTA lines. Doing so would give you 4 channels. If you need all 8 channels it looks like this could be done by usinging a second AM62x SPI peripheral module, but operating that one in SPI slave mode (not master), connected to DOUTB. And use the same CLK signal from the SPI master mode peripheral to keep in sync.
I'm not aware of sample code for this but I can see if I can find somebody in that team to talk to.
What are your exact ADC requirements? Perhaps we can also look at other ADCs that might work for your system-level requirements.
Also, are you planning to use Linux SDK for this? or MCU+ SDK (bare metal / RTOS)?
Regards, Andreas
Ito-san,
Since a ReceiveOnly connection seems impossible, are the following two patterns correct?
Yes this won't work, D0 and D1 of the same SPI peripheral can't both be operated in input mode at the same time.
But what you could do is to first switch D0 to input to read channels 1-4, and then later switch D1 to input to read channels 5-8. If you want to do that you can tell the SPI peripheral whether to use D0 or D1 as an input signal through the 'IS' control bit. And just keep both transmit enable bits for both data lines (DPE0, DPE1) set to 0 to avoid any signal contention.
・When using 2ch SPI
Yes this is what I was thinking should work to access all channels with a single transaction in the most efficient/fastest manner. The best is you create a prototype to test and experiment with this
・Communication time will be longer, but use either DOUTA or DOUTB.
I think as per ADS8598 datasheet DOUTA is tied to specific ADC channels (1-4), and so is DOUTB (channels 5-8). So it is not about longer communication time, but being limited to accessing specific channels, depending on whether you connect DOUTA or DOUTB.
Regards, Andreas