DAC8168: DAC8168 is suppose to be a replacement for AD5648BRUZ but it is not responding to FW commands?

Part Number: DAC8168

Tool/software:

We dropped in a DAC8168 to replacement the AD5648BRUZ but it is not responding to FW commands, Tried a reset, tried setting to mid level, but nothing has anyone tried replacing the AD part with the TI part?

  • Hi Lee,

    The device should be drop in replacement. Could you send us your schematic and the commands you are sending to initialize the device?

    Thanks,
    Erin

  • Hi Erin,

    We use two parts in the power board neither are working. attach is the schematic section with the D/As 

  • Hi Lee,

    Your schematic looks fine. What data signals are you sending to try to turn on the DACs? Could you potentially send us an oscilloscope screenshot as well so we can confirm the SPI communication looks good?

    Thanks,
    Erin

  • I will need to get the commands from the FW developer. but attached is a scope shot.

  • Hi Lee,

    Since you are using an external reference, try following this procedure:

    -Write 0x90C 0000 (This will disable the internal reference)
    -Write 0x3F [data] (This will write the data to all DACs).

    Let me know if you still don't see the DACs go high.

    Thanks,
    Erin

  • Hi Erin,

    The FW engineer reported that the code test had no effect on the TI part but did drive the output to max on the AD part. 

    This is the code used to drive the D/A converter 

    void AD5648_channel_set(uint8_t channel_index, uint16_t counts,

                uint8_t device) {

          if (counts >= MAX_COUNTS) {

                counts = MAX_COUNTS;

          }

          HVB_SPI_init(HV_AD5648_DEVICE);

     

          SPIBuff[0] = 3 & 0x0f;

          SPIBuff[1] = ((channel_index << 4) & 0xf0) | ((counts >> 10) & 0x0000000f);

          SPIBuff[2] = ((counts >> 2) & 0x000000ff);

          SPIBuff[3] = ((counts << 6) & 0x000000C0);

     

          WriteSPI(4, device); /* send this to the ad5648 */

     

          return;

    }

     

    The command bits are always 3 for write to and update the dac address.

    the next 4 bits are the channel to change, then the 14 data bits to set the output.

    Regards,

    Lee

  • Hi Lee, 

    Your logic levels look to be at 2V while VDD is 5V, which is accepted by the ADI device. We spec our VIH and VIL to 0.625xVDD to 0.3xVDD. Can you increase the SPI signals to at least 3.125V?

    Best,

    Katlynne Jones

  • Hi Katlynne,

    The SPI bus is drive from an FPGA on a different circuit board with a max level of 2.79V and as we have units in the field already it would be impossible to make changes to them as they are around the world. Thanks for the help.

    Regards

    Lee 

  • Hi Lee, 

    You may be able to achieve communication with 2.97V VIH if you would like to to try on this board you are debugging with to confirm that this is in fact the issue.

    If so, sorry that there is no way around it without making hardware changes. 

    Best,

    Katlynne Jones