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.

ADS8586S: Reading random values

Part Number: ADS8586S

hello,

i designed a test PCB with ads8586, i use onnly 2 channles ch-1 and ch-6, other channels are floating.

for some reason i get random values when trying to read the conversion,

sadly values do not change even whyen i inject GND ot PS voltage to the positive input terminals, and i even tries to short the negative and positive pins together

and it didnt effect. its like it does not sample its input kegs for some reason

i am attaching my schematics and layout and spi reading, hopefully someone can help me figure our whats is the problem

this reading happened even when teh N-P inputs are tied to together

  • OK,  so i i found my problem.

    i am trying to use oversampling with OS ratio 64. and it just returns some random voltage and, when i cancell it i.e removing the PU Resistors R19 and R21

    it finally measures the data correctly.

    someone knows what is the problem?, my code for reading is as follows (Arduino code):

    digitalWrite(convStartPin,LOW);
    delay(5);
    digitalWrite(convStartPin,HIGH);
    delay(1);
    // // Starting transaction
    digitalWrite(chipSelectPin,LOW);
    ch_one = SPI.transfer16(0xAD);
    ch_two = SPI.transfer16(0xAD);
    ch_three = SPI.transfer16(0xAD);
    ch_four = SPI.transfer16(0xAD);
    ch_five = SPI.transfer16(0xAD);
    ch_six = SPI.transfer16(0xAD);
    ch_one_array[i] = ch_one;
    ch_six_array[i] = ch_six;

    digitalWrite(chipSelectPin,HIGH);
    delay(1);
    i am pretty sure my timing are in par with the requirements
    BR

  • Hi sagy,

    I'm trying to understand the issue you have.

    • You got some random voltage on CH1 and CH6 when R19 and R21 were installed, even you connected GND or power supply to the AIN_1P or AIN_6P input.
    • You could get correct code and measure the input signal correctly when R19 and R21 were removed.

    Can you please confirm if my understanding is correct?

    What are other signals (yellow and red) in your timing? It will be great if you can provide a timing with SCLK, CONVST, BUSY and DOUT(MISO) signals. Also, what's your SPI configuration (phase and polarity)?

    Best regards,

    Dale

  • Hi,

     

    Yes you are right in both of your points.

     

    • When working with no oversampling the measurement is good
    • When working with OSR 64 we get garbage measurements no matter what the voltage on the line is.

     

    I don’t think there is a problem with the SPI mode as I can get accurate results in no OS mode.

     

    I do not measure the BUSY line I just use a delay that is greater in order of magnitude than the min delay required

    By the timing table in the datasheet (same for OSR 64 which requires longer delay period)

     

    in my last rely i added my code which i use for reading samples 

    BR.

  • Hi sagy,

    Thank you for your confirmation.

    The OSR definitely should work. How long are you waiting to read the data in OSR 64?  You can use an oscilloscope to check if the conversion data match the BUSY signal and your reading is proper to the ADC in a correct timing.

    Your REFSEL should be pulled up to DVDD(+3.3V) not AVDD(+5V).

    Also, you are using a same GND in the schematic, however it seems that you are splitting the ground, can you confirm it? 

    Best regards,

    Dale

  • hi,

     sorry for the long waiting, i had to finish some other testting of my pcb.

    for your questions:

    1. i am waiting for at least 5 ms as shown in the code i shared in previous message "delay(5);"

    i cannot really check the buisy line as i didnt route it out from the pcb and for now i can touch with a probe on the pin itself.

    never the less i am super positive i a m waiting more than enough for getting the reading the table shows about 600 us something like that.

    2. you are right about REFSEL i change it and it didnt make a difference

    3.i am splitting the ground yes indeed.

  • Hi sagy,

    5ms is long enough for OSR 64 sampling. It will be great to compare the timing plots (/BUSY,CONVST, SCLK and DOUT) with or without R19 and R21 if you can share them with me. A zoomed-in timing graph will be very helpful.

    Also, how are you connecting your different ground planes? where are you shorting them on your pcb board?

    Regards,

    Dale