センサーなどのノイズを程よく除去するにはローパスフィルター(LPF)が有効である。
デジタル通信するセンサーの場合はアナログのLPFは使えないので、デジタルのLPFを使うことになる。
センサから出てくる値をxとして、現在保有している平均値をSとすると
S=S*0.9 + 0.1x
といった具合でLPFが実装できる。
浮動小数点演算は小さなマイコンには重い作業なので
32倍の値をS2とでもしておき、
S2=( S2 - (S2>>5) + x )
S=S>>5
といった値を吐き出すのが演算負荷的によろしいのではと思っている。>>はビットシフト。