tatry_variant
Mateusz Lubecki 2022-09-18 20:44:41 +02:00
rodzic 5dae491c2b
commit 827c797554
4 zmienionych plików z 20 dodań i 15 usunięć

Wyświetl plik

@ -46,9 +46,9 @@ extern int16_t rte_wx_temperature_average_internal;
extern int16_t rte_wx_temperature_average_modbus;
extern uint16_t rte_wx_pressure_average;
#endif
extern uint16_t rte_wx_pm10; // 2.5um
extern uint16_t rte_wx_pm2_5; // 1um
#endif
extern uint16_t rte_wx_windspeed_pulses;
extern uint16_t rte_wx_windspeed[WIND_AVERAGE_LEN];

Wyświetl plik

@ -46,10 +46,10 @@ int16_t rte_wx_temperature_average_pt = 0;
int16_t rte_wx_temperature_average_modbus = 0;
int16_t rte_wx_temperature_average_internal = 0;
uint16_t rte_wx_pressure_average = 0;
#endif
uint16_t rte_wx_pm10 = 0; // 2.5um
uint16_t rte_wx_pm2_5 = 0; // 1um
#endif
int16_t rte_wx_average_winddirection = 0;
uint16_t rte_wx_average_windspeed = 0;
uint16_t rte_wx_max_windspeed = 0;

Wyświetl plik

@ -42,25 +42,28 @@ int32_t wx_get_pressure_measurement(const config_data_wx_sources_t * const confi
// BME280 measures all three things at one call to the driver
output |= WX_HANDLER_PARAMETER_RESULT_PRESSURE;
// get internal temperature
if (config_mode->wx_ms5611_or_bme == 1) {
measurement_retval = wx_get_temperature_bme280(&rte_wx_temperature_internal);
}
else {
measurement_retval = wx_get_temperature_ms5611(&rte_wx_temperature_internal);
}
// // get internal temperature
// if (config_mode->wx_ms5611_or_bme == 1) {
// measurement_retval = wx_get_temperature_bme280(&rte_wx_temperature_internal);
// }
// else {
// measurement_retval = wx_get_temperature_ms5611(&rte_wx_temperature_internal);
// }
// add the current pressure into buffer for average calculation
rte_wx_pressure_history[rte_wx_pressure_it++] = rte_wx_pressure;
// reseting the average length iterator
j = 0;
// incrementing iterator over pressure history
rte_wx_pressure_it++;
// check if and end of the buffer was reached
if (rte_wx_pressure_it >= PRESSURE_AVERAGE_LN) {
rte_wx_pressure_it = 0;
}
// add the current pressure into buffer for average calculation
rte_wx_pressure_history[rte_wx_pressure_it] = rte_wx_pressure;
// reseting the average length iterator
j = 0;
// calculating the average of pressure measuremenets
for (i = 0; i < PRESSURE_AVERAGE_LN; i++) {

Wyświetl plik

@ -55,6 +55,8 @@ int32_t wx_get_temperature_measurement(const config_data_wx_sources_t * const co
// check if temperature from pressure sensor has been retrieved w/o errors
if (measurement_result == BME280_OK || measurement_result == MS5611_OK) {
rte_wx_temperature_internal_valid = rte_wx_temperature_internal;
// set the flag for internal temperature
parameter_result = parameter_result | WX_HANDLER_PARAMETER_RESULT_TEMP_INTERNAL;