Arduino Forum

International => Français => Topic started by: Jordan-pDevices on May 22, 2013, 04:39 pm

Title: Arrêter un programme dans la boucle
Post by: Jordan-pDevices on May 22, 2013, 04:39 pm
Bonjour,

Je souhaiterais pouvoir stopper un programme lancé dans la boucle principale.
Par exemple faire clignoter une led puis l'arrêter une fois qu'on appui sur un bouton poussoir ou alors simplement avec une variable qui stoppera le cycle au bout de 10 secondes par exemple.

Comment faire ?

Merci de votre aide  :)
Title: Re: Arrêter un programme dans la boucle
Post by: B@tto on May 22, 2013, 04:49 pm
Une simple condition :

Code: [Select]
boolean Flag=1;

void loop() {

if(Flag==1) {
// mon programme

if(MonBouton==HIGH) {
Flag=0;
}

}

}
Title: Re: Arrêter un programme dans la boucle
Post by: Jordan-pDevices on May 22, 2013, 08:26 pm
Ok, c'est ce que j'ai pensé mais je me demandais s'il existait une autre solution.
Merci beaucoup !

Et "boolan" c'est pour déclarer une variable de type booléenne qui prends l'état 0 ou 1 ?
Title: Re: Arrêter un programme dans la boucle
Post by: B@tto on May 22, 2013, 09:16 pm
Faute de pas frappe (de ma part) : boolean ;)
Title: Re: Arrêter un programme dans la boucle
Post by: skywodd on May 23, 2013, 09:45 am
Bonjour,

Autre solution (exemple) :
Code: [Select]
while(digitalRead(x)) { // Tant que le bouton est appuyé
  digitalWrite(13, HIGH); // Clignote la led pin13
  delay(500);
  digitalWrite(13, HIGH);
  delay(500);
}
Title: Re: Arrêter un programme dans la boucle
Post by: Jordan-pDevices on May 23, 2013, 03:08 pm
OK.

Merci, j'ai eu ce que je voulais  :)

Bonne journée a vous !