Dependencies:   Biquad HIDScope mbed

Files at this revision

API Documentation at this revision

Comitter:
Gerth
Date:
Mon Oct 12 10:47:01 2015 +0000
Parent:
0:034ac2bc2fec
Commit message:
made code more readable by putting filter constants in separate file

Changed in this revision

filtervalues.h Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
diff -r 034ac2bc2fec -r 72929ae055e4 filtervalues.h
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/filtervalues.h	Mon Oct 12 10:47:01 2015 +0000
@@ -0,0 +1,108 @@
+//////////////////////////////////////////////CONSTANTS
+///////////////////Biquad #1
+const double gain_f1 = 9.6508098634474382e-01;
+const double A_f1[] = { 1.0000000000000000e+00, -1.5685816307006708e+00, 9.6424138386900704e-01};
+const double B_f1[] = { 9.6508098634474382e-01, -1.5620271748674457e+00, 9.6508103356874642e-01};
+///////////////////Biquad #2
+const double gain_f2 = 1.0000000000000000e+00;
+const double A_f2[] = { 1.0000000000000000e+00, -1.6110035772715345e+00, 9.6592170561041857e-01};
+const double B_f2[] = { 1.0000000000000000e+00, -1.6185451093340690e+00, 9.9999995106731920e-01};
+///////////////////Biquad #3
+const double gain_f3 = 9.9822442621274976e-01;
+const double A_f3[] = { 1.0000000000000000e+00, -1.9974859794229252e+00, 9.9816164132347696e-01};
+const double B_f3[] = { 9.9822442621274976e-01, -1.9958198522750312e+00, 9.9822437457251578e-01};
+///////////////////Biquad #4
+const double gain_f4 = 1.0000000000000000e+00;
+const double A_f4[] = { 1.0000000000000000e+00, -1.6110035772715345e+00, 9.6592170561041857e-01};
+const double B_f4[] = { 1.0000000000000000e+00, -1.6185451093340690e+00, 9.9999995106731920e-01};
+///////////////////Biquad #5
+const double gain_f5 = 9.5654322555687676e-01;
+const double A_f5[] = { 1.0000000000000000e+00, -1.9111970674260732e+00, 9.1497583480143385e-01};
+const double B_f5[] = { 9.5654322555687676e-01, -1.9130864511137535e+00, 9.5654322555687676e-01};
+///////////////////Biquad #6
+const double gain_f6 = 3.3442551676254872e-06;
+const double A_f6[] = { 1.0000000000000000e+00, -1.8427059736361620e+00, 8.4985824865523585e-01};
+const double B_f6[] = { 3.3442551676254872e-06,  6.6885105403474005e-06, 3.3442552150528207e-06};
+///////////////////Biquad #7
+const double gain_f7 = 1.0000000000000000e+00;
+const double A_f7[] = { 1.0000000000000000e+00, -1.9274673141071310e+00, 9.3494858161147065e-01};
+const double B_f7[] = { 1.0000000000000000e+00,  1.9999999386720257e+00 , 9.9999998581827421e-01};
+
+
+////////////////////////////////////////////ARRAYS TO VARIABLES
+/////////////////Biquad #1
+const double a1_f1 = gain_f1*A_f1[1],
+             a2_f1 = gain_f1*A_f1[2],
+             b0_f1 = gain_f1*B_f1[0],
+             b1_f1 = gain_f1*B_f1[1],
+             b2_f1 = gain_f1*B_f1[2]; //filter coefficients filter 1
+double v1_f1_emg1=0 ,
+       v2_f1_emg1=0 ,
+       v1_f1_emg2=0 ,
+       v2_f1_emg2=0;//storage variables filter 1
+
+/////////////////Biquad #2
+const double a1_f2 = gain_f2*A_f2[1],
+             a2_f2 = gain_f2*A_f2[2],
+             b0_f2 = gain_f2*B_f2[0],
+             b1_f2 = gain_f2*B_f2[1],
+             b2_f2 = gain_f2*B_f2[2]; //filter coefficients filter 2
+double v1_f2_emg1=0 ,
+       v2_f2_emg1=0 ,
+       v1_f2_emg2=0 ,
+       v2_f2_emg2=0;//storage variables filter 2
+
+/////////////////Biquad #3
+const double a1_f3 = gain_f3*A_f3[1],
+             a2_f3 = gain_f3*A_f3[2],
+             b0_f3 = gain_f3*B_f3[0],
+             b1_f3 = gain_f3*B_f3[1],
+             b2_f3 = gain_f3*B_f3[2]; //filter coefficients filter 3
+double v1_f3_emg1=0 ,
+       v2_f3_emg1=0 ,
+       v1_f3_emg2=0 ,
+       v2_f3_emg2=0;//storage variables filter 3
+
+/////////////////Biquad #4
+const double a1_f4 = gain_f4*A_f4[1],
+             a2_f4 = gain_f4*A_f4[2],
+             b0_f4 = gain_f4*B_f4[0],
+             b1_f4 = gain_f4*B_f4[1],
+             b2_f4 = gain_f4*B_f4[2]; //filter coefficients filter 4
+double v1_f4_emg1=0 ,
+       v2_f4_emg1=0 ,
+       v1_f4_emg2=0 ,
+       v2_f4_emg2=0;//storage variables filter 4
+
+/////////////////Biquad #5
+const double a1_f5 = gain_f5*A_f5[1],
+             a2_f5 = gain_f5*A_f5[2],
+             b0_f5 = gain_f5*B_f5[0],
+             b1_f5 = gain_f5*B_f5[1],
+             b2_f5 = gain_f5*B_f5[2]; //filter coefficients filter 5
+double v1_f5_emg1=0 ,
+       v2_f5_emg1=0 ,
+       v1_f5_emg2=0 ,
+       v2_f5_emg2=0;//storage variables filter 5
+
+/////////////////Biquad #6
+const double a1_f6 = gain_f6*A_f6[1],
+             a2_f6 = gain_f6*A_f6[2],
+             b0_f6 = gain_f6*B_f6[0],
+             b1_f6 = gain_f6*B_f6[1],
+             b2_f6 = gain_f6*B_f6[2]; //filter coefficients filter 6
+double v1_f6_emg1=0 ,
+       v2_f6_emg1=0 ,
+       v1_f6_emg2=0 ,
+       v2_f6_emg2=0;//storage variables filter 6
+
+/////////////////Biquad #7
+const double a1_f7 = gain_f7*A_f7[1],
+             a2_f7 = gain_f7*A_f7[2],
+             b0_f7 = gain_f7*B_f7[0],
+             b1_f7 = gain_f7*B_f7[1],
+             b2_f7 = gain_f7*B_f7[2]; //filter coefficients filter 7
+double v1_f7_emg1=0 ,
+       v2_f7_emg1=0 ,
+       v1_f7_emg2=0 ,
+       v2_f7_emg2=0;//storage variables filter 7
\ No newline at end of file
diff -r 034ac2bc2fec -r 72929ae055e4 main.cpp
--- a/main.cpp	Mon Oct 12 09:51:04 2015 +0000
+++ b/main.cpp	Mon Oct 12 10:47:01 2015 +0000
@@ -21,114 +21,7 @@
 double filtered1=0;
 double filtered2=0;
 
