Post Go back to editing

AD7731 via Arduino SPI

We're using an Arduino to control an AD7731.  We think the SPI interface is working in that we can 1) trigger a reset by writing four 0xFF bytes and see the RESET pin go low via our logic analyzer and 2) After the reset, we read the Mode register and get back 0x174 as per the data sheet.  Our problem is that when we try to do a continuous conversion read operation, fully differential, AIN1(+) and AIN2(-), 0 - 1.28 V, Mode bytes as follows (MSB first)   00110001  01110100, we can't ever get the RDY pin to go low.  Is there a way to check the operation of the chip so see if conversions are being made and put in the data register at all?  I don't think we fried the chip, but we don't have a way to check.  Also, we are using the AD780 2.5V reference.  We could send you code if that would help.

Thanks,

George

Parents
  • Hi George,

    Firstly, check your code against the "Pseudo-Code for Looping AD7731 Through Three Fully-Differential Channels", on page 36 of the AD7731 datasheet rev A.

    Confirm the mode register is programmed correctly by reading the register contents back. In Continuous Conversion Mode, the AD7731 is continuously processing data and providing conversion results to the Data Register at the programmed output update rate (as determined by the Filter Register).

     

    Kind Regards, Brendan.


Reply
  • Hi George,

    Firstly, check your code against the "Pseudo-Code for Looping AD7731 Through Three Fully-Differential Channels", on page 36 of the AD7731 datasheet rev A.

    Confirm the mode register is programmed correctly by reading the register contents back. In Continuous Conversion Mode, the AD7731 is continuously processing data and providing conversion results to the Data Register at the programmed output update rate (as determined by the Filter Register).

     

    Kind Regards, Brendan.


Children
No Data