Ciao a tutti ,sono nuovo del forum .Spero di aver scritto nella sezione giusta.
Oggi mi sono imbattuto in un problema ,praticamente utilizzando un" ricevitore 433" devo far eseguire alla ricezione di un (valore/codice) un determinato ciclo ma esso si deve solo ripetere all'arrivo del segnale .Non so se sono stato chiaro vi metto di seguito il codice grezzo che sto utilizzando
#include <RCSwitch.h>
RCSwitch mySwitch = RCSwitch();
const int val_aperturaintermedio=17000;
const int val_chiusuraintermedio=21000;
const int val_intermedio = 10000;
int Lampada = 6;
int Motore1Apertura = 12;
int Motore1Chiusura = 11;
int Motore2Apertura = 10;
int Motore2Chiusura = 9;
void setup() {
pinMode(Lampada, OUTPUT);
pinMode(Motore1Apertura, OUTPUT);
pinMode(Motore1Chiusura, OUTPUT);
pinMode(Motore2Apertura, OUTPUT);
pinMode(Motore2Chiusura, OUTPUT);
mySwitch.enableReceive(0);
}
void loop() {
if (mySwitch.available()) {
long int value = mySwitch.getReceivedValue();
if (value == 131071) {
digitalWrite(Lampada, HIGH);
delay(1000);
digitalWrite(Motore1Apertura, HIGH);
delay(val_intermedio);
digitalWrite(Motore2Apertura, HIGH);
delay(val_aperturaintermedio);
digitalWrite(Motore1Apertura, LOW);
delay(val_intermedio);
digitalWrite(Motore2Apertura, LOW);
delay(2000);
digitalWrite(Lampada, LOW);
}
if (value ==16777215) {
digitalWrite(Lampada, HIGH);
delay(1000);
digitalWrite(Motore2Chiusura, HIGH);
delay(val_intermedio);
digitalWrite(Motore1Chiusura, HIGH);
delay(val_chiusuraintermedio);
digitalWrite(Motore2Chiusura, LOW);
delay(val_intermedio);
digitalWrite(Motore1Chiusura, LOW);
delay(2000);
digitalWrite(Lampada, LOW);
}
}
}
Spero vivamente che possiate aiutarmi con esempi o con quale link o libreria .
Grazie mille per l'aiuto