int left1= 4;
int left2= 3;
int PWMLEFT=10;
int pwml=0;
int right1= 5;
int right2= 6;
int PWMRIGHT=11;
int pwmr=0;
int ldrleftvalue;
int ldrleftpin = 0;
int ldrrightvalue;
int ldrrightpin=1;
void setup ()
{
pinMode(left1, OUTPUT);
pinMode(left2, OUTPUT);
pinMode(PWMLEFT, OUTPUT);
pinMode(right1, OUTPUT);
pinMode(right2, OUTPUT);
pinMode(PWMRIGHT, OUTPUT);
pinMode(ldrrightpin, INPUT);
pinMode(ldrleftpin, INPUT);
}
void right()
{
pwml = (analogRead(PWMLEFT))/7;
pwmr = (analogRead(PWMRIGHT))/7;
analogWrite(PWMLEFT,pwml);
analogWrite(PWMRIGHT,pwmr);
digitalWrite(left1, LOW);
digitalWrite(left2, LOW);
digitalWrite(right1, HIGH);
digitalWrite(right2, LOW);
}
void forward()
{
pwml = (analogRead(PWMLEFT))/7;
pwmr = (analogRead(PWMRIGHT))/7;
analogWrite(PWMLEFT,pwml);
analogWrite(PWMRIGHT,pwmr);
digitalWrite(left1, HIGH);
digitalWrite(left2, LOW);
digitalWrite(right1, HIGH);
digitalWrite(right2, LOW);
}
void backward()
{
pwml = (analogRead(PWMLEFT))/7;
pwmr = (analogRead(PWMRIGHT))/7;
analogWrite(PWMLEFT,pwml);
analogWrite(PWMRIGHT,pwmr);
digitalWrite(left1, LOW);
digitalWrite(left2, HIGH);
digitalWrite(right1, LOW);
digitalWrite(right2, HIGH);
}
void left()
{ pwml = (analogRead(PWMLEFT))/7;
pwmr = (analogRead(PWMRIGHT))/7;
analogWrite(PWMLEFT,pwml);
analogWrite(PWMRIGHT,pwmr);
digitalWrite(left1, HIGH);
digitalWrite(left2, LOW);
digitalWrite(right1, LOW);
digitalWrite(right2, LOW);
}
void loop()
{
ldrleftvalue=analogRead(ldrleftpin);
ldrrightvalue=analogRead(ldrrightpin);
delay(1000);
if (ldrrightvalue<250 && ldrleftvalue<80)
{
backward();
}
else if (ldrrightvalue<250 && ldrleftvalue>80)
{
right();
}
else if (ldrrightvalue>250 && ldrleftvalue<80)
{
left();
}
else if (ldrrightvalue>250 && ldrleftvalue>80)
{
forward();
}
}
i got this its a line follwing robot but the else if statements dont work? they dont loop basically