Estou fazendo um projeto só que estou tendo dificuldades. Meu problema é: ao apertar um botão um led acende, apos 30 segundos desse led aceso um outro led dever aceso.
- Dê o comando para o primeiro LED acender.
- Use um delay de 30000.
- Apague o primeiro LED e acenda o segundo.
Se fosse a ti esquecia o delay porque eventualmetne vais querer fazer algo mais e o programa não vai funcionar.
Faz algo deste género:
//fora da loop()
unsigned long temporizacao = 0;
unsigned char inicio = digitalRead(pinoBotao);
unsigned char contando = 0;
if (inicio == 1) { //botao pressionado
temporizacao = millis();
digitalWrite(LED1, HIGH);
contando = 1;
}
if (contando == 1 && (millis() - temporizacao > 30000)) { //passaram 30 segundos e contando esta activo
contando = 0;
digitalWrite(LED2, HIGH);
}
Não disseste como queres fazer reset aos LEDs logo deixo isso para ti.