Go Down

Topic: PROBLEME DE DÉBUTANT (Read 180 times) previous topic - next topic

Simon31300

Bonjour à tous et désolé si le post n'est pas à ça place

Je suis archi débutant et j'ai un problème très basic que je n'arrive pas a résoudre
J'essai de faire une fonction qui mesure des entrées analogiques et qui en ferai une moyenne toute les 20 mesures.

Etant évidant que la question a déja était traité, je n'arrive pas a trouvé d'explication.

Quelqu'un pourrait m'aider ?


Code: [Select]
int moyenneSonde(const int sonde){
int valSonde;
const byte totalTab = 20;
int tab[totalTab];
unsigned int somme;

for (int i = 0; i< totalTab ; i ++){
         valSonde = analogRead(sonde);
         
         tab[i] = valSonde;
          }
         
         for (int i = 0 ; i < totalTab ; i++){   
         somme += tab[i] ; //somme des valeurs du tableau
          }
   
  int moyenne = somme/totalTab;
  return(moyenne);
     
}


Je ne comprend pas où est le problème  mais les valeurs renvoyé ne corresponde a rien.

Merci d'avance

charliesixpack

#1
Jun 19, 2019, 09:07 pm Last Edit: Jun 19, 2019, 09:33 pm by charliesixpack
Il faut initialiser la valeur de somme au debut de chaque boucle.
Code: [Select]

somme = 0 ;
for (int i = 0 ; i < totalTab ; i++){   
     somme += tab[i] ; //somme des valeurs du tableau
}

Simon31300


Go Up