SLASF60 april 2023 DAC53204-Q1 , DAC63204-Q1
PRODUCTION DATA
The DACx3204‑Q1 feature a Hi-Z power-down mode that is set at power-up by default, unless the device is programmed otherwise using the NVM. When the DAC output is at Hi-Z, the current through R3 is zero and the DC/DC converter is set at the nominal output voltage of 45 V. To have the same nominal condition when the DAC powers up, bring up the device at the same output voltage (1.2 V) as the DC/DC converter feedback pin (FB). This configuration makes sure there is no current through R3 even at power up. Calculate R1 as (VOUT – VFB) / 100 µA = 438 kΩ.
To achieve ±10% margin-high and margin-low conditions, the DAC must sink or source additional current through R1. Calculate the current from the DAC (IMARGIN) using Equation 9:
With a nominal VOUT of 45 V, margin of ±10%, VFB of 1.2 V, INOMINAL of 100 μA, and R1 of 438 kΩ, Equation 9 becomes Equation 10:
To calculate the value of R3, first decide the DAC output range, and make sure to avoid the codes near zero-scale and full-scale for safe operation in the linear region. If 686 mV is chosen as the minimum output, the value for R3 is calculated by Equation 11:
Using the value of R3 the maximum DAC output is calculated to be 1.71 V.
When the DACx3204‑Q1 are set in the current-output mode, series resistor R3 is not required. Set the DAC output at the current-output range of –25 µA to +25 µA, and set the DAC code appropriately to achieve a margin current of ±10.7 µA.
The DACx3204‑Q1 have a slew-rate feature that is used to toggle between margin high, margin low, and nominal outputs with a defined slew rate. See Section 7.4.5.1.2 for the slew-rate setting details. This application example uses a SLEW_RATE of 4 µV/s and a CODE_STEP of 8 LSB to achieve a 1.17-ms slew time.
The pseudocode for this application example is as follows:
//SYNTAX: WRITE <REGISTER NAME (Hex code)>, <MSB DATA>, <LSB DATA>
//Write DAC code for nominal output (repeat for all DAC channels)
//For a 1.8-V output range, the 12-bit hex code for 1.2 V is 0xAAB. With 16-bit left alignment,
this becomes 0xAAB0
WRITE DAC_DATA(0x19), 0xAA, 0xB0
//Set gain setting to 1.5x internal reference (1.8 V) (repeat for all channels)
WRITE DAC-0-VOUT-CMP-CONFIG(0x3), 0x08, 0x00
//Power-up voltage output on all channels and enable the internal reference
WRITE COMMON-CONFIG(0x1F),0x12, 0x49
//Configure GPI for Margin-High, Low trigger for all channels
WRITE GPIO-CONFIG(0x24), 0x01, 0xF5
//Set slew rate and code step (repeat for all channels)
//CODE_STEP: 8 LSB, SLEW_RATE: 4 µs/step
WRITE DAC-0-FUNC-CONFIG(0x06), 0x00, 0x51
//Write DAC margin high code (repeat for all channels)
//For a 1.8-V output range, the 12-bit hex code for 1.71 V is 0xF3C. With 16-bit left alignment,
this becomes 0xF3C0
WRITE DAC-0-MARGIN-HIGH(0x01), 0xF3, 0xC0
//Write DAC margin low code (repeat for all channels)
//For a 1.8-V output range, the 12-bit hex code for 686 mV is 0x61A. With 16-bit left alignment, this
becomes 0x61A0
WRITE DAC-0-MARGIN-LOW(0x02), 0x61, 0xA0
//Save settings to NVM
WRITE COMMON-TRIGGER(0x20), 0x00, 0x02