![](/media/cache/group/default_image.jpg.50x50_q85.jpg)
control for robotic arm that can play chess using a granular gripper
Dependencies: Encoder mbed HIDScope Servo MODSERIAL
Fork of chessRobot by
Diff: buttons.cpp
- Revision:
- 40:0d88aa25a57d
- Parent:
- 39:41635b1b11de
- Child:
- 41:d5c3055a7bc7
--- a/buttons.cpp Thu Oct 08 00:39:57 2015 +0200 +++ b/buttons.cpp Thu Oct 08 00:53:33 2015 +0200 @@ -17,8 +17,8 @@ AnalogIn button1(button1Pin); AnalogIn button2(button2Pin); -float prevState1 = 1; -float prevState2 = 1; +float button1Pressed = false; +float button2Pressed = false; int actuatorState = 0; float pot1Val = 0; @@ -31,17 +31,25 @@ // button 1 to enable/disable actuators // button 2 to switch between states - if(button1.read() == 0 && prevState1 != 0){ - motorsEnable = !motorsEnable; + if(button1.read() == 0){ + if (button1Pressed != true){ + motorsEnable = !motorsEnable; + button1Pressed = true; + } + }else{ + button1Pressed = false; } - if(button2.read() == 0 && prevState2 != 0){ - actuatorState++; - if(actuatorState==3){ - actuatorState = 0; + if(button2.read() == 0){ + if(button2Pressed != true){ + actuatorState++; + if(actuatorState==3){ + actuatorState = 0; + } + button2Pressed = true; } + }else{ + button2Pressed = false; } - prevState1 = button1.read(); - prevState2 = button2.read(); pot1Val = pot1.read(); pot2Val = pot2.read();