We are using two AD7134 for our acquisition system. To synchronize multiple devices the AD7134 datasheet mentions " SPI to set the DIG_IF_RESET bit to reset the digital interface before the data capture This DIG_IF_RESET command must be given to all the slaves simultaneously using one single SPI write command."
We have set both the AD7134 devices in slave mode and they have independent oscillator for sysclk(MCLK). We program the registers of each device (setting soft reset/frame sel/data mode/other necessary register) independently and then we set dig_if_reset in both the adc by using a common cs signal. But we are unable to achieve synchronization between the ADC devices. The synchronization is varying for each execution.
Are we missing any sequence in the SPI programming. To cross verify we probed the spi signals of ad7134 evaluation board in cro. There we noticed that following registers are programmed.
register | Device 1 Val | Device 2 Val |
0x02 | 0xF3 | 0xF3 |
0x10 | 0x02 | 0x02 |
0x11 | 0x50 | 0x50 |
0x12 | 0x02 | 0x02 |
0x1F | 0x00 | 0x00 |
0x1e | 0xaa | 0xaa |
0x18 | 0x00 | not programmed |
0x17 | 0x5D | not programmed |
0x16 | 0xC0 | not programmed |
0x1B | 0x00 | not programmed |
0x1C | 0x00 | not programmed |
0x19 | 0x00 | not programmed |
0x1a | 0x00 | not programmed |
0x0F | 0x01 | not programmed |
The dig_if_reset is not at all programmed in the eval board. Request you to clarify on how to achieve synchronization across multiple devices.