Джойстик вместо кнопок

Нет ответов
vvadim
Offline
Зарегистрирован: 23.05.2012

Шаговый двигатель управляется кнопками (библиотека AccelStepper). Скорость и ускорение регулируются и всё работает отлично.

void loop()
{ 
  if(ButtonLeftState == HIGH )
  {
    stepper.setSpeed(SPEED);
    stepper.setAcceleration(ACCEL);
    stepper.move(64000L);
  }
  else if(ButtonRightState == HIGH )
  {
    stepper.setSpeed(SPEED);
    stepper.setAcceleration(ACCEL);
    stepper.move(-64000L);
  }
  else if(ButtonStopState == HIGH )
  {
    stepper.stop();
  }
  stepper.run();
}

 

Для удобства нужно заменить кнопки джойстиком

 void loop()
{ 
  if (joyVal > 600)
  {
    stepper.setSpeed(SPEED);
    stepper.setAcceleration(ACCEL);
    stepper.move(64000L);
  }
  else if(joyVal < 400)
  {
    stepper.setSpeed(SPEED);
    stepper.setAcceleration(ACCEL);
    stepper.move(-64000L);
  }
  else if(joyVal <=600 && joyVal >= 400)
  {
    stepper.stop();
  }
  stepper.run();
}

 

Ускорение не работает. В моём примере отклонение джойстика получается как постоянное удержание кнопки - может в этом причина? Как решить эту проблему?