Paso 4: Ardunio código
Para la depuración debe usar al Arduino Serial Monitor para ver los mensajes Serial.println("") enviados desde el ardunio mientras está conectado a la computadora vía USB.
SoftwareSerial #include
mySerial (10, 11); RX, TX
int led = 13;
char myChar = 'a';
String cadena;
char p;
enA int = 3;
int 1 = 4;
in2 int = 5;
enB int = 6;
int in3 = 7;
int in4 = 8;
void setup()
{
Abrir comunicaciones en serie y esperar para que el puerto a abrir:
Serial.Begin(57600);
pinMode (led, salida);
Serial.println ("buenas noches Luna!");
establecer la tarifa de datos para el puerto SoftwareSerial
mySerial.begin(9600);
mySerial.println ("Hola, mundo");
pinMode (enA, salida);
pinMode (in1, salida);
pinMode (in2, salida);
pinMode (enB, salida);
pinMode (in3, salida);
pinMode (in4, salida);
}
void loop() / / ejecuta una y otra vez
{
cadena = "";
Añadir a cadena
mientras {}
myChar=mySerial.read();
Si (32 < = myChar & & myChar < = 127) {}
cadena += myChar;
}
Si (myChar ==' :'){
rotura;
}
Delay(10);
} / / Al final
Analizar la cadena
Si (cadena! = "de:" & & cadena! = "en :"){
Si (cadena! = "L0:" & & cadena! = "R0:") {}
código para ajuste motor izquierdo o derecho
Si (string[0]=='L') {}
P = 'L';
} else {}
P = 'R';
}
String.Remove (0, 1);
código para poner en marcha
Si (string[0]=='-') {}
String.Remove (0, 1);
String.Remove((String.length()-1), 1);
Serial.println(String);
Si (p == L') {}
digitalWrite (in1, HIGH);
digitalWrite (in2, LOW);
analogWrite (enA, string.toInt());
} else {}
digitalWrite (in3, LOW);
digitalWrite (in4, HIGH);
analogWrite (enB, string.toInt());
}
} else {}
String.Remove((String.length()-1), 1);
Serial.println(String);
Si (p == L') {}
digitalWrite (in1, LOW);
digitalWrite (in2, HIGH);
analogWrite (enA, string.toInt());
} else {}
digitalWrite (in3, HIGH);
digitalWrite (in4, LOW);
analogWrite (enB, string.toInt());
}
}
} else {}
digitalWrite (in1, LOW);
digitalWrite (in2, LOW);
digitalWrite (in3, LOW);
digitalWrite (in4, LOW);
}
} //End de if largo declaración
Si (cadena == "en :"){
digitalWrite (led, alto);
}
Si (cadena == "off :"){
digitalWrite (led, baja);
}
} //Loop final