#include <AccelStepper.h>
#define LONG_MAX
2147483647 //maximum value for (signed) long int.
int accvalue=1000;
int speedvalue=9000;
int pot=A3;
// Define a stepper and the pins it will use
AccelStepper stepper; // Defaults to AccelStepper::FULL4WIRE (4 pins) on 2, 3, 4, 5
int sw=9;
int sw1=8;
int k;
int h;
int h_last; //last state of h
int k_last; //last state of k
void setup()
{
pinMode(sw, INPUT);
pinMode(sw1, INPUT);
stepper.setMaxSpeed(90000);
stepper.setAcceleration(15000);
h_last = digitalRead(sw);
k_last = digitalRead(sw1);
Serial.begin(9600);
}
void loop()
{
h=digitalRead(sw);
k=digitalRead(sw1);
stepper.setMaxSpeed(90000);
if (h != h_last)
{
h_last = h;
if(h == LOW)
{
stepper.moveTo(LONG_MAX / 2); //move in positive direction
digitalWrite(3,HIGH);
}
else
{
stepper.stop(); //stop the stepper
}
}
if (k != k_last)
{
k_last = k;
if(k == HIGH)
{
stepper.moveTo(-LONG_MAX / 2); //move in negative direction
digitalWrite(4,HIGH);
}
else
{
stepper.stop(); //stop the stepper
}
}
stepper.run();
}