Hello, I am writing a driver for the ADS122C04 and I have some interesting issues.
I first write and verify the contents of the four Configuration registers:
>> DET ADC INIT (ADDR: 80) Verify ERR_NONE, reg:40, 01 -> 01 Verify ERR_NONE, reg:41, B2-> B2 Verify ERR_NONE, reg:42, 20 -> 20 Verify ERR_NONE, reg:43, 00 -> 00
Then I read out ten samples in one-shot mode by monitoring the nDRDY pin with an interrupt to understand the maximum sample rate that can be had in one-shot with repeated sends of start commands.
3595 ADC SAMPLE DATA: 115A3A 3646 ADC SAMPLE DATA: C66D3A 3698 ADC SAMPLE DATA: 40693A 3749 ADC SAMPLE DATA: 4C713A 3801 ADC SAMPLE DATA: 1B5D3A 3852 ADC SAMPLE DATA: 6653A 3904 ADC SAMPLE DATA: BB623A 3955 ADC SAMPLE DATA: 99663A 4007 ADC SAMPLE DATA: 865C3A 4058 ADC SAMPLE DATA: 69683A
The first number is the current OS time in milliseconds, and the final hexidecimal codes are improperly formatted adc samples (not the issue at hand).
As you can see in the configs, I am setting register $01 ( $41 to write, and $21 to read) to value B2, which should be 1000 sps, normal mode, single shot, external ref, temp sensor disabled.
but for whatever reason my data-rate remains at ~20Hz which is the default rate (Sample Time delta ~ 50ms). I tried to download the eval kit gui software to review the configuration that TI used to configure the part, but the only thing contained within the download zip is the build results from code-composer and the makefiles.
So my questions are as follows:
1 - am I misunderstanding the configuration process?
2 - does anyone have any reference code for this part?
Thanks in advance