Tutoriales
Tutoriales
Driver PCA9685 con Arduino Uno
Código:
#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>
// Declarando variable segun la libreria para menejo de Servos
// usando la dirección de la tarjeta "0x40"
Adafruit_PWMServoDriver servos = Adafruit_PWMServoDriver(0x40);
//Adafruit_PWMServoDriver servos2 = Adafruit_PWMServoDriver(0x44);
int pos0=102; // ancho de pulso en cuentas para pocicion 0°
int pos180=512; // ancho de pulso en cuentas para la pocicion 180°
void setup() {
servos.begin();
servos.setPWMFreq(50); //Frecuecia PWM de 50Hz para Servo SG90
}
void loop() {
setServo(0,0);
delay(1000);
setServo(0,90);
delay(1000);
setServo(0,180);
delay(1000);
setServo(3,0);
delay(1000);
setServo(3,90);
delay(1000);
setServo(3,180);
delay(1000);
setServo(6,0);
delay(1000);
setServo(6,90);
delay(1000);
setServo(6,180);
delay(1000);
setServo(9,0);
delay(1000);
setServo(9,90);
delay(1000);
setServo(9,180);
delay(1000);
setServo(12,0);
delay(1000);
setServo(12,90);
delay(1000);
setServo(12,180);
delay(1000);
setServo(15,0);
delay(1000);
setServo(15,90);
delay(1000);
setServo(15,180);
delay(1000);
}
void setServo(uint8_t n_servo, int angulo) { //Función Personalizada
int duty;
duty=map(angulo,0,180,pos0, pos180);
servos.setPWM(n_servo, 0, duty); //Función de la Libreria
}
Descargas: