Hi everyone,
The ads1220 ADC by TI has 3 analog input lines, AIN0, AIN1, AIN2. I am using a micro-controller (I've established 4 wire SPI communication bw the controller and ADC) to read these three inputs alternately so that I can switch bw different input lines and send respective data to my app.
The TI datasheet for ADS1220 says that the registers have to be re-written (reconfigured) in order for the ADC to switch from AIN0 to AIN1. When I try doing this in run time when the ADC is in single-shot mode, my program does not work. I receive all highs as all my input data (i.e. in hex I receive "FFF..." on all channels which I think means that my ADC is not getting enough time to perform its conversions).
When I put my ADC in continuous conversion mode instead of single-shot mode, and then re-write my register settings in run time to switch bw different inputs, everything works fine.
My question is: Is there a way to re-write to the ADC registers and get data from multiple channels in one-shot mode? Because the continuous conversion mode uses a lot of power and this isn't the most power efficient way to run my application... If anyone who has used this ADC before knows another way I can switch from AIN0 to AIN1 or AIN2 during run time (other than re-writing to my CONFIG Registers) please do let me know.
Thank you.
The ads1220 ADC by TI has 3 analog input lines, AIN0, AIN1, AIN2. I am using a micro-controller (I've established 4 wire SPI communication bw the controller and ADC) to read these three inputs alternately so that I can switch bw different input lines and send respective data to my app.
The TI datasheet for ADS1220 says that the registers have to be re-written (reconfigured) in order for the ADC to switch from AIN0 to AIN1. When I try doing this in run time when the ADC is in single-shot mode, my program does not work. I receive all highs as all my input data (i.e. in hex I receive "FFF..." on all channels which I think means that my ADC is not getting enough time to perform its conversions).
When I put my ADC in continuous conversion mode instead of single-shot mode, and then re-write my register settings in run time to switch bw different inputs, everything works fine.
My question is: Is there a way to re-write to the ADC registers and get data from multiple channels in one-shot mode? Because the continuous conversion mode uses a lot of power and this isn't the most power efficient way to run my application... If anyone who has used this ADC before knows another way I can switch from AIN0 to AIN1 or AIN2 during run time (other than re-writing to my CONFIG Registers) please do let me know.
Thank you.