Part Number: ADS8686S
Tool/software:
Hi, I'm trying to make my own DSP (Digital Signal Processor) board, and I'm using the ADS8686S. I followed the power recommendations and layout example on the datasheet (pages 106-107). The following image has the connections I made on the PCB. I tried using 1 MHz, 500 kHz and 100 kHz of clock frequency, for the SPI communication. I intended to use the software mode.
I tried to read the register CONFIGURATION (ADDR: 0x02). The following image is the logic analyser print of the signals at 100 kHz of clock frequency, for the other frequencies tested, the response was identical.

One thing that I don't understand in the image above is when I'm sending the address, the bits change on the falling edge to be read on the rising edge. However, when the ADC sends the data, it changes the values on the rising edge. That makes the logic analyser show the values above, however my microcontroller (MCU) always reads 0x00FF. The datasheet says the reset value of this register is 0x0400.
In my code, I do a full reset of 20us and wait 30ms. After that, I start the communication. I wait 2us between putting CS to low and start the transmission.
Can anyone tell me what I'm doing wrong?
I already measured the voltage on the power pins and all the pins have the expected voltage. I'm using the SPI with no phase (CPHA=0) and no polarity (CPOL=0), however I already tried all the combinations possible and this configuration was the only one that got an answer from the ADC.



