Стандартная библиотека управления шаговыми моторами <AccelStepper.h>.
AccelStepper mystepper (mode, IN1, IN2, IN3, IN4); - создание объекта класса. mode=4 - полношаговый, mode=8 - полушаговый.
.setMaxSpeed (maxSpeed); - установка максимальной скорости.
.setAcceleration(acc); - установка ускорения в шагах в секунду
.moveTo (targetPosition); - переместиться в абсолютно указанное положение. Само движение запускается функцией run ().
.move (distance); - переместиться в относительно указанное положение. Значение distance может быть больше или меньше нуля.
.currentPosition (); - возвращает текущее абсолютное положение.
.distanceToGo (); - расстояние до указанного положения. Может использоваться для проверки, достиг ли моторчик указанной конечной точки.
.run (); - начать движение. Для продолжения движения двигателя следует вызывать функцию повторно.
.runToPosition (); - начать движение и подождать когда двигатель достигнет указанной точки.
.setSpeed (stepsPerSecond); - Установить скорость в шагах за секунду. Сам процесс запускается функцией runSpeed ().
.runSpeed (); - начать движение.