Во внутреннем цикле автор 1000 раз в секунду куда-то через global variable передает данные о направлении вращения.Вот не пойму зачем читать по одной точке и издеваться над железом?
Плюс он упоминал, что по окончании цикла опроса должен знать угол поворота и точное время за которое этот угол достигнут. Но при неизменном времени цикла заранее известно (так как задано) за какое время будет достигнут угол поворота.
Плюс ему необходимо прервать цикл опроса в произвольный момент времени с точностью внутреннего цикла.
Если всего этого не нужно, тогда действительно. Т.е. если нет задачи максимально точного позиционирования и достаточно реакции 100 мс или 1 с.