Кто-нибудь работал с этой штукой? https://www.sparkfun.com/products/10267 А то у меня что-то не то получается. Есть этот самый EasyDriver. Есть шаговый двигатель Шаг: 0,9°±5% (400 на оборот) Вроде все работает, но с шагами как-то непонятно. Делаю 200 шагов (подаю 200 раз на пин драйвера Step импульс длительностью не менее 1 мкс). Если я правильно понимаю, у меня должно повернуться на угол 180 градусов. А оно всего лишь градусов на 23 поворачивается.
Есть гипотеза с незадействованными пинами (регулируют режим - полный шаг-1/2-1/4-1/8). Но если теоретически смотреть, тоже градусы поворота с шагами как-то не сходятся
После более вдумчивого чтения описания к драйверу и более точных подсчетов немного становится понятно. По умолчанию (не подключенные MS1 и MS2) оно работает как 1/8 шага, т.е. на шаг надо 8 импульсов на Step. И угол поворота при этом все-таки сходится с теоретически ожидаемым. Если подключить MS1 и MS2, то манипулирование значением MS1 работает ожидаемо. И можно получить 1/8 или 1/4 шага. А вот MS2 может нормально принимать только HIGH, в противном случае имеем лишь писк ШД и никакого движения. Вроде все проверил, все правильно припаяно и подключено. Что тут еще может быть не так? Что может приводить к такому странному функционированию?
И все-таки она вертится. Дело оказалось в задержках между импульсами и длительности импульсов на пине Step. Для full step и 1/2 длительность импульсов и интервалы между ними должны быть не менее 400 мкс, в то время, как в примерах использования и описании использовались 100 мкс.