- titi,
Bonjour,
Je souhaite réaliser un programme qui détecte un appui long (long après 1.5s)ou court. selon le type de d'appui, une action différente se produit. appui court , led verte allumée, appui long led rouge allumé le tout pendant 10s. j' ai réalisé un programme, mais en simulation il ne marche pas. et je ne vois pas pourquoi. je n'ai pas la possibilité de le tester autrement. Voici mon programme.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | int compt=0; int etat=LOW; const int Bouton = 2; const int ledV = 3; const int ledR = 4; void setup() { pinMode(Bouton, INPUT); pinMode(ledR, OUTPUT); pinMode(ledV, OUTPUT); } void loop() { if (appuieLong()==1) { digitalWrite(ledV, HIGH);//allume led verte delay(10000); digitalWrite(ledV, LOW);//allume led verte } else { digitalWrite(ledR, HIGH); //allume led rouge delay(10000); digitalWrite(ledR, LOW); // eteint led rouge } } int appuieLong() { etat = digitalRead(Bouton); //lecture de l'etat du bouton. si il est pressé etat = high while (etat == HIGH ) // tant que le bouton est appuyé { delay(750); // delai de 750ms compt=compt+1; // } if ( compt >= 2 ) // si superieur a 1.5s appui long { return (1); } else { return (0); } } Si vous pouviez me faire un retour. merci. Je débute |
+0
-0