int PinDir=8,PinStep=9;
int KeyIn=0,Direction=0,Speed= 0;
int dataIn;
void setup() {
Serial.begin(9600);
pinMode(PinDir,OUTPUT);
pinMode(PinStep,OUTPUT);
Serial.println(" ");
}
void loop() {
if(Serial.available()>0)KeyIn=Serial.read();
if(KeyIn=='0')Direction=0;
if(KeyIn=='+')Direction=1;
if(KeyIn=='-')Direction=2;
if((KeyIn=='+')||(KeyIn=='-')){
dataIn = Serial.parseInt();
}
if(dataIn>0){
Speed=100-constrain(dataIn,0,100);
Serial.println(Speed) ;
dataIn = 0;
}
if(Direction==1)digitalWrite(PinDir,HIGH);
else digitalWrite(PinDir,LOW);
if (Direction>0){
digitalWrite(PinStep,HIGH);
delay(10+Speed);
digitalWrite(PinStep,LOW);
delay(10+Speed);
}
}