Er is uitleg bijgeschreven en pwm_percentage heeft een andere naam
Dependencies: Encoder HIDScope MODSERIAL mbed-dsp mbed
Fork of Lampje_EMG_Gr6 by
Diff: main.cpp
- Revision:
- 13:493a953a2a85
- Parent:
- 12:9e6e49af9304
- Child:
- 14:257026c95f22
--- a/main.cpp Wed Oct 22 15:12:34 2014 +0000 +++ b/main.cpp Thu Oct 23 13:28:04 2014 +0000 @@ -12,7 +12,7 @@ //Define objects AnalogIn emg0(PTB1); //Analog input AnalogIn emg1(PTB2); //Analog input -HIDScope scope(4); +HIDScope scope(2); arm_biquad_casd_df1_inst_f32 lowpass_biceps; arm_biquad_casd_df1_inst_f32 lowpass_deltoid; @@ -42,8 +42,8 @@ static float number=0; total = total + filtered_biceps; number = number + 1; - if ( number == 50) { - *average = total/50; + if ( number == 500) { + *average = total/500; total = 0; number = 0; } @@ -55,8 +55,8 @@ static float number=0; total = total + filtered_input; number = number + 1; - if ( number == 50) { - *average_output = total/50; + if ( number == 500) { + *average_output = total/500; total = 0; number = 0; } @@ -106,10 +106,10 @@ /*send value to PC. */ //scope.set(0,emg_value1); //Raw EMG signal biceps //scope.set(1,emg_value2); //Raw EMG signal Deltoid - scope.set(0,filtered_biceps); //processed float biceps - scope.set(1,filtered_average_bi); //processed float deltoid - scope.set(2,filtered_deltoid); //processed float biceps - scope.set(3,filtered_average_del); //processed float deltoid + //scope.set(0,filtered_biceps); //processed float biceps + scope.set(0,filtered_average_bi); //processed float deltoid + //scope.set(2,filtered_deltoid); //processed float biceps + scope.set(1,filtered_average_del); //processed float deltoid scope.send(); } @@ -158,6 +158,27 @@ } } +void ShineGreen () +{ + myled1 = 1; + myled2 = 0; + myled3 = 1; +} + +void ShineBlue () +{ + myled1 = 1; + myled2 = 1; + myled3 = 0; +} + +void ShineRed () +{ + myled1 = 0; + myled2 = 1; + myled3 = 1; +} + int main() { pc.baud(115200); @@ -176,33 +197,34 @@ while(1) { //Loop /*Empty!*/ /*Everything is handled by the interrupt routine now!*/ - { + static float time = 0; + + time = time + 1; - while(1) { - pc.printf("Span de biceps aan om het instellen te starten"); - do { - myled1 = 1; - myled2 = 0; - myled3 = 1; - } while(filtered_biceps < 0.05); - if (filtered_deltoid > 0.05 && filtered_biceps < 0.05) { //Wanneer het EMG signaal een piek geeft wordt het volgende uitgevoerd. - myled1 = 0; - myled2 = 1; - myled3 = 1; - wait (2); - } else if (filtered_deltoid < 0.05 && filtered_biceps > 0.05) { - myled1 = 1; - myled2 = 1; - myled3 = 0; - wait (2); - //} else if (filtered_biceps < 0.05 && filtered_deltoid < 0.05) { - //break; - } + while(1) { + pc.printf("Span de biceps aan om het instellen te starten"); + do { + BlinkGreen(); + } while(filtered_average_bi < 0.02 && filtered_average_del <0.015); + if (filtered_average_del > 0.015 && filtered_average_bi < 0.02) { //Wanneer het EMG signaal een piek geeft wordt het volgende uitgevoerd. + ShineBlue(); + wait(2); + time = 0; + } + if (filtered_average_del < 0.015 && filtered_average_bi > 0.02) { + ShineGreen(); + wait(2); + time = 0; + } else if (filtered_average_del > 0.015 && filtered_average_bi > 0.02) { + ShineRed(); + wait(2); + time = 0; + } - } } } } +