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.

ADS8319 can't perform multiple readings

Other Parts Discussed in Thread: ADS8319

Hi there,

I've recently done a design using the ADS8319 in 3-wire CS without busy indicator mode and am having troubles interfacing with it. My circuit looks like this:

IN+ connects to a buffer which is biased to 2V5. If I measure across C11 I see 2.5V, on REFIN and VA+ I see 5V and on VBD+ I see 3.3V. AGND and GND are connected via a 0 ohm resistor. +5V from a dedicated regulator is connected to +5VA via a ferrite and an additional 10uF capacitor to ground. I should also mention my 5V regulator is enabled via a pin to my microcontroller so the ADS8319 will receive 3V3 on VBD+ before it sees 5V at VA+, I wonder if that's a problem?

To read from the ADS8319 I'm using this code on my STM32L4 micro:

uint8_t adc_read(uint16_t* result) {
	uint8_t data[2];

	HAL_GPIO_WritePin(SPI2_CS_GPIO_Port, SPI2_CS_Pin, GPIO_PIN_SET);
	dwt_delay_us(2); // Delay at least 1600ns
	HAL_GPIO_WritePin(SPI2_CS_GPIO_Port, SPI2_CS_Pin, GPIO_PIN_RESET);

	if (HAL_SPI_Receive(&hspi2, data, 2, 100) != HAL_OK) {
		return 0;
	}

	*result = ((uint16_t)data[0] << 8) | data[1];

	return 1;
}

I have SPI configured in mode 0 and running at a slow speed of 312kb/s.

On the very first power of the system I seem to be able to correctly get a measurement from the ADS8319 however it doesn't appear to be a half scale reading of ~32768 but instead it's 48643.

In the below scope trace blue is CONVST, red is SCLK and green is SDO.

The second reading then looks like this:

SDO appears to be driven for the MSB of the result after CONVST goes low but then suddenly just starts discharging/floating and after that it drifts to zero volts and despite continually pulsing the CONVST and SCLK thereafter the SDO pin is never driven again. I am pulsing the clock 16 times and can see 16 falling edges so I'm unsure why the ADS8319 can't continue after the first result.

Any help would be greatly appreciated!

  • Hello Joshua,

    Welcome to the TI E2E community.

    Please measure the voltage on REFIN/VA+ pin with a scope during a conversion cycle.  You had mentioned using a ferrite for the REFIN and VA+ value.  In general, the REFIN is a switched capacitor input and requires a low impedance source.  I suggest adding at least 22uF, and replacing the ferrite with a 0ohm short.

    I suspect the REFIN pin is loading the voltage and it is dropping to around 3V on the first conversion, and then below 2V on the rest of the conversions, causing the ADS8319 analog to shut down.

    Regards,
    Keith Nicholas
    Precision ADC Applications

  • Hi Keith,

    Thanks for your help! I replaced the ferrite on the REFIN and VA+ with a 0 ohm resistor and added a 47uF capacitor on top of the 1uF decoupling cap (C6 in my schematic). Here's what it looks like now (the gold/brown trace is REFIN/VA+ combined power):

    I start the ADC conversion immediately on power on which doesn't work first go as VA+ is still ramping up, the second conversion appears to work while VA+ is around 4V and climbing. Finally it seems like it climbs to to 5V but peaks at over 5.5V which is the max this IC allows, I wonder if that's what's causing it to shut down?

    EDIT: Actually if I delay the first measurement by 10ms, giving the capacitors enough time to charge and then measure the first still succeeds but following measurements fail:

    Thanks,

    Joshua

  • Hi Joshua,

    You are running at such a low SCLK frequency that I do not think there are any timing or communications issues.  Exceeding the supply voltage for a short time should also not cause this behavior, as long as you do not exceed the ABS max spec of 7V.  

    However, if the power supply voltage does not ramp monitonically, this could cause the power-on reset inside the ADS8319 to work incorrectly.  I would definitely take a closer look at your 5V supply and try to clean this up.

    Also, you mentioned that the input is set to 2.5V.  If this voltage is generated from the 5V supply, then you are fine.  However, if this 2.5V is sourced from a different supply and is present before the 5V supply turns on, this could cause the ADC to latch-up and not work at all.

    ABS MAX SPEC:
    +In Pin Voltage: -0.3V to Va+0.3V will be exceeded if the input voltage is at 2.5V and the 5V supply is off.

    Also, you mentioned the use of 2 grounds.  Depending on your layout, this could also be the problem.  I just noticed that the VA and REFIN bypass cap is connected to a different ground from the ADC ground.  This bypass cap needs to be connected directly across the supply pins (VA, GND) for proper operation.

    Regards,
    Keith