Problem of using stepper motor 17HS4401

I tried your program everything is fine,
this is my program to test stepper motors

if you still have problems try to remove your dir wire

int cwccw = HIGH; //set to HIGH or LOW for clockwise, counter clockwise
int stp = 3;  //connect pin 3 to step
int dir = 4;  // connect pin 4 to dir
int Speed = 5000; //lower this number to find your best starting speed
int MaxSpeed = 500; //Lower this number to find your max speed
int accel = 1; //change this number to experiment different acceleration
//with 17HS4401 500=Speed and 100=MaxSpeed was my best result

void setup()
{
  pinMode(stp, OUTPUT);
  pinMode(dir, OUTPUT);
}

void loop()
{

  if (Speed == MaxSpeed) 
  {
    digitalWrite(dir, cwccw);
    digitalWrite(stp, HIGH);
    delayMicroseconds(Speed);
    digitalWrite(stp, LOW);
    delayMicroseconds(Speed);
  }

  if (Speed > MaxSpeed)
  {
    digitalWrite(dir, cwccw);
    Speed = Speed - accel;
    digitalWrite(stp, HIGH);
    delayMicroseconds(Speed);
    digitalWrite(stp, LOW);
    delayMicroseconds(Speed);
  }

  else {
  }
}