//// TAMEGA328 CI 1 // //const int M1L = 0; // Input Motor 1, LEFT //const int M1R = 1; // Input Motor 1, RIGHT // //const int M2L = 2; // Input Motor 2, LEFT //const int M2R = 3; // Input Motor 2, RIGHT // //const int M3L = 4; // Input Motor 3, LEFT //const int M3R = 5; // Input Motor 3, RIGHT // TAMEGA328 CI 2 const int M4L = 0; // Input Motor 4, LEFT const int M4R = 1; // Input Motor 4, RIGHT const int M5L = 2; // Input Motor 5, LEFT const int M5R = 3; // Input Motor 5, RIGHT const int M6L = 4; // Input Motor 6, LEFT const int M6R = 5; // Input Motor 6, RIGHT // TAMEGA328 CI 2 const int Ea = 10; // Enable A for L298 CI 3 const int Eb = 11; // Enable B for L298 CI 3 const int Eb2 = 9; // Enable B for L298 CI 2 int BUFFER; int POT = A0; // Input speed motor set in the code to be from 50% to 100% int PWM = 0; int MAX = 256; // Input speed motor set to 100% int DELAY = 1;// Input delay low speed motor void setup() { pinMode(M4L, INPUT); pinMode(M4R, INPUT); pinMode(M5L, INPUT); pinMode(M5R, INPUT); pinMode(M6L, INPUT); pinMode(M6R, INPUT); pinMode(Ea, OUTPUT); pinMode(Eb, OUTPUT); pinMode(Eb2, OUTPUT); pinMode(POT, INPUT); } void loop() { int buttonState_M4L = 0; // current state of the INPUT int buttonState_M4R = 0; // current state of the INPUT int buttonState_M5L = 0; // current state of the INPUT int buttonState_M5R = 0; // current state of the INPUT int buttonState_M6L = 0; // current state of the INPUT int buttonState_M6R = 0; // current state of the INPUT buttonState_M4L = digitalRead(M4L); // read the pushbutton input M4L buttonState_M4R = digitalRead(M4R); // read the pushbutton input M4R buttonState_M5L = digitalRead(M5L); // read the pushbutton input M5L buttonState_M5R = digitalRead(M5R); // read the pushbutton input M5R buttonState_M6L = digitalRead(M6L); // read the pushbutton input M6L buttonState_M6R = digitalRead(M6R); // read the pushbutton input M6R BUFFER = analogRead(POT); PWM = 256-(BUFFER/8); // speed motor set to be from 50% to 100% // 1 TAMEGA328 CI 2 for M4L if (buttonState_M4L == HIGH) { analogWrite(Ea, PWM); delay (DELAY); analogWrite(MAX, PWM); } else { analogWrite(M4L, 0); } // 2 TAMEGA328 CI 2 for M4R if (buttonState_M4R == HIGH) { analogWrite(Ea, PWM); delay (DELAY); analogWrite(MAX, PWM); } else { analogWrite(M4R, 0); } // 3 TAMEGA328 CI 2 for M5L if (buttonState_M5L == HIGH) { analogWrite(Eb, PWM); delay (DELAY); analogWrite(MAX, PWM); } else { analogWrite(M5L, 0); } // 4 TAMEGA328 CI 2 for M5R if (buttonState_M5L == HIGH) { analogWrite(Eb, PWM); delay (DELAY); analogWrite(MAX, PWM); } else { analogWrite(M5R, 0); } // 5 TAMEGA328 CI 2 for M6L if (buttonState_M6L == HIGH) { analogWrite(Eb2, PWM); delay (DELAY); analogWrite(MAX, PWM); } else { analogWrite(M6L, 0); } // 6 TAMEGA328 CI 2 for M6R if (buttonState_M6R == HIGH) { analogWrite(Eb2, PWM); delay (DELAY); analogWrite(MAX, PWM); } else { analogWrite(M6R, 0); } // Delay a little bit to avoid bouncing delay(50); }