Цитата Сообщение от bgn62 Посмотреть сообщение
НА ДАННЫЙ МОМЕНТ СТАРЫЕ ДАННЫЕ ОТ ЭНКОДЕРА ТОЛЬКО МЕШАЮТ И ПРИХОДИТСЯ ВЫЕЖИВАТЬСЯ КАК МУХА НА СТЕКЛЕ, ЧТОБЫ ОТ НИХ НЕ ЗАВИСЕЛ СЛЕДУЮЩИЙ ЦИКЛ ПРОГРАММЫ
если такая несложная вещь вызывает у вас небходимость "выеживания" - вам рано заниматься реальным программированием.....

... вы так и не поняли, что сбрасывать вы будете ДРУГОЕ значение, совсем не соответствующее считанному значению энкодера...
Одно из правил программирования процедур прерываний - это либо запись в переменную, либо чтение из нее ... используя переменные для универсальной роли вы создаете почву для очень мудренных ошибок. Цикл контроллера - по сути прерывание таймера с периодом 1 мс, чтобы не было неожиданностей в программе, на время обработки прерывания запрещают все остальные.... в ПЛК это невозможно, значит либо читать либо писать

именно для того чтобы не объяснять каждому, почему это так, и делают ЭЛЕМЕНТАРНЫЕ модули максимально устойчивыми...

напишите ОДИН раз процедуру капсулирующую аппаратный счетчик овена в приемлемый для вас вид, с входом обнуления и прочими феньками и используйте его не вспоминая каждый раз почему так