int led = 13; // Alimentation de la bobine
int hall = A0; // Analyse du capteur a effet Hall
long startTime = 0; // start time for stop watch
long elapsedTime = 0 ;
unsigned long valeur; //Donnees directes du capteru a effet Hall
float tension; // Valeur actuelle en voltage du capteur
float pretension; // Valeur precedente en voltage du capteur
void setup() // Effectuer une seule fois
{
pinMode (hall, INPUT); // Declarer capteur a effet Hall comme INPUT
pinMode (led, OUTPUT); // Declarer led comme OUTPUT
Serial.begin (9600); // Vitesse du retour des donnees
}
void loop() // Effectuer à chaque fois
{
pretension = tension; // Tension precedente vs tension actuelle
valeur = analogRead (hall); // Lecture du capteur a effet Hall
tension = valeur * 5.0 / 1024; // Formule de calcul du voltage du capteur a effet Hall
if (2.50 < tension < 2.95)
{
if (tension < (pretension - 0.005)) { // compare them
elapsedTime = micros() - startTime;
startTime = micros();
digitalWrite(led, HIGH);
delay (20);
digitalWrite(led, LOW); // do something, they are different
while (2.50 < tension < 2.95){
valeur = analogRead (hall);
tension = valeur * 5.0 / 1024;
digitalWrite(led, LOW);}
digitalWrite(led, LOW);
}
}
Serial.print("tension= "); // Imprimer les valeurs pecedentes du capteur
Serial.println(tension);
Serial.println(); // Sauter une ligne lors de l'affichage
Serial.println();
}
my code stop after the loop why
this code is supposed to blink one time until tension < 2.7 and then continue