//#include <Arduino.h>
//INPUTS
#define Ent_RIGHT 12 //Es el switch
#define Ent_LEFT 13 //Es el switch
#define Entr_Pot 34 //Potenciometro
float PWM = 0; //Tener variable de tipo entero para definir el ancho de pulso
#define PWM1_Ch 0
#define PWM1_Res 10 //resolución de 2 a la 10 = 1024, 0 a 1023
#define PWM1_Freq 5 //frecuencia de 1 khz, 3khz
float porcentaje = 0;
//OUTPUTS
#define Sal_Pot 5
#define Sal_RIGT 19
#define Sal_LEFT 18
void setup() {
ledcAttachPin(Sal_Pot, PWM1_Ch); //le asignamos el pin 5 al pwm y el canal 0
ledcSetup(PWM1_Ch, PWM1_Freq, PWM1_Res); //al canal 0 le asignamos una frecuencia de 1khz, y una resolucion de 10 bits
pinMode(Sal_RIGT, OUTPUT);
pinMode(Sal_LEFT, OUTPUT);
Serial.begin(115200);
Serial.println("Controlador de motor de DC");
}
void loop() {
PWM= analogRead(Entr_Pot);
porcentaje = (PWM * 100)/4095;
ledcWrite(PWM1_Ch, PWM); //LO PUSO EL PROFE
Serial.print(porcentaje);
Serial.println("%");
delay(10);
if(digitalRead(Ent_RIGHT)==1 && digitalRead(Ent_LEFT) == 0) {
digitalWrite(Sal_RIGT, HIGH);
digitalWrite(Sal_LEFT, LOW);
Serial.println("Motor hacia Derecha");
delay(1000);
}
else{
digitalWrite(Sal_RIGT, LOW);
digitalWrite(Sal_LEFT, HIGH);
Serial.println("Motor hacia Izquierda");
delay(1000);
}
}