#pragma GCC optimize ("Og")
#include "ArduinoTrace.h"
//84 37 25
volatile byte dato1,dato2,dato3,mayor,resultado;
String msg="";
// volatile byte dato1=37,dato2=37,dato3=25,mayor,resultado; //prueba2
// volatile byte dato1=12,dato2=37,dato3=25,mayor,resultado; //prueba3
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Serial.println("INICIO");
Serial.println("Entrar dato1: ");
while(msg=="")
{
msg=readSerialMsg();
}
dato1=msg.toInt();
Serial.println("Entrar dato2: ");
msg="";
while(msg=="")
{
msg=readSerialMsg();
}
dato2=msg.toInt();
Serial.println("Entrar dato3: ");
msg="";
while(msg=="")
{
msg=readSerialMsg();
}
dato3=msg.toInt();
//------------- Proceso en alto nivel -------------------
if(dato1 > dato2)
{
mayor=dato1;
resultado=mayor-dato3;
}
else
{
mayor=dato2;
resultado=mayor+dato3;
}
//------------------------------------------------------
DUMP(dato1);
DUMP(dato2);
DUMP(dato3)
DUMP(mayor);
DUMP(resultado);
}
void loop() {
}
//----------- lectura de string enviada via monitor serie -----//
String readSerialMsg()
{
String message="";
char incomingChar;
while (Serial.available())
{
char incomingChar = Serial.read();
if (incomingChar != '\n'){
message += String(incomingChar);
}
else{
return message;
}
delay(1);
}
return "";
}