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.

ADS1298: Daisy chain of 10 ADS without putting load on host CPU

Part Number: ADS1298

Hi Team,

Can you have a look at the following customer questions please?

I am currently doing a feasibility study with the ADS1298 and have a question about driving the ADS1298 in daisy chain mode.
My goal is to connect up to 10 ADS in series and read out the AD converter values with a sampling rate of 2KHz without CPU load of the host controller.
However, the chip has a peculiarity. Between the data of the different chips an "extra" SPI clock has to be sent on the SPI CLK pin.

My initial idea was that the concatenated ADS could be configured once and then all ADS chips could be read with a single SPI read transfer via DMA, without CPU load!
However, due to the "extra" clock, I don't see a solution for this.

Currently I see only the possibility that after reading out each ADS chip the SPI DMA mode is left, then programmatically (via GPIO) the clock is generated and then the next ADS chip is read in via DMA.
However, this means multiple interruptions of the CPU activities and a summed up time delay on the communication bus by the respective reconfiguration of the SPI_CLOCK signal between GPIO and SPI plus the programmatic control of the GPIO.

Do I see this correctly, or do you have an idea for a more efficient solution?
I use the STM32H743Zi as host controller.

Thank you,

Franz

  • Hi Franz,

    Thanks for the support.

    Currently I see only the possibility that after reading out each ADS chip the SPI DMA mode is left, then programmatically (via GPIO) the clock is generated and then the next ADS chip is read in via DMA.
    However, this means multiple interruptions of the CPU activities and a summed up time delay on the communication bus by the respective reconfiguration of the SPI_CLOCK signal between GPIO and SPI plus the programmatic control of the GPIO.

    Do I see this correctly, or do you have an idea for a more efficient solution?
    I use the STM32H743Zi as host controller.

    The scheme should work with the device if DMA is used. Unfortunately, I am not familiar with the STM uC, so I do not know any more efficient solution using software implementation.

    Thanks

    -TC