#include #include #include // Crea un objeto para el controlador PCA9685 Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver(); const int push1 = 4; const int push2 = 3; const int pushc = 2; int val1; int val2; int val3; void setup() { // Serial.begin(9600); //Serial.println("Iniciando PCA9685"); // Inicializa el controlador PCA9685 pwm.begin(); pwm.setPWMFreq(50); // Frecuencia de 50 Hz para los servos delay(10); } void loop() { val1=digitalRead(push1); val2=digitalRead(push2); val3=digitalRead(pushc); if(val1==HIGH) { pwm.setPWM(0, 0, 375); // Posición media (ángulo de 90 grados) pwm.setPWM(1, 0, 375); pwm.setPWM(2, 0, 375); pwm.setPWM(3, 0, 375); } if (val2==HIGH) { pwm.setPWM(0, 0, 600); // Posición máxima (ángulo de 180 grados) pwm.setPWM(1, 0, 600); pwm.setPWM(2, 0, 600); pwm.setPWM(3, 0, 600); } if (val3==LOW) { pwm.setPWM(0, 0, 150); // Posición mínima (ángulo de 0 grados) pwm.setPWM(1, 0, 150); pwm.setPWM(2, 0, 150); pwm.setPWM(3, 0, 150); } }