ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
18 апреля
1200841 Топик полностью
113 (18.04.2022 13:48, просмотров: 254) ответил Kceния на Пробовала - результат плохой, т.к. этот способ не может отличить настоящий "строб" от дребезга. Отсюда и неясность с тем, сколько реальных шагов сделал энкодер. В общем, не понравился мне этот метод - хочу другого (с периодическим опрашиванием).
Есть еще неплохой алгоритм по прерываниям с портов: 
signed char states[] = {0,-1,1,0, 1,0,0,-1, -1,0,0,1, 0,1,-1,0};//Encoder directions
ENC_AB = (ENC_A >> 1) | (ENC_B >> 2);
POSITION += states[((ENC_AB_LAST<<2) | ENC_AB)];
ENC_AB_LAST = ENC_AB;

но уменьшает разрешение в 2 раза.