79 lines
2.3 KiB
C++
Executable File
79 lines
2.3 KiB
C++
Executable File
#include <SoftwareSerial.h>
|
|
|
|
byte dato1, dato2, dato3, dato4, dato5, dato6, contador;
|
|
float dato7, dato8;
|
|
String fecha;
|
|
unsigned long intervalo = 1000;
|
|
unsigned long previoMillisLoop = 0;
|
|
bool leido;
|
|
SoftwareSerial ArduRec(3, 2); //(Rx, Tx)
|
|
|
|
void setup() {
|
|
Serial.begin(9600);
|
|
ArduRec.begin(9600);
|
|
Serial.println("inicio");
|
|
}
|
|
|
|
void loop() {
|
|
unsigned long actualMillis = millis();
|
|
if ((unsigned long)(actualMillis - previoMillisLoop) >= intervalo) {
|
|
Serial.println(contador++);
|
|
if (ArduRec.available() > 0) {
|
|
Serial.println("Leyendo puerto ArduRec");
|
|
dato1 = ArduRec.readStringUntil(',').toInt();
|
|
dato2 = ArduRec.readStringUntil(',').toInt();
|
|
dato3 = ArduRec.readStringUntil(',').toInt();
|
|
dato4 = ArduRec.readStringUntil(',').toInt();
|
|
dato5 = ArduRec.readStringUntil(',').toInt();
|
|
dato6 = ArduRec.readStringUntil(',').toInt();
|
|
dato7 = ArduRec.readStringUntil(',').toFloat();
|
|
dato8 = ArduRec.readStringUntil(',').toFloat();
|
|
fecha = ArduRec.readStringUntil('\r');
|
|
while (ArduRec.available()>0) {
|
|
char temp = ArduRec.read();
|
|
Serial.println("Sobrante :");
|
|
Serial.println(temp);
|
|
}
|
|
Serial.println("Datos recibidos de ArduRec");
|
|
Serial.print(dato1);
|
|
Serial.print(':');
|
|
Serial.print(dato2);
|
|
Serial.print(':');
|
|
Serial.print(dato3);
|
|
Serial.print(':');
|
|
Serial.print(dato4);
|
|
Serial.print(':');
|
|
Serial.print(dato5);
|
|
Serial.print(':');
|
|
Serial.print(dato6);
|
|
Serial.print(':');
|
|
Serial.print(dato7);
|
|
Serial.print(':');
|
|
Serial.print(dato8);
|
|
Serial.print(':');
|
|
Serial.println(fecha);
|
|
Serial.print('/');
|
|
leido = true;
|
|
Serial.println(leido);
|
|
}
|
|
if (leido) {
|
|
String datos;
|
|
datos += (String)dato1 + ',';
|
|
datos += (String)dato2 + ',';
|
|
datos += (String)dato3 + ',';
|
|
datos += (String)dato4 + ',';
|
|
datos += (String)dato5 + ',';
|
|
datos += (String)dato6 + ',';
|
|
datos += (String)dato7 + ',';
|
|
datos += (String)dato8 + ',';
|
|
datos += fecha;
|
|
Serial.println("Cadena datos recibidos");
|
|
Serial.println(datos);
|
|
datos = "";
|
|
leido = false;
|
|
dato1=0;dato2=0;dato3=0;dato4=0;dato5=0;dato6=0;dato7=0;dato8=0;fecha="";
|
|
}
|
|
previoMillisLoop = millis();
|
|
}
|
|
}
|