Die Berechnung bei der gleitenden Mittelung kommt mir irgendwie recht einfach und speicherplatz-schonend vor, deshalb noch einmal kurz zu dem Prinzip.
Zur gleitenden Mittelung mit einer Zeitkonstanten von 1000 Abtastwerten teilt man das bisherige Ergebnis durch 1000 und zieht diesen Wert vom bisherigen Ergebnis ab. Dann hat man noch den 0,999 fachen Mittelwert.
Zu dem Wert addiert man den durch 1000 geteilten aktuellen Messwert.
Das wär's,
Als Anfangsbedingung kann man den ersten Meswert nehmen, und dann auch noch mit einer steigenden Zeitkonstanten in die Mittelung einsteigen.
(Man wird die Zeitkonstante im allgemeinen als runden Binärwert wählen.)