commit b05cc11482ad05c15061c4760ff5c66068cb6b7e Author: AngelJurado Date: Wed Jun 10 14:53:17 2026 +0000 Subir archivos a "/" diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..95c9b55 --- /dev/null +++ b/main.cpp @@ -0,0 +1,44 @@ +#include +#include + +Servo miServo; // Crea el objeto para controlar el servo +int pinServo = 13; // Pin GPIO del ESP32 conectado a la señal del servo + +void setup() { + Serial.begin(115200); + + // Asignación de temporizadores para el ESP32 (recomendado por la librería) + ESP32PWM::allocateTimer(0); + ESP32PWM::allocateTimer(1); + ESP32PWM::allocateTimer(2); + ESP32PWM::allocateTimer(3); + + // Los servos suelen trabajar a una frecuencia de 50Hz + miServo.setPeriodHertz(50); + + // Conecta el servo al pin, con anchos de pulso mínimo (500us) y máximo (2400us) + // Nota: Estos valores (500, 2400) son estándar, pero algunos servos usan (1000, 2000) + miServo.attach(pinServo, 500, 2400); + + Serial.println("Iniciando prueba del servomotor..."); +} + +void loop() { + Serial.println("Moviendo a 180 grados..."); + // Gira de 0 a 180 grados + for (int pos = 0; pos <= 180; pos += 1) { + miServo.write(pos); + delay(15); // Espera 15ms para que el servo alcance la posición + } + + delay(1000); // Pausa de 1 segundo + + Serial.println("Regresando a 0 grados..."); + // Gira de 180 a 0 grados + for (int pos = 180; pos >= 0; pos -= 1) { + miServo.write(pos); + delay(15); + } + + delay(1000); // Pausa de 1 segundo +} \ No newline at end of file