Tool/software:
In our product we are using ADS1015 with 4 external multiplexer ICs, one for each of the converter's input. As you can see below in the screenshot, we have RC filters of 200R/10n between each external multiplexer and the ADC.
In the firmware we are using the ADC to measure from all the inputs as follows:
- Select an ADC channel
- Select the first channel of the external MUX that is connected to that ADC channel
- Initiate some single-shot conversions and then average their results
- Cycle through the rest of the external MUX channels
- Cycle through the rest of the ADC channels.
What I am trying to understand is how much time we need to wait to get accurate results. I am thinking mostly how much time between step 2 and step 3.
I understand from the ADC's datasheet, that the converter has single-cycle settling, so that means that once we initiate a conversion we get an accurate representation of the output already from the first conversion (after approximately 625 us + 25 us (for wakeup), if we are using the default output rate of 1600 SPS.
But we also have the modulator or sampling frequency. Does the time of 1/250 kHz need to be added to the above time?
We also have the external filters of course that contribute with tau = 2 us to the settling time. Assuming I want to wait 5 x tau = 10 us, does that mean that we should probably first wait this time after the external MUX channel is selected and then initiate a new conversion?
There is of course also the time needed to set the OS bit via the I2C command, which, assuming a 400 kHz bus, needs already 90 us, so perhaps there isn't really a need to wait for this 10 us?