I'm trying to interface with an ADS7128 from an embedded Linux controller via I2C. The ADS7128 is to read values from 8 analogue potentiometers.
Ideally, I'd like for the ADS chip to operate in the autonomous mode where I can poll any conversion results in the LAST_VALUE_CHx registers whilst it continually steps through each channel doing conversions in sequence.
So far I've followed the configuration in figure 33 of the datasheet, but excluded the steps related to alert conditions as I'd like it to continue the sequence indefinitely.
With this configuration, the sequence seems to start (i.e. reading the SYSTEM_STATUS register indicates that the sequence is running) but the statistics registers (LAST_VALUE_CHx, MIN_VALUE_CHx, MAX_VALUE_CHx) do not get updated, even thought I have set the STATS_EN bit in the general config register as mentioned in the optional step of figure 33.
So my main questions are:
- Is it mandatory to have an alert condition set up for autonomous mode to work on this chip?
- Have I missed anything in the configuration that would either mean the sequence doesn't start properly or the registers don't get updated with the latest conversions?
Thanks for any help you can provide,