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.

DAC8775EVM: SPI communication with microcontroller not working

Part Number: DAC8775EVM
Other Parts Discussed in Thread: DAC8775

I can't get an Output current when sending commands via a microctonroller (STM32H405 board by Olimex and a clock of around160kHz and a Level of 3,3V) to the DAC8775. The sequence of commands first selects the internal reference, then turns on the Buck/Boost for channel A, then writes the desired DAC value in Register 05 and then turns on the Output. The commands sent are as follows:

h02h00h01 //to turn on the internal reference
h06h00h01  h07h00h1F //to select Buck/Boost for channel A and to turn on both arms of the Buck/Boost converter
h03h00h20  h04h00h07 //to select current Output and to set it to  -24mA Output current
h03h00h20  h05hB5h71 //to set the Output to 10mA (the DAC value was measured)
h03h00h20  h04h10h07 //set the Output to  -24mA and turn on the Output

When sending the commands I get a reply via the SPI that I am measuring aswell. 
 
I have made sure to connect all Pins to their respective Levels. LDAC and clr are set to low. RESET is set high (5V) after powering up the device. I power up the device using a DC/DC converter that provides 15V (the voltage Level was checked and works with the SM-USB-DIG). I made sure that the SCLK and CS signals do not crosstalk (measured using a LeCroy - WaveSurfer 44MXs-B). 

I hope you can help me find the mistake I am making.
 

Best regards Arne

  • Hi Arne,

    The actual issue you are having is not clear in the post. Is the device not enabling the output/DCDC after you give the commands? What do you measure on the output of the device?

    The first command you have listed is not correct, the reference is bit 4, so I think your data should look like 0x020010.

    Next I would confirm that the SPI commands match the timing diagram in the datasheet (ensure the clk is on the correct phase, data is latched on the correct edge).

    Please feel free to post the scope captures of the SPI command.

    Thanks!
    Paul
  • Hi Paul,

    thank you for your fast reply.

    I have found my mistake. It was a mistake in my program. I have set the wrong bit in Regsiter 4.I have sent h04 h20 h07 but I should have sent h04 h10 h07. I have found it by not using hex nubers but binary numvbers instead and writing the Setup sequence again.

    Best regards

    Arne

  • Great to hear! Please click the 'This Resolved my issue' to help others in the future.
    Thanks!
    Paul