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.

ADS8665: Programming issues

Part Number: ADS8665


Hello,

  I am working with an ADS8665, i design a PCB to sense a signal. The circuit is the following:

The problem is that the spi interface is not properly working, i don´t know what iam doing woring. This is my timing  for a read half word of the register ALARM_H_TH_REG, We saw erratic response in the F+1 frame. Also the reading of analog value is not well format. We are not doing any configuration after POR, so all the register are with the default values.

Please give any idea to solve the situation.

Thank you.

  • Andres,

    Can you send a scope shot of your timing? Include the time base so that we can confirm the timing. Also, what do you mean by “analog value is not well format”? Do you get analog conversion results that are close to what you would expect or are they completely wrong?

    Best regards,

    Art
  • Hello,

     Thank you for the response, something i did wrong because i attached the image...ok, this is the files with timing

  • Andres,

    Can you confirm your SPI Protocol (from Table 8)? I believe you are using “SPI-00-S” (data captured on rising edge, SCLK polarity low at CS falling edge). SPI-00-S is the default power up value. Assuming, this is the case I agree that you are reading “ALARM_H_TH_REG” in the second frame. Is your microcontroller in the proper SPI mode? Below is the decoding for your command and the command sequence.

    31

    30

    29

    28

     

    27

    26

    25

    24

     

    23

    22

    21

    20

     

    19

    18

    17

    16

     

    15

    14

    13

    12

     

    11

    10

    9

    8

     

    7

    6

    5

    4

     

    3

    2

    1

    0

    1

    1

    0

    0

     

    1

    0

    0

    0

     

    0

    0

    1

    0

     

    0

    1

    0

    0

     

    0

    0

    0

    0

     

    0

    0

    0

    0

     

    0

    0

    0

    0

     

    0

    0

    0

    0

     

     

     

     

     

     

    x

    x

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    11001_xx “Read Hword” (xx = 00)

    9 bit address 024H

    Read “ALARM_H_TH_REG”

     

    0000H

    The format for the results that is being read from the “ALARM_H_TH_REG” is given by Figure 84 in the data sheet. Based on this figure you are getting INP_ALRM_HYST[7:0] = 93H, AND NP_ALRM_HIGH_TH[15:0] = 0000H. Does this match what you are expecting? If you re-read this register, do you get different results? Did you write something into the register?

    Your waveforms look clear and clean. I don’t see any obvious problems. Can you capture the waveform where you write into the ALARM_H_TH_REG? I would like to see a write ALARM_H_TH_REG, followed by a read ALARM_H_TH_REG.  See below:

    Thanks,

    Art

  • Hi and thanks,

         Yes the protocol is the default after reset so it is “SPI-00-S” I expect the default value for the register FFFFh because i did not write nothing to the register. I will try to write something and then read the register as you propose.

    BR.

  • Hello,
    After several test i found a problem with the cables. I have the SPI lines twisted and this was introducing cross-talk in my MISO line, so i have now the cables untwisted and i have now working everything...

    Thank you so much for your support.

    BR