State machine with EMG functions and parameters

Dependencies:   biquadFilter FastPWM HIDScope MODSERIAL mbed

Fork of StateMachine by Tommie Verouden

Committer:
tverouden
Date:
Wed Oct 31 10:30:41 2018 +0000
Revision:
0:c0c35b95765f
Child:
1:d5ff787228fa
Started preparation

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tverouden 0:c0c35b95765f 1 // ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡ PREPARATION ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
tverouden 0:c0c35b95765f 2 // Libraries
tverouden 0:c0c35b95765f 3 #include "mbed.h"
tverouden 0:c0c35b95765f 4 #include "biquadFilter.h"
tverouden 0:c0c35b95765f 5 #include "FastPWM.h"
tverouden 0:c0c35b95765f 6 #include "HIDScope.h"
tverouden 0:c0c35b95765f 7 #include "MODSERIAL.h"
tverouden 0:c0c35b95765f 8
tverouden 0:c0c35b95765f 9 // Inputs & outputs
tverouden 0:c0c35b95765f 10 DigitalOut redled(LED_RED,1); // red LED K64F
tverouden 0:c0c35b95765f 11 DigitalOut greenled(LED_GREEN,1); // green LED K64F
tverouden 0:c0c35b95765f 12 DigitalOut blueled(LED_BLUE,1); // blue LED K64F
tverouden 0:c0c35b95765f 13 InterruptIn buttonbio1(D0); // button 1 BioRobotics shield
tverouden 0:c0c35b95765f 14 InterruptIn buttonbio2(D1); // button 2 BioRobotics shield
tverouden 0:c0c35b95765f 15 InterruptIn buttonK64F(SW3); // button on K64F
tverouden 0:c0c35b95765f 16 InterruptIn emergencybutton(SW2); // emergency button on K64F
tverouden 0:c0c35b95765f 17
tverouden 0:c0c35b95765f 18 // Define & initialise state machine
tverouden 0:c0c35b95765f 19 enum states { waiting, calibratingMotors, calibratingEMGx, calibratingEMGy,
tverouden 0:c0c35b95765f 20 homing, operating, flipping, failure, demo };
tverouden 0:c0c35b95765f 21 states currentState = waiting; // start in waiting mode
tverouden 0:c0c35b95765f 22 bool changeState = true; // initialise the first state