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.

ADS8320 data acquisition error

Other Parts Discussed in Thread: ADS8320, OPA320, MUX36S08, OPA365

Hi,

I am using ADS8320 in an application to monitor temperature and voltage. An 8 channel analog multiplexer is used to switch 6 temperature sensor voltage and 2 channels to measure 3.3V (V1 and V2). The sequence of reading is,  firstly read channel 0 to channel 5 of thermistor which is of 360mV and then  V1 and V2. This cycle repeats. So every time after reading the V2 and then reading the Channel 0, there is around 35 adc count difference. All other reading values are proper.

After enable the multiplexer there is enough delay (200 uS) provided before enabling the chip select of ADC.ADC is working at the full speed.Looks like after reading the high voltage (3.3V) and then read the other signal the issue is occurring.Please provide some insight on this.

ADC read value: 48570, 48550, 5324, 5288, 5289, 5288,5288, 5288, 48561, 48537, 5325, 5288, 5289, 5288, 5288, 5288.....

Thanks,

Akhil

  • Hi Akhil,

    I apologize for the late response to your post. Could you provide a schematic including the front-end and reference circuit? the scope shot for DCLOCK/DOUT and /CS/SHDN signals is also very useful for us to address this issue. Thanks.

    Best regards

    Dale Li

  • Hi Dale,

    Please find the schematic and waveform attached. Let me know your thoughts on those and let me know if further details required.

    Thanks,

    AkhilFront end schematic.pdfTI_support.docx

  • Hi Akhil,
    Thanks for your information. Did you find any problem on output code when the ADC input is switching from 360mV to 3.3V (Channel 5 to V1 on Channel 6)? Where are your 6 temperature sensor voltages coming from? THERMISTER_0, THERMISTER_10...?
    By the way, I can't see V1 and V2 signals in the schedmatic. Thanks.

    Best regards
    Dale Li
  • Hi Dale,

    There is no problem on output code while switching from 360mV to 3.3V.  Thermister voltages are THERMISTER_0, THERMISTER_10... There are actually 20 channels, i just gave you an example of 6. V1 is referred to VT_MAX_1 and V2 is VT_MAX_2, which is connected on the U32  in the schematic.

    In our experiment we activated U32 mux alone and switched between channels to make the testing simple. The ADC serial communication frequency also been reduced to 500Khz, We are still facing the same issue.

    Is this a limitation with the ADC, any internal discharge not taking place proper??

    Thanks,

    Akhil

  • Hi Akhil,
    No limitation with this ADC. What's the 183_ADC signal on channel 5 of U32? is it also 360mV DC signal? By the way, I guess the issue you mentioned happened after reading the V1(not V2) and then reading the Channel 0 because V1's next channel on U32 is Channel 0, please correct me if I'm wrong. Looks like it's a settling problem, I suggest to reduce the value of R50(e.g. ≤10ohm) and remove R252(0ohm) also remove the C149 for test purpose. Thanks.

    Best regards
    Dale Li
  • Hi Dale,
    The issue occurs whenever we read V1 or V2 first and read the thermistor (either channel 0/1/2/3/4). It doesn't matter V1 or V2 first, both cases we see problem when we read the 3.3V and then 360mV of any channel.
    183_ADC is not been used, it is 12.6mV. However if we read this channel before reading the thermistor then things are fine. Here looks like after reading 3.3V we need a ground potential read to remove the stray voltage. Initially i thought about the settling time issue, but as per the waveform which i shared you does not indicate any settling issue.
    I will test and let you know the results as per your suggestion.

    Thanks,
    Akhil
  • Hi Dale,

    I completed the testing as per the suggestions you provided in the last post.Unlucky the results remain same.
    I also removed the switching power supply on the board and provided with external supply. No change in the result.
  • Hi Akhil,

    I went through your whole posts and checked the schematic again,also had a discussion with peers, the code difference is found not only when switching from high voltage to low voltage signal(5288-5325=37 codes, 5288-5324=36 codes), but also when switching from low voltage to high voltage signal as well and just the difference is small about 10 codes. We think the issue should be caused by the multiplexer because it happened when switching the different channels. Can you remove FB19 and disconnect the connection for REF_OUT also reduce C34 and test again? Also recommend that you replace the OPA365 with the OPA320 which has an improved cap load drive capability. if no significant  improvement with the result, you will have to use another better multiplexer with low charge Injection, low input leakage and low on-capacitance, for example, MUX36S08. Thanks.

    Sorry for late response. 

    Best regards

    Dale Li

  • Hi Dale,

    Thanks you so much for the insight!

    Looks to me the issue is with charge injection of multiplexer, but to confirm that i need to test with a better multiplexer. The multiplexer in your example needs a min supply voltage of 10V on single supply. Can you suggest something for single supply voltage of 5V operated?

    Thanks,

    Akhil

  • Hi Akhil,

    The Multiplexers from our team are only high voltage devices,  the other team in TI they focus on low voltage Multiplexers, the following web links are the product website and support forums for low voltage Multiplexers:

    http://www.ti.com/lsds/ti/switches-multiplexers/analog-mux-demux-products.page#

    e2e.ti.com/support/logic/

    Thanks for your post.

    Best regards

    Dale Li