Jag försöker lista ut hur man bäst räknar ut medelvärdet av en kontinuerligt samplad signal.
Det finns några begränsningar:
- Kan max spara 3-4 värden
- Shift är gratis men division går ej
- Addera är ok
Idealt så hade detta fungerat:
Kod: Markera allt
void newSample(int newValue)
{
totalValues++;
totalSum += newValue;
mean = totalValues / totalSum;
}
Jag har tänkt mig något i still med:
Kod: Markera allt
void newSample(int newValue)
{
oldMean = newMean;
newMean = (newValue + oldMean*7) >> 3;
}
Påminner om ett lågpass filter

Någon som har någon kommentar om hur man brukar göra?
Tack