I am trying to learn about a buck converter, and so far I think I have grasp the main idea of the basic topology


simulate this circuit – Schematic created using CircuitLab

From what I read and based from examples, the SW is driven with PWM signal from MCU, so the output is based on the signal duty cycle.

Now I am trying to reverse-engineering a power module using buck converter, I found out that the MCU does not provide any PWM signal, but using DAC features. Is it possible to create an adjustable buck regulator using DAC signal as control instead of PMW? If so, how does it work?

If there are missing point from this question, please ask and I will try to improve this question.

  • \$\begingroup\$ All the details are packed into the device called "SW". \$\endgroup\$ – Ignacio Vazquez-Abrams Dec 27 '16 at 6:33
  • 1
    \$\begingroup\$ You rarely ever use PWM from a micro controller to directly control the switch of a buck converter. It's too slow to respond. A buck controller IC monitors the output voltage and drives the switch in a feedback loop. Then you can use a DAC to feed current (+ or -) into the feedback loop to adjust the voltage. You can do this with ANY voltage regulator, not just a buck. I can give a more detailed answer when i have some more time if you are interested. \$\endgroup\$ – Vince Patron Dec 27 '16 at 7:04
  • \$\begingroup\$ @VincePatron wow sure thanks, I am very interested with your current explanation. Take your time, and happy holiday :) \$\endgroup\$ – dpw Dec 30 '16 at 1:02

Is it possible to create an adjustable buck regulator using DAC signal as control instead of PMW?

PWM is the fundamental mechanism inside a buck regulator that allows it to have such high power transfer efficiencies. If you wish to replace that mechanism with some form of linear voltage mechanism then, the regulator is no longer a buck regulator but more likely a linear regulator with lower power transfer efficiencies.

However, if you wish to use a DAC output to feed a circuit that converts the DAC output to PWM that is OK. Such a circuit exists i.e. an LTC6992: -

enter image description here

I am trying to learn about a buck converter, and so far I think I have grasp the main idea of the basic topology

The basic circuit that converts power you have probably grasped but you haven't acquired all the detail to make a decent buck regulator. So, whether you used an MCU IO pin or a DAC/LTC6992 to control the switch, you still need a feedback loop to stabilize the buck regulator as shown below: -

enter image description here

The trouble with simplified images you find on-line, is that they give you less than half of the picture - you need a switch (MOSFET), inductor and capacitor but you also need: -

  • Something to generate PWM
  • Something to drive the MOSFET
  • Something to measure the output voltage and compare it with a known reference
  • Something to convert this to PWM to feed to the MOSFET driver
  • \$\begingroup\$ Just as a note: DACs are sometimes used in margining applications (by pulling the FB point a little). linear.com/product/LTC2977 \$\endgroup\$ – Peter Smith Dec 27 '16 at 14:48
  • \$\begingroup\$ Thanks for the detailed explanation. In your circuit, is the DAC comes as Vref? \$\endgroup\$ – dpw Dec 30 '16 at 1:05
  • \$\begingroup\$ Yes, the ref input is the demand signal. \$\endgroup\$ – Andy aka Dec 30 '16 at 9:47

Here's a more detailed explanation of how you would normally use a DAC to control a voltage regulator. You mentioned you were interested.

The generic schematic that applies to any adjustable voltage regulator is below.


simulate this circuit – Schematic created using CircuitLab

Basically, the voltage regulator is a servo loop that tries to maintain \$V_{ref}\$ to match whatever its internal reference voltage is. That is, the VREG will raise its output voltage so that the "ref" node in the middle of the \$R_f + R_g + R_{dac}\$ divider = internal voltage reference. (Warning: some regulators are "upside down". More on this later.)

In this circuit, we are using the DAC to source or sink current into or out of the ref node.

You should also realize that this is an excellent application of a KCL equation, Kirchhoff's Current Law. All you need to know is:

  1. \$V_{ref} = 1 V\$ -- or whatever your VREG's internal reference is
  2. All currents into "ref" sum up to 0
  3. Ideally, current into "ADJ" pin of the VREG = 0

So, let's try a simple example. Let internal \$V_{ref}= 1V\$, \$R_g = 2k\Omega\$, \$R_f = 3k\Omega\$, \$R_{dac} = 4k\Omega\$

Let's say our DAC is putting out 0 Volts:

  • \$I_{Rg} = V_{ref} / R_g = 1V / 2k\Omega = 0.5 mA\$

  • \$I_{Rdac} = \frac{Vref - Vdac}{R_{dac}} = \frac{1V - 0V}{4k\Omega} = 0.25 mA\$ -- our DAC is pushing current into the ref node

  • \$I_{Rf} = sum of the two = I_{Rg} + I_{Rdac} = 0.75 mA\$

  • So \$V_{out} = V_{ref} + I_{Rf} R_f = 1V + 0.75mA \cdot 3k\Omega\$, or \$\mathbf{V_{out} = 3.25 V}\$

And let's try when our DAC is putting out 2 Volts:

  • \$I_{Rg} = \tfrac{V_{ref}}{R_g} = \tfrac{1 V}{2 k\Omega} = 0.5 mA\$

  • \$I_{Rdac} = \frac{V_{ref} - V_{dac}}{R_{dac}} = \frac{1V - 2V}{4k\Omega} = -0.25 mA\$ -- now the DAC is "pulling" current out of the "ref" node

  • \$I_{Rf} = \text{sum of the two} = I_{Rg} + I_{Rdac} = 0.25 mA\$

  • So \$V_{out} = V_{ref} + I_{Rf} R_f = 1V + 0.25mA \cdot 3k\Omega\$, or \$\mathbf{V_{out} = 1.75 V}\$

With that example, you can make a spreadsheet to do the calculations for you. There are several things to keep in mind:

  1. Ideal current into "ADJ" pin is 0, but reality is different. Check the datasheet and either account for this, or set the currents at ref high enough so I(adj) is insignificant. Note that ADJ bias current often shifts with temperature so it's good to do the latter.

  2. Most regulators regulate their ADJ pin relative to GND, but some regulators are "upside down" so read the datasheet. For example, the LM317 maintains 1.25V between Vout and Vadj. Simply adjust the formulas for this; the DAC control works the same way.

  3. You can get math results that show Vout < 0, or Vout > Vin. Obviously, this cannot happen. The math only works when the regulator is within its regulation range.

Anyway, I hope this helps give you and other folks a good understanding on a simple way to control a regulator using a DAC.

I see way too many engineers try to use a digital pot to control the feedback. Using a DAC is a much better way to do it: higher resolution, often cheaper, less parasitic issues, etc. Hope that helps! -Vince


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.