#define led 13
#define button 22
#define potenciometro 27
int canal_pwm = 0;
int freq_pwm = 5000;
int resolucao_pwm = 8;
int flag = 0;
int leitura, velocidade;
void setup() {
Serial.begin(9600);
pinMode(led, OUTPUT);
pinMode(button, INPUT_PULLUP);
pinMode(potenciometro, INPUT);
ledcSetup(canal_pwm, freq_pwm, resolucao_pwm);
ledcAttachPin(led, canal_pwm);
}
void loop() {
//LEITURA DO POTENCIOMETRO
leitura = analogRead(potenciometro);
velocidade = map(leitura, 0, 4095, 0, 255);
// Atualize o brilho do LED
if (flag == 1) {
ledcWrite(canal_pwm, velocidade);
Serial.println(velocidade);
delay(200);
}
//LIGAR LED COM PUSH BUTTON
if(digitalRead(button) == LOW && flag == 0){
flag = 1;
Serial.println("LED LIGADO");
delay(200);
} else if(digitalRead(button) == LOW && flag == 1){
flag = 0;
ledcWrite(canal_pwm, 0);
Serial.println("LED DESLIGADO");
delay(200);
}
}