AnsweredAssumed Answered

How to verify correct operation of continuous-read on AD7124?

Question asked by npnewman on Jul 26, 2017
Latest reply on Aug 10, 2017 by JellenieR

I'm working with an AD7124-4 on an evaluation board hooked up to a Simblee microcontroller. I have been able to read valid conversions at pretty good rates using continuous-conversion mode but with how slow the Simblee is (16MHz clock) it seems like I need to use continuous-read mode to get to the 10ksps I need. However, after carefully following and validating operation such as that in Figure 84 of the datasheet, the ADC does not put out data on the clock line (see attached scope trace).

Legend: yellow = DIN, green = SCLK, blue = DOUT, red = CS.


My questions are: how do I verify the mode is continuous read without reading the control register (as I understand, writing a read command may disable continuous read mode)? Is the delay between RDY' going low and my clock pulses (~15us) too long? I think the smallest I can possibly make that delay is around 5us.


Furthermore, I'm trying to read conversions at 10ksps but with and FS value of 3 (1MHz external clock / 32 * 3 ~~ 10kHz) RDY' only goes low at 800Hz.  With an FS of 0 it's at 2.5kHz, and I've made sure it's running in full power mode. Does this have something to do with filter selection? Can I disable the digital filtering?


Attached also is my AD7124_regs.cpp file. (Control goes from 0x1C3 to 0x9C3 when I enable continuous read).