В данной статье расскажу об энкодерах и попытаюсь объяснить, как их подключать и обрабатывать правильным способом с помощью микроконтроллера AVR (в примерах я использую ATmega8A-PU, но это должно работать на любом другом микроконтроллере, например, на ATmega32 или совместимом с Arduino ATmega168/328).
Немного теории
Инкрементальные энкодеры имеют два выхода, назовем их A и B. Когда мы вращаем ручку, на выходах A и B мы получаем фазовый сдвиг квадратичного сигнала. Этот сигнал представляет собой ничто иное, как двухбитный код Грея. На изображении ниже я нарисовал это в более читабельном виде.