Рисуем граф
-0 Двунаправленные стрелки между вершинами:
0 0,-1 -1,-3 1,3 -3,-2 3,2 2,-0
-1 1 2 -2 Однонаправленные от -0 к -1 от 1 к 0
3 от 0 к 2 от -2 к -0.
-3 "шаг вперёд" переход от 0 к 2
"шаг назад" переход от -2 к -0
Вот и всё, счётчик работает в фазе 0->2 и 2->0, точнее, -0->2. Благодаря отрицательному нулю дребезг 020202 болтается между -0 и 2, не влияя на счётчик. Вращение вперёд происходит по "положительному" кругу 0231..., назад - по "отрицательному" 0132... Походите по графу, по-моему, не пропускает. Во всяком случае, на реальном железе я не вижу, а там на шаг (4 фазы) 10 см или один оборот колеса, крутили с пристрастием :)