werkend filter: 50 hz notch 20 hz hoogdoorlaat 80 hz laagdoorlaat geabsoluteerd vermenigvuldigd met 10

Dependencies:   HIDScope mbed-dsp mbed

Fork of Project5-filtering2 by Dominique Clevers

Files at this revision

API Documentation at this revision

Comitter:
Daanmk
Date:
Fri Oct 10 08:34:27 2014 +0000
Parent:
5:b96b7b8facbf
Child:
7:46806eb44597
Commit message:
voor dominique

Changed in this revision

Encoder.lib Show annotated file Show diff for this revision Revisions of this file
MODSERIAL.lib 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
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Encoder.lib	Fri Oct 10 08:34:27 2014 +0000
@@ -0,0 +1,1 @@
+https://mbed.org/users/vsluiter/code/Encoder/#2dd7853c911a
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/MODSERIAL.lib	Fri Oct 10 08:34:27 2014 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/Sissors/code/MODSERIAL/#180e968a751e
--- a/main.cpp	Thu Oct 09 13:59:08 2014 +0000
+++ b/main.cpp	Fri Oct 10 08:34:27 2014 +0000
@@ -16,7 +16,7 @@
 //Define objects
 AnalogIn    emg0(PTB0); //Biceps
 AnalogIn    emg1(PTB1); //Triceps
-HIDScope scope(4);
+HIDScope scope(2);
  
 arm_biquad_casd_df1_inst_f32 notch;
 //constants for 50Hz notch
@@ -32,32 +32,21 @@
 void looper()
 {
     /*variable to store value in*/    
-    uint16_t emg_value0;
-    uint16_t emg_value1;
-    float filtered_emg0;
-    float filtered_emg1;
-    float emg_value0_f32;
-    float emg_value1_f32;
+    uint16_t emg_value;
+    float filtered_emg;
+    float emg_value_f32;
     /*put raw emg value both in red and in emg_value*/
-    emg_value0 = emg0.read_u16(); // read direct ADC result, converted to 16 bit integer (0..2^16 = 0..65536 = 0..3.3V) BICEPS
-    emg_value0_f32 = emg0.read();
-    emg_value1 = emg1.read_u16(); // read direct ADC result, converted to 16 bit integer (0..2^16 = 0..65536 = 0..3.3V) TRICEPS
-    emg_value1_f32 = emg1.read();
+    emg_value = emg0.read_u16(); // read direct ADC result, converted to 16 bit integer (0..2^16 = 0..65536 = 0..3.3V)
+    emg_value_f32 = emg0.read();
  
     //process emg
-    arm_biquad_cascade_df1_f32(&highpass, &emg_value0_f32, &filtered_emg0, 1 );
-    filtered_emg0 = fabs(filtered_emg0);
-    arm_biquad_cascade_df1_f32(&notch, &filtered_emg0, &filtered_emg0, 1 );
-    
-    arm_biquad_cascade_df1_f32(&highpass, &emg_value1_f32, &filtered_emg1, 1 );
-    filtered_emg1 = fabs(filtered_emg1);
-    arm_biquad_cascade_df1_f32(&notch, &filtered_emg1, &filtered_emg1, 1 );
+    arm_biquad_cascade_df1_f32(&highpass, &emg_value_f32, &filtered_emg, 1 );
+    filtered_emg = fabs(filtered_emg);
+    arm_biquad_cascade_df1_f32(&notch, &filtered_emg, &filtered_emg, 1 );
     
     /*send value to PC. */
-    scope.set(0,emg_value0);     //uint value
-    scope.set(1,filtered_emg0);  //processed float
-    scope.set(2,emg_value1);     //uint value
-    scope.set(3,filtered_emg1);  //processed float
+    scope.set(0,emg_value);     //uint value
+    scope.set(1,filtered_emg);  //processed float
     scope.send();
  
 }