// Two Motors controlled by Two Buttons - PIN Reduction //
// Motor A (Original)
const int RPWM_A = 5,
LPWM_A = 6,
R_EN_A = 7,
L_EN_A = 7,
b1 = 2; // Button 1
// Motor B (New)
const int RPWM_B = 9,
LPWM_B = 10,
R_EN_B = 7,
L_EN_B = 7,
b2 = 3; // Button 2
void setup() {
// Motor A pins
pinMode(RPWM_A, OUTPUT);
pinMode(LPWM_A, OUTPUT);
pinMode(R_EN_A, OUTPUT);
pinMode(L_EN_A, OUTPUT);
pinMode(b1, INPUT);
digitalWrite(R_EN_A, HIGH);
digitalWrite(L_EN_A, HIGH);
// Motor B pins
pinMode(RPWM_B, OUTPUT);
pinMode(LPWM_B, OUTPUT);
pinMode(R_EN_B, OUTPUT);
pinMode(L_EN_B, OUTPUT);
pinMode(b2, INPUT);
digitalWrite(R_EN_B, HIGH);
digitalWrite(L_EN_B, HIGH);
}
void loop() {
// Stop both motors by default
analogWrite(RPWM_A, 0);
analogWrite(LPWM_A, 0);
analogWrite(RPWM_B, 0);
analogWrite(LPWM_B, 0);
// Run Motor A while button 1 is pressed
while (digitalRead(b1) == HIGH) {
analogWrite(RPWM_A, 200);
analogWrite(LPWM_A, 0);
}
// Run Motor B while button 2 is pressed
while (digitalRead(b2) == HIGH) {
analogWrite(RPWM_B, 0);
analogWrite(LPWM_B, 200);
}
}