For many of the small projects Alex Iannuzzi works with on his bench, a dedicated programmable power supply would be a wonderful thing to have. He wanted something a little smaller and more elegant than a PC power supply, so he designed one that would fit his needs.
He set out with the goal of its having a digital display and a couple buttons to select pre-programmed voltages. Already having an LM2596 module sitting around, he thought he would maybe just use that with a 10-k digital potentiometer for adjustment. However, he quickly realized it wasn't going to work. The 10-k digital pot could only handle up to 5.5 volts, far short of the 12 he needed. While he could just order a beefier pot, he opted to go another route instead.
After some experimenting with using a resistor divider and feedback loop, he went back to the drawing board. Ultimately he found the solution in some documentation about LDO regulators and ended up using a pMOSFET with an op-amp. As you can see in the video below, it appears to have worked out fine.
Another issue he ran into was the LED character display. He was having a slight unwanted flicker. He realized that this was because he was just relying on the timing of the main loop, which had a few milliseconds of delay for each display cycle. A quick change to call the display function every two milliseconds solved the issue entirely.
You can read more details about it, his ideas test results, and future improvement ideas, and also download the code and schematic on Alex's project page.