String mensaje;
int izqA = 5;
int izqB = 6;
int derA = 9;
int derB = 10;
int vel = 255; // Velocidad de los motores (0-255)
void setup()
{
Serial.begin(9600); //Iniciando comunicacin Serial a 9600 baudios
pinMode(derA, OUTPUT);
pinMode(derB, OUTPUT);
pinMode(izqA, OUTPUT);
pinMode(izqB, OUTPUT);
}
void loop()
{
while(Serial.available())//Confirmando que la comunicacin Serial est disponible
para hacer la lectura del mensaje
{
delay(10); //para dar estabilidad al programa
char c = Serial.read(); //c almacena la lectura de la comunicacin serial
mensaje += c; //sumando el contenido de la variable c en la variable mensaje
}
if(mensaje.length()>0) //verificando que la variable mensaje no est vaca
{
if(mensaje=="*adelante") //adelante
{
analogWrite(derB, 0);
analogWrite(izqB, 0);
analogWrite(derA, vel);
analogWrite(izqA, vel);
}
if(mensaje=="*izquierda") // Izquierda
{
analogWrite(derB, 0);
analogWrite(izqB, 0);
analogWrite(derA, 0);
analogWrite(izqA, vel);
}
if(mensaje=="*parar") // parar
{
analogWrite(derB, 0);
analogWrite(izqB, 0);
analogWrite(derA, 0);
analogWrite(izqA, 0);
}
if(mensaje=="*derecha")
{
analogWrite(derB, 0);
analogWrite(izqB, 0);
analogWrite(izqA, 0);
analogWrite(derA, vel);
}
if(mensaje=="*reversa") // Boton Reversa
{
analogWrite(derA, 0);
analogWrite(izqA, 0);
analogWrite(derB, vel);
analogWrite(izqB, vel);
}
}
mensaje="";//reseteando variable
}