Hi i not and expert i just started making small robots an i have a problem. I want to make a bluetooth controlled car using an arduino UNO booard , a L298N motor driver an HC-05 bluetooth modul. All was excellent until i tried to controll my car and noticed that it has very big delay while send information. What i mean is that HC-05 connect to my phone and must blink two times in order to receive information .
That is my code:
int ENA = 6;
int ENB = 5;
int IN1 = 8;
int IN2 = 9;
int IN3 = 10;
int IN4 = 11;
char val;
void setup()
{
pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
pinMode(IN3,OUTPUT);
pinMode(IN4,OUTPUT);
pinMode(ENA,OUTPUT);
pinMode(ENB,OUTPUT);
Serial.begin(9600);
}
void loop()
{
while (Serial.available() > 0)
{
val = Serial.read();
Serial.println(val);
}
if(val == 'F')
{
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
digitalWrite(IN3,HIGH);
digitalWrite(IN4,LOW);
analogWrite(ENA,255);
analogWrite(ENB,255);
}
else if(val == 'B')
{
digitalWrite(IN1,LOW);
digitalWrite(IN2,HIGH);
digitalWrite(IN3,LOW);
digitalWrite(IN4,HIGH);
analogWrite(ENA,255);
analogWrite(ENB,255);
}
else if(val == 'R')
{
digitalWrite(IN1,HIGH);
digitalWrite(IN2,LOW);
digitalWrite(IN3,LOW);
digitalWrite(IN4,LOW);
analogWrite(ENA,255);
analogWrite(ENB,0);
}
else if(val == 'L')
{
digitalWrite(IN1,LOW);
digitalWrite(IN2,LOW);
digitalWrite(IN3,HIGH);
digitalWrite(IN4,LOW);
analogWrite(ENA,0);
analogWrite(ENB,255);
}
else if(val == 'S') //Stop
{
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
analogWrite(ENA,0);
analogWrite(ENB,0);
}
else if(val == 'I') //Forward Right
{
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
analogWrite(ENA,255);
analogWrite(ENB,0);
}
else if(val == 'J') //Backward Right
{
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
analogWrite(ENA,255);
analogWrite(ENB,0);
}
else if(val == 'G') //Forward Left
{
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
analogWrite(ENA,0);
analogWrite(ENB,255);
}
else if(val == 'H') //Backward Left
{
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
analogWrite(ENA,0);
analogWrite(ENB,255);
}
}
PLEASE HELP ME !!