-//////////////////////////////////////////////CONSTANTS
-///////////////////Biquad #1
-const double gain_f1 = 9.6508098634474382e-01;
-const double A_f1[] = { 1.0000000000000000e+00, -1.5685816307006708e+00, 9.6424138386900704e-01};
-const double B_f1[] = { 9.6508098634474382e-01, -1.5620271748674457e+00, 9.6508103356874642e-01};
-///////////////////Biquad #2
-const double gain_f2 = 1.0000000000000000e+00;
-const double A_f2[] = { 1.0000000000000000e+00, -1.6110035772715345e+00, 9.6592170561041857e-01};
-const double B_f2[] = { 1.0000000000000000e+00, -1.6185451093340690e+00, 9.9999995106731920e-01};
-///////////////////Biquad #3
-const double gain_f3 = 9.9822442621274976e-01;
-const double A_f3[] = { 1.0000000000000000e+00, -1.9974859794229252e+00, 9.9816164132347696e-01};
-const double B_f3[] = { 9.9822442621274976e-01, -1.9958198522750312e+00, 9.9822437457251578e-01};
-///////////////////Biquad #4
-const double gain_f4 = 1.0000000000000000e+00;
-const double A_f4[] = { 1.0000000000000000e+00, -1.6110035772715345e+00, 9.6592170561041857e-01};
-const double B_f4[] = { 1.0000000000000000e+00, -1.6185451093340690e+00, 9.9999995106731920e-01};
-///////////////////Biquad #5
-const double gain_f5 = 9.5654322555687676e-01;
-const double A_f5[] = { 1.0000000000000000e+00, -1.9111970674260732e+00, 9.1497583480143385e-01};
-const double B_f5[] = { 9.5654322555687676e-01, -1.9130864511137535e+00, 9.5654322555687676e-01};
-///////////////////Biquad #6
-const double gain_f6 = 3.3442551676254872e-06;
-const double A_f6[] = { 1.0000000000000000e+00, -1.8427059736361620e+00, 8.4985824865523585e-01};
-const double B_f6[] = { 3.3442551676254872e-06,  6.6885105403474005e-06, 3.3442552150528207e-06};
-///////////////////Biquad #7
-const double gain_f7 = 1.0000000000000000e+00;
-const double A_f7[] = { 1.0000000000000000e+00, -1.9274673141071310e+00, 9.3494858161147065e-01};
-const double B_f7[] = { 1.0000000000000000e+00,  1.9999999386720257e+00 , 9.9999998581827421e-01};
-
-
-////////////////////////////////////////////ARRAYS TO VARIABLES
-/////////////////Biquad #1
-const double a1_f1 = gain_f1*A_f1[1],
-             a2_f1 = gain_f1*A_f1[2],
-             b0_f1 = gain_f1*B_f1[0],
-             b1_f1 = gain_f1*B_f1[1],
-             b2_f1 = gain_f1*B_f1[2]; //filter coefficients filter 1
-double v1_f1_emg1=0 ,
-       v2_f1_emg1=0 ,
-       v1_f1_emg2=0 ,
-       v2_f1_emg2=0;//storage variables filter 1
-
-/////////////////Biquad #2
-const double a1_f2 = gain_f2*A_f2[1],
-             a2_f2 = gain_f2*A_f2[2],
-             b0_f2 = gain_f2*B_f2[0],
-             b1_f2 = gain_f2*B_f2[1],
-             b2_f2 = gain_f2*B_f2[2]; //filter coefficients filter 2
-double v1_f2_emg1=0 ,
-       v2_f2_emg1=0 ,
-       v1_f2_emg2=0 ,
-       v2_f2_emg2=0;//storage variables filter 2
-
-/////////////////Biquad #3
-const double a1_f3 = gain_f3*A_f3[1],
-             a2_f3 = gain_f3*A_f3[2],
-             b0_f3 = gain_f3*B_f3[0],
-             b1_f3 = gain_f3*B_f3[1],
-             b2_f3 = gain_f3*B_f3[2]; //filter coefficients filter 3
-double v1_f3_emg1=0 ,
-       v2_f3_emg1=0 ,
-       v1_f3_emg2=0 ,
-       v2_f3_emg2=0;//storage variables filter 3
-
-/////////////////Biquad #4
-const double a1_f4 = gain_f4*A_f4[1],
-             a2_f4 = gain_f4*A_f4[2],
-             b0_f4 = gain_f4*B_f4[0],
-             b1_f4 = gain_f4*B_f4[1],
-             b2_f4 = gain_f4*B_f4[2]; //filter coefficients filter 4
-double v1_f4_emg1=0 ,
-       v2_f4_emg1=0 ,
-       v1_f4_emg2=0 ,
-       v2_f4_emg2=0;//storage variables filter 4
-
-/////////////////Biquad #5
-const double a1_f5 = gain_f5*A_f5[1],
-             a2_f5 = gain_f5*A_f5[2],
-             b0_f5 = gain_f5*B_f5[0],
-             b1_f5 = gain_f5*B_f5[1],
-             b2_f5 = gain_f5*B_f5[2]; //filter coefficients filter 5
-double v1_f5_emg1=0 ,
-       v2_f5_emg1=0 ,
-       v1_f5_emg2=0 ,
-       v2_f5_emg2=0;//storage variables filter 5
-
-/////////////////Biquad #6
-const double a1_f6 = gain_f6*A_f6[1],
-             a2_f6 = gain_f6*A_f6[2],
-             b0_f6 = gain_f6*B_f6[0],
-             b1_f6 = gain_f6*B_f6[1],
-             b2_f6 = gain_f6*B_f6[2]; //filter coefficients filter 6
-double v1_f6_emg1=0 ,
-       v2_f6_emg1=0 ,
-       v1_f6_emg2=0 ,
-       v2_f6_emg2=0;//storage variables filter 6
-
-/////////////////Biquad #7
-const double a1_f7 = gain_f7*A_f7[1],
-             a2_f7 = gain_f7*A_f7[2],
-             b0_f7 = gain_f7*B_f7[0],
-             b1_f7 = gain_f7*B_f7[1],
-             b2_f7 = gain_f7*B_f7[2]; //filter coefficients filter 7
-double v1_f7_emg1=0 ,
-       v2_f7_emg1=0 ,
-       v1_f7_emg2=0 ,
-       v2_f7_emg2=0;//storage variables filter 7
+#include "filtervalues.h"
 
 
 /////////////////////////GO FLAGS AND ACIVATION FUNCTIONS