вот ..... http://images.yand …ass_d_1.jpg&rpt=simage
Принцип простой .... гоняете счётчик вверх-вниз, в моменты пересечения величины значения счётчика и цифровой величины - переключаете линию соответственно вверх или вниз.... На ST-шном (STM8Sxx STM32F10xx) контроллере делается на раз.... Там очень удобно... помимо очень продвинутой системы таймеров есть ещё и DMA.... делать воопще ничего не надо, программа заключается только в правильной настройке - куда пересылать (в память - регистр сравнивоемой величины используемого таймера) ..... и что пересылать (например данные АЦП или с интерфейса) ..... пересылать циклически бесконечно (настройка DMA). На пуске программы настроил и забыл... что программа ещё и музыку играет ... :)