Go Down

Topic: Moyenne à optimiser (Read 287 times) previous topic - next topic

R-One

Bonjour,

J'utilise ce forum afin de répondre à la question suivante:

Dans le cadre d'un projet je dois mettre en place une moyenne sur 5 valeurs je me demandais comment optimisée cette dernière ?  On m'a vaguement parlé de "millis()" donc je suis ouvert à toutes solutions adéquates.

Voici le code:

int VRx = A0;

float moyenneX = 0, Nx = 0, xPosition = 0, mapX = 0, posX = 0, x = 0;

void setup()
{
  Serial.begin(9600);
}

void loop()
{

if (Nx<5)
   {
    xPosition = analogRead(VRx);
    Nx=Nx+1;
    mapX = map(xPosition, 133, 1012, -100, 100);
    x=mapX+x;

   }
     
  if (Nx=5)
   {
    moyenneX = x/Nx;
    Nx=0;
    x=0;
    mapX = map(moyenneX, -100, 100, 0, 180);
    posX = mapX;

    }
 }

GrooveFlotilla

Some people are like Slinkies.

Not really good for anything, but they bring a smile to your face when pushed down the stairs.

lesept

Oui, il faut écrire "Nx == 5" dans le test
Mais je ne comprends pas où tu veux faire intervenir millis(): c'est pour temporiser les acquisitions ? Qu'est-ce qui est branché sur l'entrée A0 ?
A force d'essayer on finit par réussir... Donc, plus ça rate, plus on a de chances que ça marche (proverbe Sharduinok).

Go Up