Project Paint / Mbed 2 deprecated arm_control

Dependencies:   mbed QEI biquadFilter

Committer:
Jankoekenpan
Date:
Thu Nov 03 08:15:04 2016 +0000
Revision:
9:3193094ba3b2
Parent:
main.cpp@8:874fe459b10a
Child:
11:57f0ab4d0e99
cleanup and prepare for integration

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Jankoekenpan 1:7d218e9d2111 1 #include "arm.h"
Jankoekenpan 5:23c850380b86 2 #include "mbed.h"
Jankoekenpan 8:874fe459b10a 3 #include "robot.h"
Jankoekenpan 8:874fe459b10a 4 #include "filter.h"
Jankoekenpan 1:7d218e9d2111 5
Jankoekenpan 1:7d218e9d2111 6 // ====== Hardware stuff ======
Jankoekenpan 1:7d218e9d2111 7
Jankoekenpan 5:23c850380b86 8 Robot robot;
Jankoekenpan 1:7d218e9d2111 9
Jankoekenpan 5:23c850380b86 10 AnalogIn emg1(A0);
Jankoekenpan 5:23c850380b86 11 AnalogIn emg2(A1);
Jankoekenpan 1:7d218e9d2111 12
Jankoekenpan 8:874fe459b10a 13 DigitalOut red(LED_RED);
Jankoekenpan 8:874fe459b10a 14 DigitalOut green(LED_GREEN);
Jankoekenpan 8:874fe459b10a 15 DigitalOut blue(LED_BLUE);
Jankoekenpan 8:874fe459b10a 16
Jankoekenpan 8:874fe459b10a 17 //====== Constants =====
Jankoekenpan 1:7d218e9d2111 18
Jankoekenpan 9:3193094ba3b2 19 enum DirectionState{NOTHING, UP, DOWN, FORWARD, BACKWARD};
Jankoekenpan 9:3193094ba3b2 20 enum ProgramState{CALIBRATING, UPDOWN, FORBACK};
Jankoekenpan 1:7d218e9d2111 21
Jankoekenpan 8:874fe459b10a 22 const float sampleFrequency = 500;
Jankoekenpan 8:874fe459b10a 23 const float sampleTime = 1.0f/sampleFrequency;
Jankoekenpan 8:874fe459b10a 24
Jankoekenpan 8:874fe459b10a 25
Jankoekenpan 1:7d218e9d2111 26 //====== Program Variables ======
Jankoekenpan 1:7d218e9d2111 27
Jankoekenpan 1:7d218e9d2111 28 ProgramState progState;
Jankoekenpan 1:7d218e9d2111 29 DirectionState dirState;
Jankoekenpan 1:7d218e9d2111 30
Jankoekenpan 8:874fe459b10a 31
Jankoekenpan 1:7d218e9d2111 32 //====== Functions ======
Jankoekenpan 1:7d218e9d2111 33
Jankoekenpan 1:7d218e9d2111 34
Jankoekenpan 1:7d218e9d2111 35 void calibrate(void) {
Jankoekenpan 5:23c850380b86 36 //Calibrate function -- blocking.
Jankoekenpan 8:874fe459b10a 37 //Calculates and sets both emg1threshold and emg2 threshold
Jankoekenpan 8:874fe459b10a 38
Jankoekenpan 8:874fe459b10a 39
Jankoekenpan 1:7d218e9d2111 40
Jankoekenpan 1:7d218e9d2111 41 }
Jankoekenpan 1:7d218e9d2111 42
Jankoekenpan 9:3193094ba3b2 43 void run() {
Jankoekenpan 9:3193094ba3b2 44 //Run function -- blocking
Jankoekenpan 9:3193094ba3b2 45 //runs the calibrated robot
Jankoekenpan 9:3193094ba3b2 46
Jankoekenpan 9:3193094ba3b2 47 }
Jankoekenpan 9:3193094ba3b2 48
Jankoekenpan 1:7d218e9d2111 49
Jankoekenpan 1:7d218e9d2111 50 int main() {
Jankoekenpan 1:7d218e9d2111 51 progState = CALIBRATING;
Jankoekenpan 9:3193094ba3b2 52
Jankoekenpan 1:7d218e9d2111 53 calibrate();
Jankoekenpan 1:7d218e9d2111 54
Jankoekenpan 9:3193094ba3b2 55 progState = UPDOWN;
Jankoekenpan 9:3193094ba3b2 56
Jankoekenpan 9:3193094ba3b2 57 run();
Jankoekenpan 1:7d218e9d2111 58
Jankoekenpan 1:7d218e9d2111 59 while(true);
Jankoekenpan 1:7d218e9d2111 60 return 0;
Jankoekenpan 1:7d218e9d2111 61 }