Bonjour,
Je suis débutant en programmation Arduino, mon programme consiste en une tempo "Random" faite avec "Relay" et commandée par un bouton poussoir (trigger = pin 2).
Voici le déroulement :
Si on pousse sur le BP son état passe de 1 à 0, la sortie 13 passe à 1, elle reste à 1 tant que l’on pousse sur le BP
Si on relache le BP son état passe de 0 à 1, la sortie 13 après un certain temps déterminé par (temps >= 3000) passe à 0
J’espère avoir été assez clair, en espérant que vous pourrez m’aider, merci
Voici le programme qui ne fonctionne pas :
const int trigger = 2;
unsigned long temps;
int relais1 = 13;
long randOn = 0;
long randOff = 0;
void setup() {
pinMode(trigger, INPUT);
pinMode(relais1, OUTPUT);
}
void loop() {
randOn = random (0, 3900);
randOff = random (0, 100);
digitalWrite(relais1, HIGH);
delay(randOn);
digitalWrite(relais1, LOW);
delay(randOff);
if (digitalRead(trigger) == LOW){
temps = millis();
digitalWrite(13,HIGH);
}
if (millis()-temps >= 3000) {
digitalWrite(13,LOW);
}
}
+0
-0