Other Parts Discussed in Thread: ADS1258
Tool/software:
Hi,
We are planning on using 2x ADS1258 on one SPI bus connected to a MCU host that has a DMA engine (SAMv71).
I'd like to transfer samples from the ADS1258s with as little CPU intervention as possible, so I'm looking for ways to transfer all channels' data in "one go", at 10kHz for example.
Reading through the datasheet, it seems like the DRDY line asserts low when new data is ready, and it only holds one samples' worth of data before it gets overwritten.
It sounds like the only intended way to get data off of the ADS1258 is to run an ISR on falling edge of DRDY to transfer one channel at a time, which at high speeds, sounds like a lot of CPU overhead (using DMA for one sample transfers is not worth the overhead).
Is it possible assert the START pin, wait for falling DRDY edge to initiate DMA transfer, and set the SPI clock speed at just the right frequency so that all channel data is valid, deassert START, then wait until the next desired sampling period?
Thanks,
-Greg