Можно сделать по принципу r2r DAC-ов, только на вход подавать не постоянное напряжение, а буферированный сигнал. На аналоговые ключи - код уровня сигнала хоть с регистра, хоть с контроллера, на выходе получим ступенчато регулируемый сигнал. Достоинство: чтобы равномерно квантовать уровень входного сигнала, не нужно серьезных расчетов делителей, достаточно с нужной точностью подобрать резисторы R и 2R. Или поставить "что есть" . Выбор ключей зависит от необходимой точности регулирования. Для 502-х значений нужно 9 ключей =512 уровней, лишнее не использовать.