"скорость вращения" - ну нафиг не надо при энкодере
Ну есть у человека энкодер, хули ему пропадать (энкодеру). (Ну или нет энкодера, но есть архисложная задача.)
Энкодер из вышесказанного выходит что инкрементный - т.е. повернули его на 2500 часть круга - он нам импульс.
(Если не так - сам автор виноват за постановку своего вопроса

т.е. об чём спрашивали то и получили)
Просит код, ну.... ежели хто дасть
А на пальцах:
Допустим в кругу будет 250 столбцов.
Объявляем массив с данными, данные байтовые, 250 байтов по одному на столбец.
Одна ячейка массива - 1 байт, данные об одном столбце из 7-ми светодиодов.
Задаём переменную S как байт - будем считать ей шаги энкодера.
Задаём переменную M как байт - будем считать элементы массива
s=0
m=0
Делаем внешнее прерыванине (например по возрастанию).
Начало цикла.
По внешнему прерыванию делаем
-------------------------
s=s+1
Проверяем:
.........Если s = 10 (отсчитали 10 шагов, а каждые 10 шагов энкодера в нашем кругу начинается новый столбец) то:
s=0
м=м+1
....если м=251 то м=1 (если достигли и вывели последний элемент массива (250), то выводить начинать с первого).
и передать на светодиоды данные из ячейки массива за номером м
........Конец Если (перврго)
------------------------------------------------
Вернутся в начало цикла.
Да, возможны варианты, но вот на этот алгоритм автор, я надеюсь, сможет написать свой код?
А потом можно дальше пообсуждать...
Удачи.