This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DAC8574: DAC8574 Acknowledgements

Part Number: DAC8574

Tool/software:

We use multiple DAC8574 on a bus as stated in the datasheet: "Address Support for up to Sixteen DAC8574s"

We use addresses lines on the chips A3, A2, A1 and A0

                            AA-AA
                             10 32
U10: Adres 1001100-01
U12: Adres 1001101-01
U16: Adres 1001110-01
U18: Adres 1001111-01

U11: Adres 1001100-10
U13: Adres 1001101-10
U15: Adres 1001110-10
U17: Adres 1001111-10

When all the chips were fitted, all analog outputs worked fine, before we had an accident "a shortcircuit" with the board somewhere.

We desoldered U12, U16, U18 so no chip fitted on those places.

In software we send address Byte, Control byte, Data MSB, Data LSB.

In the logic analyser output we still see ACKnowledgements on the chips that are not fitted.
Is this due to Chips U11, U13, U15 and U17 having the same Address byte?

Is this normal behavior of the DAC8574 ? It always gives an ACK after recieving the address byte correctly ?

Can we detect which chips are fitted in such a configuration or is something else wrong?

Kind regards

Marcel

  • Hi Marcel,

    This is actually expected behavior.  Due to the device have the same first two address bits (A1, A0), the device are not able to know if the two bits in the command byte (A3, A2) are valid, and must ACK the first byte only.  The device will not actually update the registers or DAC if the A3+A2 bits do match the command, so that is how we support 16 devices.

    For you to detect missing devices, I would recommend issuing a broadcast write to one of the DAC registers, then issue a readback for each device.  

    Thanks,

    Paul