BOM DIA GALERA
Mais uma duvida:
Como troco delay pelo millis nesse void efeitofade() para fazer um efeito "fade" na fita led, pois preciso um rodar código sem parar?, algo que o delay impede.
SEGUE O CODIGO EM URL NO PASTBIN:
Tags:
Augusto (xará), só uma dúvida:
Entendi o que você quer, mas a função "efeitofade", quando chamada irá fazer o FADE de cada led rgb em seguida (B, depois G, depois R).
Mesmo que você substitua o delay por millis, o restante de sua aplicação vai ter que esperar o efeito fade dos leds, correto?
É isso mesmo que você quer?
Ou quer que os leds fiquem fazendo o fade de forma paralela?
Os leds devem fazer o efeito fade sequencialmente do jeito que está ou você queria que fizessem de forma paralela também?
Bom dia, primeiramente obrigado pela ajuda. Sim, eu quero que o fade fique rodando em paralelo
boa noite amigo,
tenho um código aqui, que creio poder te ajudar.
se pelo que entendi, você quer ficar variando a cor da sua fita de led.
essa fiz com um rgb, mas acredito que possa ser aplicado ao seu projeto.
Opa toda ajuda é aceita, poderia passar o code ?
AEEEE : achei uma forma :
const int PINO_LED_1 = 4;
const int PINO_LED_2 = 5;
const int PINO_LED_3 = 6;
void setup() {
pinMode(PINO_LED_1, OUTPUT);
pinMode(PINO_LED_2, OUTPUT);
pinMode(PINO_LED_3, OUTPUT);
}
void loop() {
piscaLedFade(PINO_LED_1, 2000, 1500, 000, 1000, 1000);
piscaLedFade(PINO_LED_2, 2000, 1500, 200, 1000, 1000);
piscaLedFade(PINO_LED_3, 4000, 1500, 400, 1000, 1000);
}
void piscaLedFade(int pin, int timeOn, int timeOff, int atraso, int timeFadeOn, int timeFadeOff){
long resto = (millis()-atraso) % (timeOn + timeOff);
long fade = (resto < timeOn ? 255 : 0);
if (fade > 0){
if ( timeFadeOn > resto ) { fade = resto * 255 / timeFadeOn; }
if ( (timeOn-timeFadeOff) < resto ) { fade = (timeOn-resto) * 255 / timeFadeOff; }
}
analogWrite(pin, fade);
}
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por