// Nombre: Fiallos Alex
// Código para controlar un servomotor con dos pulsadores: uno para barrer de 0 a 180 grados y otro para poner el servo a 90 grados.
#include <Servo.h> //Incluir la libreria Servo.h para el funcionamiento del servo
Servo servoMotor; // Crea una instancia del servo
int angulo = 0; //Variable para almacenar el angulo del servo
const int buttonPin1 = 2; // Define el pin para el primer botón
const int buttonPin2 = 3; // Define el pin para el segundo botón
int buttonState1 = 0; // Variable para almacenar el estado del primer botón
int buttonState2 = 0; // Variable para almacenar el estado del segundo botón
void setup() {
servoMotor.attach(9); // Conecta el servo al pin 9
pinMode(buttonPin1, INPUT_PULLUP); // Configura el pin del primer botón como entrada con pull-up
pinMode(buttonPin2, INPUT_PULLUP); // Configura el pin del segundo botón como entrada con pull-up
}
void loop() {
//Verifica si se presiona el boton de movimiento gradual.
if (digitalRead(buttonPin1)==LOW){
//Aumenta gradualmente el angulo de 0 a 180 grados
for (int angulo = 0; angulo <= 180; angulo += 1) { // Barrido de 0 a 180 grados
servoMotor.write(angulo); // Establece el ángulo del servo
delay(15); // Retardo para un movimiento suave
}
}
//Verifica si se presiona el boton de movimiento directo a 90 grados
if (digitalRead(buttonPin2)==LOW) {
servoMotor.write(90); // Establece el servo a 90 grados directamente
delay (15); //Retardo para un movimiento suave
}
}