Usar o relógio interno do Arduino com o metodo millis() permite criar algoritmos que podem rodar simultaneamente em paralelo, o que não acontece quando usamos delay(), que “pausa” o Arduino por um tempo determinado. Abaixo um código exemplo para o terrário do NANO, onde ligamos e desligamos uma lâmpada de 8 em 8 horas (mas que poderia ser qualquer intervalo de tempo). A partir desse modelo pode-se criar outras variáveis e ciclos para controlar outros relés (para água por exemplo), e outros dispositivos. unsigned long tempo_luz = 0; unsigned long tempo_luz_ciclo = 8L * 60L * 60L * 1000L; // 8 horas boolean volt_luz = LOW; int pino_luz = 8; void setup(){ Serial.begin(9600); Serial.print("Ciclo da luz => "); Serial.print(tempo_luz_ciclo); Serial.print("; "); print_clock(tempo_luz_ciclo); pinMode(pino_luz, OUTPUT); } void loop(){ unsigned long tempo = millis(); print_clock(tempo); // se millis atual menos ultimo millis guardado for maior que o ciclo desejado if(tempo - tempo_luz...