Man könnte den LM317 schon irgendwie über eine Spannung von einem DAC steuern. Einfacher wäre da aber eine Transistor und ein OP-Amp dazu.

Bei Batteriebeteib sollte man auch über die Option Schaltregler nachdenken. Wenn man dem µC vertraut, könnte man auch den µC die Steuerung per PWM Singnal machen lassen. Das geht dann auch mit einer Art Schaltnetzteil. Man hat dabei allerdings die Gefahr bei einem Softwarefehler auch zu viel Strom durchzuschicken.