Problème de programmation (portail motorisé)

Bonjour,

Nous avons comme projet de faire fonctionner un portail et son voyant clignotant lors de son ouverture et de sa fermeture. Notre problème vient du programme, nous n’arrivons pas à faire clignoter la Led au bon moment.

Voilà notre programme:

const int capteur = 5;  
const int bouton = 4;
const int portail =  12;      
const int led = 8;



int buttonState = 0;  
int buttonState2 = 0;

void setup() {

pinMode(portail, OUTPUT);      
pinMode (led, OUTPUT);
pinMode(capteur, INPUT); 
pinMode(bouton, INPUT);
pinMode(button, INPUT);

}

void loop(){

buttonState = digitalRead(capteur);
buttonState2 = digitalRead(bouton);



if (buttonState == HIGH) {     
  digitalWrite(portail, HIGH);
delay (10000);

} 

if (buttonState2 == HIGH) {     
   
digitalWrite(portail, HIGH);
delay (10000);
  } 

 {
  // fade in
  for(int fadeV = 0 ; fadeV <= 255; fadeV +=5) {
     analogWrite(led, fadeV);
     delay(3); // wait to see the effect
  }
  // fade out
  for(int fadeV = 255 ; fadeV >= 0; fadeV -=5) {
     analogWrite(led, fadeV);
     delay(10); // wait to see the effect
  }
 }   
    
else {

  digitalWrite(portail, LOW); 
   
}

Merci de vos réponses!

Bonjour,
Il faut mettre le code entre “balises codes”

Bonjour,
Pourquoi ces délais d’attente de 10s ?

C'est le temps d'attente lorsque le portail est ouvert. Il attend 10 secondes avant de se refermer.

Programme sous Windows

Re, Pendant ce temps le micro-contrôleur ne fait rien (il attend).

Notre portail va être utilisé dans un poulailler. Le temps d'attente sert à ce que les poules rentrent. Notre problème viens de la Led qui doit s'allumer dès lors que le portail s'ouvre et jusqu'à sa fermeture, comme un portail automatique pour la maison.

Re, Pendant la phase d'attente (delay) Arduino ne pas gérer la led (il est en attente). Regarde du côté de blink with out delay @+

Merci de ton aide ! On essaye d’interpréter ce programme dans le notre ! merci !

Au pire il peut allumer la led avant de delay

Re,

vohu: Au pire il peut allumer la led avant de delay

Oui mais ils veulent des effets :grin:

ha oui, c'est vrai... ça doit clignoter...

Tiens, petite question (pas si hors sujet), en utilisant la lib Timer, que se passe t'il si une autre portion du code est dans un delay au moment de l'évenement ?

Ou bien faire clignoter la led en faisant une fonction qui la fait clignoter a la place du delai

bonjour, pourquoi pas prendre directement une led clignotante :) elle est alimentée et hop, magie elle clignote, ca fait des lignes de codes en moins :grin: