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.

DAC8750: DAC8750 crashes after a few cycles

Part Number: DAC8750

Dear e2e support,

I've got a problem with the DAC8750. We are evaluating the DAC8750-EVM. The Eval.-Board is connected with a STM32L452RE Eval.-Board.

The SPI connection works fine. Initialization, setting the output... everything is possible.

We work in the 4-20mA mode and simple output changes are working,

but if I want to change the output value every 100ms, the DAC crashes after 150-200 cycles and the output is 0.0. mA.

How can I solve this? The SPI connection fine I think.  Or is there a overflow?

The SPI init.


The commented out code works fine.

SPI Connection on oszilloscope


 

Thank you very much!

  • Hi Melissa,

    Does the output ever recover? Does any command work after the stop point? 

    It is difficult to say if this a hardware or software issue.  You can check between a good command and an ineffective command?

    Thanks,

    Paul

  • Hi,

    the output recovers after 350/400 cycles and crashes again after ~200 cycles.

    after that it crashes completely. I have to reset the ciruit manually by turning DVDD/AVDD off and on again.

    After the crashes I connected the DAC8750EVM with the test program.

    It looks like this:

    Setting any register isn't working.

    Thank you

  • So it seems like all communication is returning 0xFFFF.  You could confirm with a scope that the SDO line is held high, or that the SCLK line is held low.  Does clicking the Reset DAC8750 do anything?

    I think it is important to confirm if this is a software or hardware issue.  Once you are in the fault state, disconnect and reconnect the SM-USB-DIG from the EVM board.  While it is disconnected, power-cycle the EVM before reconnecting.  Does the software recover? 

    Are you using the CRC functions? 

    Do you have any read functions in your software? Can you try to read-back to the status register?

    Thanks,

    Paul

  • Hi,

    clicking the reset button in this error state is not working. It writes 0x01 in the reset register but doesn't change the other registers.

    If reconnecting the SM-USB-DIG with the EVM board & switching DVDD/AVDD off and on again, the software recovers most of the time (~75%).

    Sometimes I have to restart the board about 5 times until the error disappears and the board is ready to work with.

    If it's also of interest:

    Working code from the day before, which was working completely fine for hours, suddenly isn't working anymore. I didn't change anything but the DAC can't be initialised.  

    Does it look like a hardware fault?

    I mean it's working for hours but suddenly not.

    I'm not using the CRC functions. I can try it and show you the results.

    Also I'll read the status register and post those results.

    Thank you

  • I suspect this is a software issue.  You could try issuing a reset on the hardware while still using your code and see if the device recovers.  Really I think you need to confirm if the SPI data is valid at both points.

  • Hi,

    sorry for the late answer.

    the hardware recovers if I try to reset the DAC via the reset register. The data in the data register is valid.

    But after a few cycles it still crashes...

    I discovered it crashes if the output value is between 0x00AC (172) and 0x00BF (191).

    Also I revised my spi connection. It's now like the DAC wants it ;)

    Thank you very much.

  • Hi Melissa,

    Is there any other communication on this bus? For example, are there other devices you are writing to?  I wonder if we are somehow getting into the CRC mode.  If you enter the CRC mode, then I think it would look like the bus is locked if there is not a valid CRC byte.  

    This will be hard to confirm unless you can monitor the bus or you can actively implement the CRC mode and see if the issue goes away.  

  • Hi,

    there is no other communication on the SPI bus.

    I'll implement the CRC mode soon and let you know.

    Thanks

  • Hello,

    after switching to the final hardware it works without CRC.

    Thank you very much