#define LED_RED 0
#define LED_GREEN 1
#define LED_BLUE 2
int duty_red = 13; // valor inicial (5% de 255 ≈ 13)
unsigned long last_update = 0;
void setup() {
pinMode(LED_RED, OUTPUT);
pinMode(LED_GREEN, OUTPUT);
pinMode(LED_BLUE, OUTPUT);
// PWM inicial
analogWriteFreq(1000); // frequência para LED vermelho
analogWrite(LED_RED, duty_red);
analogWriteFreq(10000); // frequência para LED azul
analogWrite(LED_BLUE, 128); // duty fixo ~50%
analogWriteFreq(1000); // frequência para LED verde
analogWrite(LED_GREEN, 77); // duty fixo ~30%
}
void loop() {
// Atualiza duty do vermelho a cada 2 segundos
if (millis() - last_update >= 2000) {
last_update = millis();
duty_red += 13; // incremento de ~5%
if (duty_red > 255) duty_red = 13;
analogWriteFreq(1000);
analogWrite(LED_RED, duty_red);
}
}