This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Conversion results are not accurate while scanning across the input channels of ADS1262

Other Parts Discussed in Thread: ADS1262

Hello Team,

I have problem with conversion results are not accurate while scanning across the input channels of ADS1262 .

I am generating a PWM signal from microcontroller and feeding to start pin of ADS1262.  

PWM Signal Details :

Duty cycle : 60%       Period :  1083 micro seconds

T on   time  :    650.4  micro seconds     T off   time  :    432.6  micro seconds

During T 0ff time i am configuring  the ADC registers. During T on time (as START pin is High)ADC starts the conversion. I am reading the ADC data

through Mibspi interrupt (falling edge of DRDY pin)  

I have connected two poteniometers to the Channels 0 and 1.

channel 0   =  1.968 V   (multimeter reading )       AINCOM =  2.53 V

INPMUX  A0      means   2.53V - 1.968 =   0.562 V

channel 1   =  1.040 V   (multimeter reading )       AINCOM =  2.53 V

INPMUX  A0      means   2.53V - 1.968 =   1.49 V

ADC registers configuration is attached in the file.

What i was doing is,

In a for loop of 12,  i am reading  channels   A0  A0  A0 A1 A0 A0 A0 A0 A0 A0 A0 A0.   I am getting a output like this

ADC Measurement 0 0.556048
ADC Measurement 1 0 0.555752
ADC Measurement 2 0.555715
ADC Measurement 3 0.896518
ADC Measurement 4 0.795152
ADC Measurement 5 0.693782
ADC Measurement 6 0.637709
ADC Measurement 7 0.604710
ADC Measurement 8 0.584539
ADC Measurement 9 0.572369
ADC Measurement 10 0.565090
ADC Measurement 11 0.565090

  The ADC measurements from channel 3 are affected.  When i increase the programmable delay (by increasing the T off period  ) the outputs are  fine as below

New PWM Signal Details :

Duty cycle : 10%       Period :  13083 micro seconds

T on   time  :    1308.8  micro seconds     T off   time  :    11774.2  micro seconds  ( 12 ms)

ADC Measurement 0 0.557024
ADC Measurement 1 0.555677
ADC Measurement 2 0.555159
ADC Measurement 3 1.481006
ADC Measurement 4 0.560630
ADC Measurement 5 0.556082
ADC Measurement 6 0.555915
ADC Measurement 7 0.555258
ADC Measurement 8 0.556105
ADC Measurement 9 0.555247
ADC Measurement 10 0.555706
ADC Measurement 11 0.555706 

Can please suggest me (w.r.t 38400 SPS ) what is programmble delay required for chanel to channel selection?  and why this much 12 ms delay required for ADC settling

ADC register config.txt
void initMeasurementSequence(void)
{
	
	uint32 i;

				
				i = 0;

		//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		////////////////////////// measurement 0 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA0;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0

		////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

				setMeasurement(TempMeasCon, i);
				i = 1;
		//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		////////////////////////// measurement 1 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA0;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0
		////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				setMeasurement(TempMeasCon, i);
				i = 2;
		//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		////////////////////////// measurement 2 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA0;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0
		////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				setMeasurement(TempMeasCon, i);
				i = 3;
		//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
		////////////////////////// measurement 3 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA1;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0
		////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


				setMeasurement(TempMeasCon, i);
				i = 4;
		//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				////////////////////////// measurement 4 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA0;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0

				////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				setMeasurement(TempMeasCon, i);
				i = 5;
				//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				////////////////////////// measurement 5 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA0;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0
				////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				setMeasurement(TempMeasCon, i);
				i = 6;
				//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				////////////////////////// measurement 6 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA0;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0
				////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				setMeasurement(TempMeasCon, i);
				i = 7;
				//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				////////////////////////// measurement 7 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA0;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0
				////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

				setMeasurement(TempMeasCon, i);
				i = 8;
				//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
						////////////////////////// measurement 8 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA0;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0

						////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				setMeasurement(TempMeasCon, i);
				i = 9;
						//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
						////////////////////////// measurement 9 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA0;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0
						////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				setMeasurement(TempMeasCon, i);
				i = 10;

						//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
						////////////////////////// measurement 10 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA0;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0
						////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				setMeasurement(TempMeasCon, i);
				i = 11;
						//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
						////////////////////////// measurement 11 Definitions //////////////////////////////////////////////////////////////////////////////
				TempMeasCon.POWER = 0x03;				
				TempMeasCon.INTERFACE = 0x05;			
				TempMeasCon.MODE0 = 0x06;				
				TempMeasCon.MODE1 = 0x00;				
				TempMeasCon.MODE2 = 0x0F;				
				TempMeasCon.INPMUX = 0xA0;				
				TempMeasCon.OFCAL0 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.OFCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL2 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL1 = 0x00;				// DEFAULT CALIBRATION
				TempMeasCon.FSCAL0 = 0x40;				// DEFAULT CALIBRATION				
				TempMeasCon.IDACMUX = 0xBB;				// IDAC NOT CONNECTED
				TempMeasCon.IDACMAG = 0x00;				// IDAC OFF
				TempMeasCon.REFMUX = 0x00;				// REF = INTERNAL 2.5V
				TempMeasCon.TDACP = 0x00;				// TDACP NOT CONNECTED
				TempMeasCon.TDACN = 0x00;				// TDACN NOT CONNECTED
				TempMeasCon.GPIOCON = 0x00;				// ALL GPIO DISCONNECTED
				TempMeasCon.GPIODIR = 0x00;				// ALL GPIO OUTPUTS
				TempMeasCon.GPIODAT = 0x00;				// ALL GPIO = 0
						////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
				setMeasurement(TempMeasCon, i);
}
?

  • Hi Mallela,

    Welcome to the TI E2E Forums!

    The data you provided appears to have the shape of an RC settling response. This could be related to the external components connected to the ADS1262. Would you be able to provide a schematic of your ADS1262 circuit?

    Increasing the delay time by a factor of 10 would appear to allow for a sufficient number of RC time constants to allow for the voltage to settle. However, without having seen your circuit I'm not quite where you might have a charging capacitor that is affecting the conversion result. Have you tried probing your input signals with an oscilloscope to see if they are settled before beginning the ADC conversions?

     

    Best Regards,
    Chris 

  • Hello Chris,

    Thank you for your timely reply.

    Very Sorry for the delay in responding to your mail.

    Please find the attached schematic of ADC breakout which i am using for my development.

    Please review and let me know if I have to change any capacitance values.  Also Please provide your  feedback on ADC breakout schematic.

    Regards,

    Bharat

    pc_ads1262_breakout.pdf

  • Hi Bharat,

    I looked at your schematic and didn't see any issues there. I would just take care to ensure that the connection between AGND and DGND is low-impedance and physically short. Typically, we recommend connecting these grounds together directly, so as to avoid any issues where parasitic inductance could cause AGND and DGND to be at different voltage potentials.

    I didn't see any drawings of the external circuitry connected to the ADS1262. My best guess is that the external circuitry is still settling while you're measuring it with the ADS1262. Some things to look for would be:

    Are you collecting this data shortly after powering up your circuity?

    Do your input signals change over time or do you have any input signal switching that might require additional settling time?

    Do the external circuitry have any large capacitors (prior to the ADC inputs) that may require additional time to settle?

    Best Regards,
    Chris