Post Go back to editing

Reading out data from daisy chained DAC's

Category: Hardware
Product Number: AD5689R

I have two AD5689R which are connected in Daisy Chain.

Let us describe as FIRST DAC and SECOND DAC in the chain.

I would like to read out the register data from the FIRST DAC out of the SDO pin of the SECOND DAC.

What sequence of SPI data would result in success for me?

Just as a background, I know that I can successfully read out the register data from the SECOND DAC with no difficulty.

I have tried many variations of SPI code sequence to read out register data from the FIRST DAC without success.

Thank you very much.

Parents
  • Hi  ,
    Thanks for reaching out to us.
    The datasheet provides information in the "Readback Operation" section, as well as both the Daisy-Chain Timing Diagram and Readback Timing Diagram.
    Can you share some of the SPI code sequences you tried so we can have more information to assist you? 

    Regards,
    Flynn

  • Hi Flynn,

      Thank you for your prompt response to my query.

      I managed to solve my issue this morning.

      The SPI code sequences which work successfully are as follows:

    0x80 0x00 0x00 0x80 0x00 0x01    { This sets up DCEN }

    0x80 0x00 0x00 0x80 0x00 0x01    { This sets up DCEN }

    0x00 0x00 0x00 0x38 0x02 0x0C   { This sends the test 16b setting code (0x020C) to the FIRST DAC CH.B }

    0x80 0x00 0x01 0x98 0x98 0x00   { Request readback from FIRST DAC CH.B register }

    0x00 0x00 0x00 0xF0 0x00 0x00   { Flush the readback out of the FIRST DAC and through the SECOND DAC to the SDO of the second DAC. }

    I hope this is useful to other people trying to implement this function.

Reply
  • Hi Flynn,

      Thank you for your prompt response to my query.

      I managed to solve my issue this morning.

      The SPI code sequences which work successfully are as follows:

    0x80 0x00 0x00 0x80 0x00 0x01    { This sets up DCEN }

    0x80 0x00 0x00 0x80 0x00 0x01    { This sets up DCEN }

    0x00 0x00 0x00 0x38 0x02 0x0C   { This sends the test 16b setting code (0x020C) to the FIRST DAC CH.B }

    0x80 0x00 0x01 0x98 0x98 0x00   { Request readback from FIRST DAC CH.B register }

    0x00 0x00 0x00 0xF0 0x00 0x00   { Flush the readback out of the FIRST DAC and through the SECOND DAC to the SDO of the second DAC. }

    I hope this is useful to other people trying to implement this function.

Children
More Content

Before You Switch


Switching languages will make ADI Explorer unavailable. Resume your session by switching back to English and reopening ADI Explorer.