                             
 }
 
+long moyenne (int tailleTab, int tab [])
+
+{
+  byte j;
+  long moyenne (0);
+  for (j=0;j<tailleTab;j++)
+         {
+              moyenne=moyenne+tab[j];
+          }
+   moyenne=moyenne/(tailleTab);
+   return moyenne;
+                            
+}
 
 defineTimerRun(rafraichirAffichage,800)
  //ne pas mettre ce timer a une valeur trop faible pour éviter le rebond

									{
									compteurRef=compteur;
									sleep(TEMPO_STAT);
									}
							resultatImpulsion[i+1]=compteur;
							resultatTemps[i+1]=millis()-tempsMesureVitesse-TEMPO_STAT;
              Serial.print(F("Cycle "));
              Serial.print(i+1);
              Serial.print(F(" imp= "));
              Serial.print(resultatImpulsion[i+1]);
              Serial.print(F(" temps= "));
              Serial.println(resultatTemps[i+1]);
                                                        
						}
					Serial.println(F("ATTENTION regarder  et noter le sens de rotation du premier mouvement "));
					Serial.println(F("si pret faire un clic "));
					etatCalibrateur=WAITCLIC;

#include <Servo.h>
#define DELTA 150
#define TEMPOSLEEP 800 //en ms le temps pour le servo de bouger d'un increment quand on fait les mesure à la roue codeuse
#define ERREURCOMPTAGE 15 //la tolérance de comptage avant que l'on estime que le servo est arrivé au bout
#define NBRCYCLE_AR 10 //nbre de cycle d'aller et retour pour la fin des mesure de caractérisation et nbr de cycle pour la mesure des PWMIN et PWMMAX
#define TEMPO_STAT 100 // tempo pour laisser le servo avancr lors des mesures statistique à la fin de la calibration
#define ADRESSE_EEPROM 42//position de leeprom ou la valeur de reglage de l potence est stocké

//
