Arduino Forum

International => Français => Topic started by: R-One on Mar 16, 2018, 10:43 am

Title: Moyenne à optimiser
Post by: R-One on Mar 16, 2018, 10:43 am
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;

    }
 }
Title: Re: Moyenne à optimiser
Post by: GrooveFlotilla on Mar 16, 2018, 10:58 am
Code: [Select]
  if (Nx = 5)Jamais
Title: Re: Moyenne à optimiser
Post by: lesept on Mar 16, 2018, 01:39 pm
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 ?