check meteo paremeters before write them into system data

This commit is contained in:
Edward Emelianov 2022-10-21 12:38:32 +03:00
parent 32114c0a77
commit 47b1e8465f

View File

@ -198,10 +198,12 @@ params_ans check_meteo_params(){
DBG("wind speed");
meteoflags |= WSFLAG;
if(gotsegm && !(MeteoMode & INPUT_WND)){ // not entered by hands
if(f >= 0.f && f < 200.f){
val_Wnd = f;
MeteoMode &= ~NET_WND;
MeteoMode |= SENSOR_WND;
}
}
break;
case REG_WDIR:
DBG("wind direction");
@ -211,19 +213,23 @@ params_ans check_meteo_params(){
DBG("air temperature");
meteoflags |= TFLAG;
if(gotsegm && !(MeteoMode & INPUT_T1)){
if(f > -40.f && f < 40.f){
val_T1 = f;
MeteoMode &= ~NET_T1;
MeteoMode |= SENSOR_T1;
}
}
break;
case REG_HUM:
DBG("humidity");
meteoflags |= HFLAG;
if(gotsegm && !(MeteoMode & INPUT_HMD)){
if(f >= 0.f && f <= 100.f){
val_Hmd = f;
MeteoMode &= ~NET_HMD;
MeteoMode |= SENSOR_HMD;
}
}
break;
case REG_DEW:
DBG("dewpoint");
@ -233,10 +239,12 @@ params_ans check_meteo_params(){
f *= 760.f/1013.f; // convert hPa->mmHg
meteoflags |= PFLAG;
if(gotsegm && !(MeteoMode & INPUT_B)){
if(f > 500.f && f < 700.f){
val_B = f;
MeteoMode &= ~NET_B;
MeteoMode |= SENSOR_B;
}
}
break;
default:
prval = 0;