Одновременное управление моторами
- Войдите на сайт для отправки комментариев
Пнд, 30/06/2014 - 02:06
Ребята, объясните если кто знает как реализовать одновременное управление шаговыми моторами. Суть в том, что пока вращается один мотор нужно запустить второй. У меня загвоздка в том, что пока первый мотор своё не отработает второй не включается.
Кусок кода:
void loop()
{
move_motor_1(way_to, spee);
move_motor_2(way_to, spee);
delay(5000);
}
//поворот мотора №1 на один шаг вперёд/назад
void move_motor_1(int way_to1, int spee1)
{
for(int i = 0; i<=350; i++) //350 шагов
{
digitalWrite(way1, way_to1); //направление туда/сюда
digitalWrite(motor1, HIGH);
digitalWrite(motor1, LOW);
delay(spee1);
}
}
Все дело в этом delay(spee1);
Почитайте, что-нибудь про конечные цифровые автоматы.
Пока написал с помощью простых математических действий, на большее ума не хватает :)
Мигаем светодиодом без delay()
leshak, спасибо! Отличный вариант!