I am using an AD7606-4 in serial mode (SPI) with an ARM microcontroller.
The wrong-doing symptom is that the SPI output signal (MISO) shows a 3-states signal (3.3V pp). That results in continuous 0xff data (I have checked the analog input signal on oscilloscope -> OK). Here is my setup (checked and rechecked a number of times and ... still missing something):
SPI clock is high in idle state - clock is 6MHz. On the hardware side pins 16 to 22 are connected to GND, as well as pins 27 to 32. Vdrive is 3.3V; AVCC 5V
The code follows these steps:
-switch on power on board and initialized spi
- setup ADC pins (not sure by the way if pullup from MCU should be set -> I have tried with/without it with no different results)
par/ser/byte sel to 1
STBY is set to 1
RANGE is 0
BYTE SEL is 0
REF Select is 1
- reset on the ADC (longer than 50ns)
- send 5000hz signal (PWM 50%) on Convst A&B connected together
- read data on falling edge of busy signal using spi-dma ...
I have checked the value of REGCAP, REFGND, REFIN / REFOUT, ... -> OK. REFCAPA and REFCAPB were first not linked together (but linked independently to GND through a capacitor): i have corrected the mistake (I hope it did not destroy the part). FIRSDATA is not used and was first floating and now it is connected to Vdrive with PULLUP (one suggestion from this forum).
Did I miss something? What could be the cause ? a timing issue ? Pullup/down resistors (tried the ADC input with/withoout MCU pullup) ?
Thank you very much for any suggestion !!!