Salve a todos.
Estou realizando um experimento um teste, no qual preciso acionar um contador toda vez que pisco um led e depois de X piscada ele apaga, marco um tempo e depois pisco denovo.
O que não estou conseguindo fazer é a logica, escrever ela.
eu estou rodando as acoes pelo TimerAction.
void Avanca2(){
if (ContSegundosAv2 >= 0 && ContSegundosAv2 <= 7){
// if ( ContSegundosAv2 <= 7){
AvancaStatus ? AvancaStatus=false : AvancaStatus=true;
digitalWrite(Avanca,AvancaStatus);
Serial.println(" 1. parte - AVANCANDO ");
Serial.print("Avanco eh ");
Serial.println(ContSegundosAv2);
Serial.print("REcuo eh ");
Serial.println(ContSegundosRec2);
ContSegundosAv2++;
ContSegundosRec2++;
}
if (ContSegundosAv2 >=8 && ContSegundosAv2<=12){
Serial.println(" 2. parte - ");
//nao executa nada, soh contagem
Serial.println("Avanco eh");
Serial.println(ContSegundosAv2);
Serial.println("REcuo eh");
Serial.println(ContSegundosRec2);
ContSegundosAv2++;
ContSegundosRec2++;
}
if (ContSegundosAv2 >= 13 && ContSegundosAv2<=20 ){
RecuaStatus ? RecuaStatus=false : RecuaStatus=true;
digitalWrite(Recua,RecuaStatus);
Serial.println(" 3 fase - ");
Serial.println("Recuo eh");
Serial.println(ContSegundosRec2);
ContSegundosAv2++;
ContSegundosRec2++;
}
else{
digitalWrite(Avanca,false);
digitalWrite(Recua,false);
ContSegundosAv2=0;
ContSegundosRec2=0;
Serial.println(" 4 fase - zerando contadores ");
Serial.println(ContSegundosAv2);
Serial.println(ContSegundosRec2);
}
}
Quando executo ele me dá print apenas da fase 1 e 4.