kalibratie

Dependencies:   MODSERIAL mbed

Files at this revision

API Documentation at this revision

Comitter:
LBeen
Date:
Tue Nov 01 08:18:49 2016 +0000
Parent:
0:f8435641578d
Commit message:
Kalibratie van de potmeter, om 3 keer een SpierMax te krijgen, doorschuiven met gebruik van knopje

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/main.cpp	Fri Oct 21 15:05:35 2016 +0000
+++ b/main.cpp	Tue Nov 01 08:18:49 2016 +0000
@@ -1,29 +1,82 @@
 #include "mbed.h"
 #include "math.h"
 #include "MODSERIAL.h"
-#include "algorithm.h"
 
 AnalogIn potmeter(A0);
 MODSERIAL pc(USBTX, USBRX);
+InterruptIn knopje1 (D2);
 
 float signaal;
 float maximum;
-float SpierMax;
+float Spier1Max;
+float Spier2Max;
+float Spier3Max;
+int x = 0;
+bool y = true;
+
 
-void GetMaximum()
+float GetMaximum()
 {
-    signaal = potmeter.read();
-    maximum = max_element(signaal); //fmax werkt niet :'(
+    maximum = potmeter.read();
+    for(int i = 0; i<250000;i++)
+    {
+        signaal = potmeter.read();
+        if(signaal>maximum)
+        {
+            maximum = signaal;
+        }
+        else
+        {
+            maximum = maximum;  
+        }            
+    }
     return maximum;    
 }
 
+void GoOn()
+{
+    x++;
+    y = false;
+}
+
+void StartMeting()
+{
+    switch(x)
+    {
+        case 0:
+            pc.printf("case 0\n\r");
+            y = true;
+            while(y == true) {}
+        case 1:
+            pc.printf("case 1\n\r");
+            Spier1Max = GetMaximum();
+            pc.printf("Spier1Max = %f\n\r",Spier1Max);
+            y = true;
+            while(y == true) {}
+        case 2:
+            pc.printf("case 2\n\r");
+            Spier2Max = GetMaximum();
+            pc.printf("Spier2Max = %f\n\r",Spier2Max);
+            y = true;
+            while (y == true) {}
+        case 3:
+            pc.printf("case 3\n\r");
+            Spier3Max = GetMaximum();
+            pc.printf("Spier3Max = %f\n\r",Spier3Max);
+            y = true;
+            while (y == true) {}
+        case 4:
+            pc.printf("case 4\n\r");
+            break;
+    }
+}       
+    
 int main()
 {
     pc.baud(115200);
-    while(true)
-    {
-        SpierMax = GetMaximum();
-        pc.printf("Max:%f\tPotmeter:%f/r/n",SpierMax,potmeter.read());
-        wait(1);       
-    }    
+    pc.printf("START\n\r");
+    knopje1.fall(GoOn);
+    StartMeting();
+    pc.printf("Spiermax1 = %f\n\rSpiermax2 = %f\n\rSpier3max = %f\n\r\n\n",Spier1Max,Spier2Max,Spier3Max);
+    while(true){}    
 }