Denk ich mir.
Die loop() ist nämlich ne Schleife und da in dem Programm nicht viel zu tun ist, soll dein Stepper also alle paar Mikrosekunden drei Umdrehungen machen.
Das wird der wohl nich schaffen können....
Das if() fängt sowas auf, nur wenn die vorherige Aufgabe erledigt ist, gibts ne neue.
Bei deiner Sparvariante erstickt der Motor kurzerhand in Arbeit...