Ciao Salvatore77,
per inserire codice nei post, usa il tasto con il cancelletto la prossima volta
in ogni caso il codice che hai scritto fa esattamente quello che deve fare, il delay infatti è bloccante, il processore non fa nulla se non trascorre prima il tempo da te inserito, per fare quello che tu dici, si fanno i confronti utilizzando millis(), inoltre le due istruzione inserite nel setup() non servono a nulla nel tuo caso, fanno solo scattare il relé, assegnare poi ad una variabile un valore e non usarla a poco senso (POMPA1), ti ho buttato giù due righe al volo al volo, dovrebbero funzionare, altrimenti gli ridò uno sguardo in serata, tu però studiatele un secondino.
Ciao.
byte POMPA1 = 0x40;
unsigned long intervallo = 10000;
boolean statopompa;
void setup() {
statopompa = true;
scambioprec = millis();
}
void loop() {
if ((millis() – scambioprec) > intervallo)
{ if statopompa == true
{ schrele.write(POMPA1, HIGH);
statopompa = false;
}
else
{ schrele.write(POMPA1, LOW);
statopompa = true;
}
scambioprec = scambioprec + Intervallo;
}
}