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.

DAC8581 Questions

Other Parts Discussed in Thread: DAC8581

Datasheet - http://focus.ti.com/lit/ds/symlink/dac8581.pdf

I have a couple of questions for the DAC8581.

On page 9 of the datasheet, in the Supply Pin section, it says "+" and "-" 5 volts analog supply and 1.8-5.5 volts digital supply.  Here is my confusion.  I am currently working with a microcontroller so I have an understanding that an analog voltage is the actual voltage and the digital voltage is the digital representation of that voltage (i.e. 0000 = 0 volts, 1111 = 5 volts) in the microcontroller.  It wouldn't make sense for me to use another DAC to convert digital data back to analog, so would I be able to just connect the analog voltage to the digital supply pin?  Or does it need a TTL signal of 5 volts like from one of the output pins of the MCU?

Thank you for your replies,

David

  • David,

    The voltages mentioned are the power supplies to the DAC - three supplies required. +5V is used for analog, as is -5V. There is also a separate supply for the digital circuitry, which requires the 1.8V-5V supply. In mixed-signal systems, it's common to use separate supplies to power the analog circuitry and the digital. The digital supply generally picks up a lot of noise, and we wouldn't want that coupling into the analog.

    So, in order to use the DAC, you'd connect the digital supply to the same power supply voltage as your microcontroller - this makes sure that your digital logic levels are compatible. You would use a separate ±5V supply to power the analog power supplies.

  • Thank you for your reply, Mr. Downs.

    I have another minor question regarding the digital input to the DAC.  In using the SPI interface, the data is transmitted over the SDIN pin.  According to the datasheet, the data format is either binary or hex, but since integer values in a MCU are, in a way, a hex value stored in some memory, could I just give the DAC the integer value, like SPIDR = 32767, and it would know it is a 0x7FFF input or would I have to first convert the number 32767 to 0x7FFF first before feeding it to the DAC?

    Thanks again for your reply,

    David

  • David,

    It doesn't really matter, since what you send to the DAC is a serial stream of 1s and 0s - you don't send it decimal or hex, you send binary. So you put the number you want to send into the SPI transmit register of your MCU and let it send it out properly. How you deal with it in your code is up to you - whether it's decimal or hex. Here's a simplified example using an MSP430:

    void dac_convert (value)

    {

    byte0 = value >>8;

    byte1 = value >>0;

     

    while ((IFG1 & UTXIFG0) == 0);

          U0TXBUF = byte0;             // Send clocks to the DAC, this shifts 1st byte 

                              // Wait until all 8 bits have been received.

    while ((IFG1 & UTXIFG0) == 0);

          U0TXBUF = byte1 ;             // Send clocks to the DAC, this shifts 2nd byte 

                              // Wait until all 8 bits have been received.

    }

     

    The variable value passed into the routine is declared as an int. I can refer to this value in my code either in hex or as decimal numbers; for example I could write value = 0x8000 or value = 32768. In this example, byte0 becomes 0x80 or 128, and byte1 becomes 0x00 or 0. When I place the byte into the SPI transmit register (U0TXBUF), the SPI peripheral takes care of shifting the value out bit by bit: byte0 gets sent as 10000000 and byte1 as 00000000.

    Hope that clears things up.

     

  • My team and I really appreciate your fast responses, Mr. Downs.  We are nearing our final stages of our project.  The only problem is getting the DAC to work.  It seems that when we interfaced the DAC to our MCU, it fried the MCU's SPI ports.  We have double checked our pin connections following the specs on the datasheet making sure none of the wires were crossed.  We've made sure that the digital input pins were not on during the power up of the DAC.  We've also made sure that Vref was applied after AVdd and AVss.

    Now, there is one uncertainty on the supply pin section of the datasheet.  It said that a bypass capacitor of atleast 1 [uf] should be placed in between AVdd and AVss, AVss and DGND, and DVdd and DGND.  Normally we are used to seeing a bypass capacitor connected from a voltage source to ground.  The last two pairs made sense to us, but the first pair did not.  When we measured the voltage of the capacitor between AVdd and AVss, it measured 10 [V].  I do not know if this was the cause in the frying of our MCU but were we correct in assuming that we had to place a capacitor in between AVdd and AVss or were we supposed to connect each of those to AGND with the capacitor?

    Again, we are really thankful for your time and patience with us.  You have been of great help to us.

  • David,

    Well, the datasheet does say to put the bypassing from AVDD to AVSS, so that the bulk capacitance keeps the AVDD-AVSS voltage up  - ~10V should be just right . But you'd be OK having the bypass from AVDD to AGND and AVSS to AGND. Either way should be effective.

    I don't think the bypassing itself is likely to be the cause of you blowing up the MCU SPI ports. Are you sure you got the power set up right so you're not applying more than the MCU power supply to the port pins? If you have the DAC8581 DVDD tied to the MCU supply, then you should be OK.

  • How could I achieve the -5V power supply, I tried to use a DE7905 and -5V, 1A power supply, but I burnt the DE7905 in doing so, can I just simply connect AVSS to the ground and drive the entire module by microcontroller?

  • Hello Shaotong,

    Unfortunately, AVSS cannot be connected to ground. In the datasheet, it is specified that –VAVDD (or AVSS) should have a voltage between -4 and – 6 volts.

    About the 7905 -5V regulator, just make sure that the power supply input voltage is between -7 to -25V and that the input and output capacitors postive leads are connected to ground. This should make the regulator work fine.  

    Regards,

  • Thank you!

    One more thing, the datasheet tells me that I should apply AGND and DGND before I apply everything else, does that mean I have to power-up AGND and DGND first while connecting SCK, SDIN, and DVDD, Vref at zero, then shall I apply the rest power by connecting each pin or I just connect each pin following the datasheet and power everything up all together?

  • Hi Shaotong, 

    You just want to make sure that all your supplies are referenced to ground when you go to power up the DAC. Therefore, if you have the supplies and grounds properly routed to the DAC, you can power on the supplies all at once problem free. The comment is in the data sheet so that people do not apply power to the power pins and then connect the ground from the supplies to the ground of the DAC afterwards. 

    Regards,

    Tony Calabria

  • Thank you!

    But Im having trouble with chip overheating when I apply AGND and DGND 1st while powering-up, the AGND was connected to the middle pin(GND) of an regulated power supplier while DGND was connected to one of the PIC development board's GND, after turning on the the power supplys, the chip became very hot and I had to switch off the circuit, do you think it is possible that I might have damaged the chip? And how could this happen? A 10uF tantalum capacitor and 0.1 uF ceramic capacitor was connected between AVDD and AVSS; AVSS and DGND; and of course DGND and DVDD. And an AD580JH was applied as voltage reference, with a 500 Ohm resistor connected to the output. Rest of wiring seems to be corrected after triple check.