cv1

Dependencies:   MMA8451Q mbed

Committer:
zdenka
Date:
Mon Oct 30 16:12:27 2017 +0000
Revision:
1:1567f5a4e96f
accelerometer samplefilter

Who changed what in which revision?

UserRevisionLine numberNew contents of line
zdenka 1:1567f5a4e96f 1 #ifndef SAMPLEFILTER_H_
zdenka 1:1567f5a4e96f 2 #define SAMPLEFILTER_H_
zdenka 1:1567f5a4e96f 3
zdenka 1:1567f5a4e96f 4 /*
zdenka 1:1567f5a4e96f 5
zdenka 1:1567f5a4e96f 6 FIR filter designed with
zdenka 1:1567f5a4e96f 7 http://t-filter.appspot.com
zdenka 1:1567f5a4e96f 8
zdenka 1:1567f5a4e96f 9 sampling frequency: 800 Hz
zdenka 1:1567f5a4e96f 10
zdenka 1:1567f5a4e96f 11 * 0 Hz - 50 Hz
zdenka 1:1567f5a4e96f 12 gain = 1
zdenka 1:1567f5a4e96f 13 desired ripple = 5 dB
zdenka 1:1567f5a4e96f 14 actual ripple = 2.914975479357161 dB
zdenka 1:1567f5a4e96f 15
zdenka 1:1567f5a4e96f 16 * 150 Hz - 400 Hz
zdenka 1:1567f5a4e96f 17 gain = 0
zdenka 1:1567f5a4e96f 18 desired attenuation = -40 dB
zdenka 1:1567f5a4e96f 19 actual attenuation = -43.03832555525106 dB
zdenka 1:1567f5a4e96f 20
zdenka 1:1567f5a4e96f 21 */
zdenka 1:1567f5a4e96f 22
zdenka 1:1567f5a4e96f 23 #define SAMPLEFILTER_TAP_NUM 11
zdenka 1:1567f5a4e96f 24
zdenka 1:1567f5a4e96f 25 typedef struct {
zdenka 1:1567f5a4e96f 26 double history[SAMPLEFILTER_TAP_NUM];
zdenka 1:1567f5a4e96f 27 unsigned int last_index;
zdenka 1:1567f5a4e96f 28 } SampleFilter;
zdenka 1:1567f5a4e96f 29
zdenka 1:1567f5a4e96f 30 void SampleFilter_init(SampleFilter* f);
zdenka 1:1567f5a4e96f 31 void SampleFilter_put(SampleFilter* f, double input);
zdenka 1:1567f5a4e96f 32 double SampleFilter_get(SampleFilter* f);
zdenka 1:1567f5a4e96f 33
zdenka 1:1567f5a4e96f 34 #endif