Created
August 15, 2017 03:37
-
-
Save ShawnHymel/a12e49cc3b9baec5c56ccd9b1d62162e to your computer and use it in GitHub Desktop.
Combat Bot Test 01
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| const int STBY_PIN = 9; | |
| const int AIN1_PIN = 2; | |
| const int AIN2_PIN = 4; | |
| const int APWM_PIN = 5; | |
| const int BIN1_PIN = 7; | |
| const int BIN2_PIN = 8; | |
| const int BPWM_PIN = 6; | |
| void setup() { | |
| // Configure pins | |
| pinMode(STBY_PIN, OUTPUT); | |
| pinMode(AIN1_PIN, OUTPUT); | |
| pinMode(AIN2_PIN, OUTPUT); | |
| pinMode(APWM_PIN, OUTPUT); | |
| pinMode(BIN1_PIN, OUTPUT); | |
| pinMode(BIN2_PIN, OUTPUT); | |
| pinMode(BPWM_PIN, OUTPUT); | |
| // Enable motor driver | |
| digitalWrite(STBY_PIN, HIGH); | |
| } | |
| void loop() { | |
| drive(100, 100); | |
| delay(1000); | |
| drive(-255, -255); | |
| delay(1000); | |
| drive(0, 0); | |
| delay(1000); | |
| } | |
| void drive(int speed_a, int speed_b) { | |
| // Limit speed between -255 and 255 | |
| speed_a = constrain(speed_a, -255, 255); | |
| speed_b = constrain(speed_b, -255, 255); | |
| // Set direction for motor A | |
| if ( speed_a == 0 ) { | |
| digitalWrite(AIN1_PIN, LOW); | |
| digitalWrite(AIN2_PIN, LOW); | |
| } else if ( speed_a > 0 ) { | |
| digitalWrite(AIN1_PIN, HIGH); | |
| digitalWrite(AIN2_PIN, LOW); | |
| } else { | |
| digitalWrite(AIN1_PIN, LOW); | |
| digitalWrite(AIN2_PIN, HIGH); | |
| } | |
| // Set direction for motor B | |
| if ( speed_b == 0 ) { | |
| digitalWrite(BIN1_PIN, LOW); | |
| digitalWrite(BIN2_PIN, LOW); | |
| } else if ( speed_b > 0 ) { | |
| digitalWrite(BIN1_PIN, HIGH); | |
| digitalWrite(BIN2_PIN, LOW); | |
| } else { | |
| digitalWrite(BIN1_PIN, LOW); | |
| digitalWrite(BIN2_PIN, HIGH); | |
| } | |
| // Set speed | |
| analogWrite(APWM_PIN, abs(speed_a)); | |
| analogWrite(BPWM_PIN, abs(speed_b)); | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment