Remco Dasselaar / Mbed 2 deprecated TotalControlEmg2

Dependencies:   HIDScope MODSERIAL QEI TextLCD mbed

Fork of TotalControlEmg2 by Remco Dasselaar

Committer:
Bartvaart
Date:
Fri Oct 09 11:27:58 2015 +0000
Revision:
17:cfe44346645c
Parent:
16:8f175d2a472f
Child:
18:eec0880fcded
Bepaald een max en minimum (voor kalibratie) en gaat dan gewone programma runnen

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Bartvaart 0:557b1ff83a8a 1 #include "mbed.h"
Bartvaart 7:040591b3f019 2 #include "HIDScope.h"
Bartvaart 5:b400209df739 3 #include "Filterdesigns.h"
Bartvaart 17:cfe44346645c 4 #include "Kalibratie.h"
Bartvaart 17:cfe44346645c 5 #include "MODSERIAL.h" //bugfix
Bartvaart 0:557b1ff83a8a 6
Bartvaart 7:040591b3f019 7 AnalogIn emg(A0); //Analog input van emg kabels
Bartvaart 16:8f175d2a472f 8 HIDScope scope(2); //2 scopes
Bartvaart 0:557b1ff83a8a 9 Ticker EMGticker;
Bartvaart 17:cfe44346645c 10 MODSERIAL pc(USBTX, USBRX); //bugfix
Bartvaart 17:cfe44346645c 11 DigitalOut LedBlue(LED3);
Bartvaart 0:557b1ff83a8a 12
Bartvaart 0:557b1ff83a8a 13 //Sample frequentie
Bartvaart 15:c1a8f28d6583 14 double Fs = 500; //Hz
Bartvaart 1:98be4152a539 15 double t = 1/ Fs; // voor EMGticker
Bartvaart 5:b400209df739 16
Bartvaart 17:cfe44346645c 17 bool readymax = 0;
Bartvaart 17:cfe44346645c 18 bool readymin = 0;
Bartvaart 7:040591b3f019 19
Bartvaart 6:8197f9446daf 20 void EMGfilter(){
Bartvaart 7:040591b3f019 21 //uitlezen emg signaal
Bartvaart 7:040591b3f019 22 double u = emg.read();
Bartvaart 17:cfe44346645c 23 double y = Filterdesigns(u);
Bartvaart 16:8f175d2a472f 24 // pc.printf("%f \n",y); //bugfix
Bartvaart 7:040591b3f019 25 // Plotten in HIDscope
Bartvaart 15:c1a8f28d6583 26 scope.set(0,u); //ongefilterde waarde naar scope 1
Bartvaart 15:c1a8f28d6583 27 scope.set(1,y); //gefilterde waarde naar scope 2
Bartvaart 7:040591b3f019 28 scope.send(); //stuur de waardes naar HIDscope
Bartvaart 6:8197f9446daf 29 }
Bartvaart 0:557b1ff83a8a 30
Bartvaart 0:557b1ff83a8a 31
Bartvaart 0:557b1ff83a8a 32 int main(){
Bartvaart 17:cfe44346645c 33 LedBlue = 1;
Bartvaart 17:cfe44346645c 34 Init();
Bartvaart 17:cfe44346645c 35 double ymax = KalibratieMax(readymax);
Bartvaart 17:cfe44346645c 36 double ymin = KalibratieMin(readymin);
Bartvaart 17:cfe44346645c 37
Bartvaart 17:cfe44346645c 38 pc.printf("ymax = %f en ymin = %f \n",ymax, ymin); //bugfix
Bartvaart 17:cfe44346645c 39
Bartvaart 17:cfe44346645c 40 while(readymax == 1 && readymin == 1){
Bartvaart 17:cfe44346645c 41 LedBlue = 0;
Bartvaart 17:cfe44346645c 42 EMGticker.attach(&EMGfilter, t); //500H
Bartvaart 17:cfe44346645c 43 while(1){}
Bartvaart 17:cfe44346645c 44 }
Bartvaart 0:557b1ff83a8a 45 }
Bartvaart 0:557b1ff83a8a 46