Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: HIDScope mbed-dsp mbed
Fork of P5-2 by
Revision 28:c40dc343033f, committed 2014-10-16
- Comitter:
- DominiqueC
- Date:
- Thu Oct 16 19:30:22 2014 +0000
- Parent:
- 27:2ccef1104c16
- Commit message:
- werkend filter, met absoluteren en gain van 10
Changed in this revision
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/main.cpp Thu Oct 16 19:17:00 2014 +0000
+++ b/main.cpp Thu Oct 16 19:30:22 2014 +0000
@@ -30,7 +30,7 @@
float highpass_states[4];
//constants for 80Hz lowpass
arm_biquad_casd_df1_inst_f32 lowpass;
-float lowpass_const[] = {0.6389437261127493, 1.2778874522254986, 0.6389437261127493, 1.1429772843080919, 0.41279762014290533};
+float lowpass_const[] = {0.638945525159022, 1.277891050318045, 0.638945525159022, -1.142980502539901, -0.412801598096189};
//state values
float lowpass_states[4];
@@ -39,35 +39,26 @@
{
/*variable to store value in*/
uint16_t emg_value;
- float filtered_emg;
+ float emg_value_f32;
float filtered_emg_notch;
float filtered_emg_notch_highpass;
float filtered_emg_notch_highpass_lowpass;
- float filtered_emg_abs;
- float emg_value_f32;
- float filtered_emg_lowpass;
+ float filtered_emg_eindsignaal_abs;
/*put raw emg value both in red and in emg_value*/
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_value_f32, &filtered_emg, 1 );
- //filtered_emg_abs = fabs(filtered_emg);
- //arm_biquad_cascade_df1_f32(¬ch, &filtered_emg, &filtered_emg_notch, 1 );
- //arm_biquad_cascade_df1_f32(&lowpass, &filtered_emg_notch, &filtered_emg_lowpass, 1 );
-
arm_biquad_cascade_df1_f32(¬ch, &emg_value_f32, &filtered_emg_notch, 1 );
arm_biquad_cascade_df1_f32(&highpass, &filtered_emg_notch, &filtered_emg_notch_highpass, 1 );
arm_biquad_cascade_df1_f32(&lowpass, &filtered_emg_notch_highpass, &filtered_emg_notch_highpass_lowpass, 1 );
+ filtered_emg_eindsignaal_abs = 10*fabs(filtered_emg_notch_highpass_lowpass);
- scope.set(0,emg_value_f32); //uint value
- //scope.set(1,filtered_emg); //processed float
+ scope.set(0,emg_value_f32);
scope.set(1,filtered_emg_notch);
scope.set(2,filtered_emg_notch_highpass);
scope.set(3,filtered_emg_notch_highpass_lowpass);
- //scope.set(3,filtered_emg_abs);
- //scope.set(4,filtered_emg_lowpass);
- //scope.set(5,emg_value);
+ scope.set(4,filtered_emg_eindsignaal_abs);
scope.send();
}
