#include <SevSeg.h>
SevSeg sevseg;
byte Segmentos[8] = {2, 3, 4, 5, 6, 7, 8, 9};
byte Posiciones[4] = { 13, 12, 11, 10};
byte NumDigitos = 4;
byte Tipo = COMMON_ANODE ;
int Resultado;
int numeros[2]={0, 0};
int PedirDato (){
Serial.println("Ingrese el primer dato");
for(int i = 0 ; i < 2 ; i ++){
while (Serial.available()==0){
}
Serial.println("Ingrese el segundo dato");
numeros[i]= Serial.parseInt();
Serial.end();
Serial.begin(9600);
}
if(numeros[0] >= 0 && numeros[0] < 10000 && numeros[1] >= 0 && numeros[1] < 10000 ){
Serial.print("Dato 1: ");
Serial.println(numeros[0]);
Serial.print("Dato 2: ");
Serial.println(numeros[1]);
}
else{
if(numeros[0] >= 0 && numeros[0] < 10000){
Serial.print("Dato 1: ");
Serial.println(numeros[0]);
}
else{
Serial.print("el Dato 1 ");
Serial.print(numeros[0]);
Serial.println(" es invalido.");
}
if(numeros[1] >= 0 && numeros[1] < 10000){
Serial.print("Dato 2: ");
Serial.println(numeros[1]);}
else{
Serial.print("el Dato 2 ");
Serial.print(numeros[1]);
Serial.println(" es invalido.");
}
}
}
int ResultadoDatos(int ingreso){
Resultado= numeros[0] + numeros[1];
Serial.print("La suma de los dos datos es: ");
Serial.println(Resultado);
return Resultado;
}
void setup() {
Serial.begin(9600);
sevseg.begin(Tipo, NumDigitos, Posiciones, Segmentos);
PedirDato();
if(Resultado > 10000){
Serial.print(Resultado);
Serial.println("esta fuera del rango a mostrar");
}
ResultadoDatos(PedirDato);
}
void loop() {
static unsigned long Tiempo=millis()+100;
if(millis() >= Tiempo){
Tiempo+=100;
sevseg.setNumber(Resultado, 0);
}
sevseg.refreshDisplay();
}