Nada mas se declara el pin de motor en una salida pwm y en la programación vas variando int pinMotor = 11; void setup(){ pinMode(pinMotor, OUTPUT); } void loop(){ digitalWrite(pinMotor, 255); //Velocidad máxima delay(2000); digitalWrite(pinMotor, 200); //velocidad máxima media delay(2000); digitalWrite(pinMotor, 155); //velocidad media delay(2000); digitalWrite(pinMotor, 100); //velocidad media baja (acá hago una aclaración, si mal no recuerdo los motores necesitan una cantidad suficiente de voltaje para poder funcionar, estos valores de salidas que se indican es como la cantidad de voltaje que va a estar saliendo del pin 11 ya declarado en el pin pwm, por eso es que va a estar en este caso, disminuyendo la velocidad) delay(2000); } Por si no sabes, los "delay" son tiempos de espera en que se ejecuta la condición o parámetros, en este caso se mide en milisegundos, por lo que 2000 milisegundos equivalen a 2 segundos A veces, se necesita de declarar una velocidad a la que estará girando el motor o interactuando con el hardware y software, de ser así puedes colocar en el void setup (){ pinMode(pinMotor, OUTPUT); Serial.begin(9600); } y ya!!!