Er is uitleg bijgeschreven en pwm_percentage heeft een andere naam

Dependencies:   Encoder HIDScope MODSERIAL mbed-dsp mbed

Fork of Lampje_EMG_Gr6 by Iris van Leeuwen

Files at this revision

API Documentation at this revision

Comitter:
irisl
Date:
Thu Oct 23 13:28:04 2014 +0000
Parent:
12:9e6e49af9304
Child:
14:257026c95f22
Commit message:
Verschillende presets voor LED bij aan spannen spier(en)

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
--- 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;
+            }
 
 
-            }
         }
     }
 }
 
 
+