Digitally adjustable precision reference driven via PWM

This simple circuit that converts a 5V PWM signal into a variable precision reference voltage with a rang of -2.5V to +2.5V. Many designs, like a digitally controlled power supply, programmable dummy load, etc, require a Digital to Analog Converter to supply a stable reference votlage. This circuit is cheaper and requires less pins from a microcontroller.
The circuit described here uses the ubiquitous LM431 shunt regulator to implement a second-order Sallen-Key low pass filter together with a level shifter (see the figure). Compared to the traditional approach, it provides a far sharper roll-off along with a low-impedance output, bipolar output. It will produce a –2.5- to +2.5-V output with a 0- to 5-V PWM signal input. The value of VOut is equal to (5 V × dc) – 2.5 V, where dc is the PWM duty from 0.0 to 1.0 (0% to 100%).
Thanks Adrian! Via Twitter.
This entry was posted in Processing, project logs and tagged circuit, PWM.

Comments
Hey,
stable reference votlage -> voltage
why does it require less pins then a DAC?
But yep its a great idea esp. if you have a uC without dedicated DAC… I might try it on a propeller from parallax.
What is the output voltage noise rating?
Just about what I needed! I’d recommend more reading (Wikipedia at least) to see what’s so special about this implementation.
Also, 499 ohms is uncommon. :)