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.

unstable performance of ADS7842

Other Parts Discussed in Thread: ADS7842

Hi,

We are trying to use ADS7842 on a embedded force sensing system. We have 14 analog signals going into 2 channels of the ADC controlled by external 8-1 MUXs. In our program, we set the MUX first, then set the ADC WR, CS and input select bits to do the conversion. 

In our test, we send in 0 voltage expecting to see digital conversion results of 0. When we step through each signal we can see the result pretty well. However, if we run the program with all 14 signals in a loop, we get random high conversion results. We are not sure if we are missing anything in set up or anyone has had similar problems.

We provide our ADC a 2MHz clock from MSP430 and use a timer to initial each conversion from the overall program.

Please let us know if you have any suggestions. Thank you so much!

 

Henry

  • Hi Henry,

    Can you provide a little more detail on what you mean by 'random high' conversion results from the ADS7842?  Do you mean that the conversion result is higher than expected or does it appear to be more of a channel swap?  What sort of drive circuit do you have ahead of the MUX or between the MUX and ADC input?  Could you possibly share the schematic around the ADC with us? 

  • Hi,

    We sent in 0 voltage to all channels and we expect to see 0 as converted results, however it gave us values such as 0xFCF and 0xD6E as conversion results if we run it at the speed we want. We don't have this problem if we step through slowly and the conversion results actually increases as we increase the sampling speed of ADC. 

    The MUX gets analog voltages from voltage dividing circuit with a load resistor and resistive force sensors. The voltages range from 0 to approximately 3V and the reference voltage of ADC is 3.3V.

    Here is a screen shot of the schematic around the ADC:

    Thank you so much!!!

     

    Henry

  • Hi Henry,

    Perhaps you've tried this but I would recommend providing a voltage to only one channel and sampling that channel to make sure you have both the internal and external MUXs set correctly. Also, have you looked at the input pins, supply pin, or reference pin voltages on a scope? It is good to check and make sure the supply and reference voltage look clean and to see if the ADC input is indeed seeing the voltage your expecting.

    I have some questions regarding your test setup to make sure I understand what your doing and the results you are seeing:

    • When you sample all the input channels and step up your clock (sampling) frequency are all the inputs grounded to the same net as DGND and AGND?
    • At what clock frequency do you starting having this problem and how consistent are the conversion results? Have you tried sampling one channel over and over and seeing if the results stay the same or change each time you run a conversion? It sounds like you change channels after each conversion in your test routine.

    One thing I'd be concerned about is the ability of the voltage divider and resistive force sensors to drive the ADC. The ADC has an internal sampling capacitor that takes time to charge up (perhaps why you see correct results with slower clock speeds). Often an op-amp buffer is used with a RC circuit to help charge the ADC sampling capacitor. The RC circuit is configured to isolate the op-amp output from the capacitive load with the resistor, and the capacitor will share its charge with the ADC as seen in the picture below:

    Using this buffer in a gain configuration can also allow you to convert the range of your sensor output voltage to the full-scale range of the ADC. It sounds like your using your resistor divider network to allow the input voltage range to span from 0 to 3V, which is fairly close to the full-scale range of 3.3V.

    Best Regards,
    Chris

  •  

    Henry,

    Here is another possible issue that is easy to over look. The channel select for the ADS7842 selects the channel for the next conversion. This is noted in figures 2 and 3 but really ought to be mentioned in the text of the datasheet.

    Therefore, if you cycle through the channels in this order: 1 2 3 4, you will be initiating the conversion of channel 1 when you latch in the address for channel 2. The next conversion cycle you will latch in channel 3 but will get the results from channel 2, and so on. The very first conversion cycle you can discard as it is unknown which channel the device is reading.

    Please let me know if this helps!

    Best regards,
    Chris