Gente, eu preciso ligar um led via pushButton, manter ele ligado por 10 segundos e depois desliga-lo. Okay, essa parte é simples e eu já sei fazer usando a função "delay()". Mas quero ter um segundo botão, e caso eu aperte ele desligue o led. Me indicaram usar a função millis() mas não tenho idéia de como utilizar essa função, alguém pode me ajudar, não acho que seja dificil, mas tenho pouco conhecimento sobre programação.

Exibições: 1519

Responder esta

Respostas a este tópico

Lucas boa tarde,

Não esta claro para mim o que quer fazer realmente, você diz que tem um botão já implementado que liga e depois de 10s desliga um led usando delay, que isto esta funcionando, mas que quer ter outro botão, que ao ser pressionado desligue o led.

Qual led, o mesmo que desliga em 10s? Que apagar ele mas com a função millis e não delay?

Quer implementar outro led com outro botão usando millis?

Cole seu código no www.pastebin.com e depois o link aqui,  seja um pouco mais claro no que deseja que com certeza ira receber ajuda.

Abs.

tente assim :

int botao_liga = 12;
int botao_desliga = 11;
int led = 10;
unsigned long tempo = 0;
int libera = false;

void setup() {
pinMode(botao_liga,INPUT);
pinMode(botao_desliga,INPUT);
pinMode(led,OUTPUT);

}

void loop() {
if (digitalRead(botao_liga) == HIGH)
{
tempo = millis();
libera = true;
}
if (millis() - tempo > 10000 && libera == true)
{
digitalWrite(led,HIGH);
libera = false;
}

if (digitalRead(botao_desliga) == HIGH)
{
digitalWrite(led,LOW);
libera = false;
}
}

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço