Bonjour,
Je cherche à coder un chronomètre avec un capteur ILS sans utiliser de bouton. Je cherche à obtenir le temps entre deux passage d'aimant sur mon capteur ILS.
Voici mon code :
Merci de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 //----------------------------------------------------------- // Inclusion de la bibliothèque pour les messages en Français #include <PrintFr.h> //Source : <a href="https://github.com/EpixFr/Arduino-PrintFr" target="_blank">https://github.com/EpixFr/Arduino-PrintFr</a> /* Déclaration des constantes définissant l'utilisation des broches */ //Broche utilisée pour les données du contact ILS const int pin_ils = 10; bool chronoStatus; /* Déclaration des variables globales */ //Etat du contact ILS int etat_ils = 0; unsigned long millisON = millis(); unsigned long millisOff = 0; void setup() { //Initialisation de la broche ILS en entrée numérique pinMode(pin_ils, INPUT); Serial.begin(9600); chronoStatus = true; } void loop() { etat_ils = digitalRead(pin_ils); delay(100); // Pour couvrir les rebonds if (etat_ils == LOW && chronoStatus == false) // Si bouton pressé et chrono arrêté cela veut dire demarrer le chrono { millisON = millis(); Serial.println("Chrono ON"); chronoStatus = true; } if (etat_ils == HIGH && chronoStatus == true) // Si bouton relâché et chrono en marche cela veut dire arreter le chrono { millisOff = millis() - millisON; Serial.println("Chrono OFF = " + String(millisOff)); chronoStatus = false; } }
Partager