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.

DAC8551: Communicating to DAC8551

Part Number: DAC8551

From reading the data sheet for the DAC8551, I should beable to enter a number from 0-65535 and the Vout should range from 0-5V (I have it connected to a 5V supply). When I write an integer (connected to the CLK and MOSI and D7 pins for chip select on a STM nucleo) I can range the voltage from 0-5V but the binary input value can only ranges from 0-4000. What may be causing this problem? Do I need to send an integer (65535) to the DAC8551 or characters in binary (0000 0000 1111 1111 1111 1111) no spaces? 

  • Hi Scott,

    The SPI frame should be 24 bits wide, as shown in figure 49:

    I am not familiar with the Nucleo, but most SPI interface DMAs have a 1 byte buffer, that is emptied once the byte is sent out the out.  So you will need to build a frame of 3 bytes: The first will be 0x00 if you are not using the power down bits, the second will the be MSB byte (bits 15-8), then the final will be the LSB byte (bits 7-0).