#define inA1 23
#define inA2 22
#define inB1 19
#define inB2 18
#define EnA 21
#define EnB 17
int speed_motor = 10;
void setup()
{
pinMode(inA1, OUTPUT);
pinMode(inA2, OUTPUT);
pinMode(inB1, OUTPUT);
pinMode(inB2, OUTPUT);
Serial.begin(9600);
}
void loop()
{
motor_control();
}
void motor_control()
{
analogWrite(EnB,speed_motor); //Left Motor Speed
analogWrite(EnA,speed_motor); //Right Motor Speed
forward();
// reverse();
// reverse()
// left()
// right()
}
void forward()
{
/*The pin numbers and high, low values might be different depending on your connections */
digitalWrite(inA1, HIGH);
digitalWrite(inA2, LOW);
digitalWrite(inB1, HIGH);
digitalWrite(inB2, LOW);
}
void reverse()
{
/*The pin numbers and high, low values might be different depending on your connections */
digitalWrite(inA1, LOW);
digitalWrite(inA2, HIGH);
digitalWrite(inB1, LOW);
digitalWrite(inB2, HIGH);
}
void left()
{
/*The pin numbers and high, low values might be different depending on your connections */
digitalWrite(inA1, HIGH);
digitalWrite(inA2, LOW);
digitalWrite(inB1, LOW);
digitalWrite(inB2, LOW);
}
void right()
{
/*The pin numbers and high, low values might be different depending on your connections */
digitalWrite(inA1, LOW);
digitalWrite(inA2, LOW);
digitalWrite(inB1, HIGH);
digitalWrite(inB2, LOW);
}
void sharpLeftTurn() {
/*The pin numbers and high, low values might be different depending on your connections */
digitalWrite(inA1, LOW);
digitalWrite(inA2, HIGH);
digitalWrite(inB1, HIGH);
digitalWrite(inB2, LOW);
}
void sharpRightTurn() {
/*The pin numbers and high, low values might be different depending on your connections */
digitalWrite(inA1, HIGH);
digitalWrite(inA2, LOW);
digitalWrite(inB1, LOW);
digitalWrite(inB2, HIGH);
analogWrite(EnA, 80);
analogWrite(EnB, 80);
}
void stop_bot()
{
/*The pin numbers and high, low values might be different depending on your connections */
digitalWrite(inA1, LOW);
digitalWrite(inA2, LOW);
digitalWrite(inB1, LOW);
digitalWrite(inB2, LOW);
}