Skip to content

Instantly share code, notes, and snippets.

@clodo
Created July 28, 2013 02:09
Show Gist options
  • Save clodo/6097055 to your computer and use it in GitHub Desktop.
Save clodo/6097055 to your computer and use it in GitHub Desktop.
Franky v1
#include <MotorShield.h>
MS_DCMotor motorA(MOTOR_A);
MS_DCMotor motorB(MOTOR_B);
const int buttonFordwardMotorAPin = 4;
const int buttonBackwardMotorAPin = 5;
const int buttonFordwardMotorBPin = 6;
const int buttonBackwardMotorBPin = 7;
int buttonFordwardMotorAState = 0;
int buttonBackwardMotorAState = 0;
int buttonFordwardMotorBState = 0;
int buttonBackwardMotorBState = 0;
void setup() {
// engage the motor's brake
motorA.run(BRAKE);
motorA.setSpeed(40);
motorB.run(BRAKE);
motorB.setSpeed(40);
pinMode(buttonFordwardMotorAPin, INPUT);
pinMode(buttonBackwardMotorAPin, INPUT);
pinMode(buttonFordwardMotorBPin, INPUT);
pinMode(buttonBackwardMotorBPin, INPUT);
}
void loop() {
buttonFordwardMotorAState = digitalRead(buttonFordwardMotorAPin);
buttonBackwardMotorAState = digitalRead(buttonBackwardMotorAPin);
buttonFordwardMotorBState = digitalRead(buttonFordwardMotorBPin);
buttonBackwardMotorBState = digitalRead(buttonBackwardMotorBPin);
if (buttonFordwardMotorAState == 0 && buttonBackwardMotorAState == 0) {
motorA.run(BRAKE);
//motorB.run(BRAKE);
}else{
if (buttonFordwardMotorAState != 0) {
if (buttonFordwardMotorAState == HIGH) {
motorA.run(FORWARD|RELEASE);
//motorB.run(FORWARD|RELEASE);
}
}
if (buttonBackwardMotorAState != 0) {
if (buttonBackwardMotorAState == HIGH) {
motorA.run(BACKWARD|RELEASE);
//motorB.run(BACKWARD|RELEASE);
}
}
}
if (buttonFordwardMotorBState == 0 && buttonBackwardMotorBState == 0) {
motorB.run(BRAKE);
}else{
if (buttonFordwardMotorBState != 0) {
if (buttonFordwardMotorBState == HIGH) {
motorB.run(FORWARD|RELEASE);
}
}
if (buttonBackwardMotorBState != 0) {
if (buttonBackwardMotorBState == HIGH) {
motorB.run(BACKWARD|RELEASE);
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment