control for robotic arm that can play chess using a granular gripper

Dependencies:   Encoder mbed HIDScope Servo MODSERIAL

Fork of chessRobot by a steenbeek

Committer:
annesteenbeek
Date:
Wed Oct 07 20:55:28 2015 +0200
Revision:
32:2006977785f5
Parent:
31:8fbee6c92753
Child:
39:41635b1b11de
added buttons and leds for case switching and added servo

Who changed what in which revision?

UserRevisionLine numberNew contents of line
annesteenbeek 12:61759f94c07a 1 #include "mbed.h"
annesteenbeek 13:4837b36b9a68 2 #include "config.h" // settings and pin configurations
annesteenbeek 13:4837b36b9a68 3 #include "actuators.h"
annesteenbeek 15:5fa388ba22cb 4 #include "buttons.h"
annesteenbeek 25:874675516927 5 #include "debug.h"
annesteenbeek 6:b957d8809e7c 6
annesteenbeek 12:61759f94c07a 7
annesteenbeek 30:a20f16bf8dda 8 Ticker switches, debug, motor;
annesteenbeek 30:a20f16bf8dda 9 volatile bool switches_go=false, debug_go=false, motor_go=false;
annesteenbeek 0:525558a26464 10
annesteenbeek 30:a20f16bf8dda 11 void switches_activate(){switches_go=true;};
annesteenbeek 30:a20f16bf8dda 12 void debug_activate(){debug_go=true;};
annesteenbeek 30:a20f16bf8dda 13 void motor_activate(){motor_go=true;};
annesteenbeek 29:e4f3455aaa0b 14
annesteenbeek 5:73bfad06b775 15 int main(){
annesteenbeek 26:0a9e4147a31a 16 motorInit();
annesteenbeek 32:2006977785f5 17 // calibrateMotors();
annesteenbeek 29:e4f3455aaa0b 18
annesteenbeek 30:a20f16bf8dda 19 switches.attach(&switches_activate, 0.19f);
annesteenbeek 30:a20f16bf8dda 20 debug.attach(&debug_activate, 0.21f);
annesteenbeek 30:a20f16bf8dda 21 motor.attach(&motor_activate, 0.2f);
annesteenbeek 32:2006977785f5 22
annesteenbeek 0:525558a26464 23 while (true) {
annesteenbeek 3:47c76be6d402 24 // readEMG();
annesteenbeek 3:47c76be6d402 25 // servoControl();
annesteenbeek 30:a20f16bf8dda 26 if(switches_go){
annesteenbeek 30:a20f16bf8dda 27 switches_go=false;
annesteenbeek 30:a20f16bf8dda 28 checkSwitches();
annesteenbeek 30:a20f16bf8dda 29 }
annesteenbeek 30:a20f16bf8dda 30 if(debug_go){
annesteenbeek 30:a20f16bf8dda 31 debug_go=false;
annesteenbeek 30:a20f16bf8dda 32 debugProcess();
annesteenbeek 30:a20f16bf8dda 33 }
annesteenbeek 30:a20f16bf8dda 34 if(motor_go){
annesteenbeek 30:a20f16bf8dda 35 motor_go=false;
annesteenbeek 30:a20f16bf8dda 36 motorControl();
annesteenbeek 30:a20f16bf8dda 37 }
annesteenbeek 0:525558a26464 38 }
annesteenbeek 0:525558a26464 39 }