Dependencies: Biquad HIDScope mbed
Revision 1:72929ae055e4, committed 2015-10-12
- 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