Блок управления шаговым двигателем по 4-м проводам (драйвер L298N и аналогичные). Не останавливает выполнение программы. Используется прерывание по таймеру1, поэтому не будет корректно работать ШИМ на выводах 9 и 10. Есть возможность работы в двух режимах: шаговый и полушаговый. Есть возможность удержания ротора при отсутствии движения (тормоз).
Работает таким образом: на входе steps задаётся количество шагов на которое необходимо выполнить вращение, на входе interval задаётся время в мс, через которое выполняются шаги. Для начала вращения на вход start подать короткий импульс (через Rtrigger) - будет произведено вращение на заданное количество шагов. Для постоянного вращения на вход start подавать единицу непрерывно. Для досрочной остановки на вход stop подать короткий импульс (через Rtrigger) - двигатель будет остановлен, счётчик шагов сброшен. После отработки заданного числа шагов на выходе end будет единица.
Параметры пользователя:
In1, 2, 3, 4 - номера пинов для соответствующих входов драйвера.
brake - удержание (тормоз) вкл/выкл.
mode - режим работы: 0 - шаговый; 1 - полушаговый.
Входы:
start - начать вращение (через Rtrigger).
stop - остановить вращение (через Rtrigger).
steps - задание на количество шагов.
interval - интервал между шагами, мс.
Выходы:
down - остаток шагов.
up - пройдено шагов.
end - вращение завершено (шаги закончились).
Библиотеки включены в блок, также есть отдельно в архиве.