jremington:
A suitably creative person should have no difficulty with the concept that "1000 microseconds per step" might lead to a certain number of steps per second.From there, given that 200 steps = one revolution, it is not particularly difficult to calculate rotations per minute (RPM).
And that would be true of course if the physics of the motor and controller are such that the motor does actually react to 500 microsecond on/off instructions. (Note that the for loop will add actually a bit of delay to loop, so the off period on the pin is actually a bit longer than the on period)
So question is: if you put your code is setup() instead of loop() are you actually seeing your motor spin a FULL 360 degree ? That is are all the 200 steps executed properly or does the motor miss some and you get to see a full turn only because the loop loops and thus motor keeps spinning and eventually gets to a full rotation?