Немного программизма (причём, на удивление, очень простого) и вот уже оба энкодера работают. Но не без странностей. Во-первых, китайский оптический энкодер, обозначенный как "600 импульсов на оборот" на самом деле выдаёт 1200 импульсов на оборот. Это не очень приниципально, т.к. железному таймеру нет разницы, сколько там импульсов, а программно я могу делить и умножать это число на сколько мне нужно. Но всё равно не очень понятно - это ошибка у меня или ускоглазые не тот лейбл приклеили? Во-вторых, механический энкодер хорошо работает в одну сторону (счётчик инкрементируется на каждый "щелчок") и отвратительнейше в обратную (словно пропускает импульсы или иногда даже считает в обратную сторону). Вероятно, причина в том, что выход этого энкодера не "классически квадратурный" - если восходящие фронты в самом деле сдвинуты относительно друг друга (или А впереди Б, или Б впереди А, в зависимости от направления вращения), то спадающие приходят почти одновременно. Да ещё и дребезг. Вроде и RC-фильтр, и внутри контролера антидребезг включен, а всё равно глючит. Upd А вот с другим (что за модель - не знаю, купил их на ebay сразу кучу) механическим энкодером заработало как надо. ALPS идёт в помойку.