#4701
theremino
Keymaster

Чао,
энкодеры работают так, как вы написали, то есть прямоугольная волна плюс еще одна сдвинутая по фазе на 90 °.

Внутри Мастера есть сложный алгоритм, который считает, понимает направление и устраняет множество ошибок.
Например, два сигнала не могут изменяться вместе, если они это сделают, это будет признано ошибкой и исправлено.

Вот общее объяснение кодировщиков:
https://www.phidgets.com/docs/Encoder_Primer

Вот теория метода (с таблицей состояний), что мы используем для исправления ошибок:
https://www.edn.com/design/integrated-circuit-design/4363949/Decode-a-quadrature-encoder-in-software

Подробности можно найти в основной прошивке, которую можно скачать отсюда.:
https://www.theremino.com/technical/schematics#masterv5