Implements a simple leaky integrator integer value filter, handy for fast, simple, ADC output filtering. Implemented as described here: [[http://ece124web.groups.et.byu.net/references/readings/Simple%20Software%20Lowpass%20Filter.pdf|Simple Software Lowpass Filter.pdf]]

Dependents:   AVC_20110423 WallBot_Simple AVC_2012

Revision:
1:70348515ed2f
Parent:
0:ac15e38daeb5
diff -r ac15e38daeb5 -r 70348515ed2f SimpleFilter.cpp
--- a/SimpleFilter.cpp	Wed Apr 20 08:00:25 2011 +0000
+++ b/SimpleFilter.cpp	Wed Apr 20 16:57:54 2011 +0000
@@ -6,8 +6,11 @@
 
 short SimpleFilter::filter(short value) {
 
-    _filter_value += value - (_filter_value >> _shift);
-    _filter_value >>= _shift;
+    _filter_value += (value - (_filter_value >> _shift));
     
-    return _filter_value;
-}
\ No newline at end of file
+    return _filter_value >> _shift;
+}
+
+short SimpleFilter::value(void) {
+    return _filter_value >> _shift;
+}