Fixes to temp & rec
This commit is contained in:
@@ -40,16 +40,9 @@ bool BME280::ReadChipID() {
|
||||
|
||||
/****************************************************************/
|
||||
void BME280::WriteSettings() {
|
||||
// ctrl_hum register. (ctrl_hum[2:0] = Humidity oversampling rate.)
|
||||
uint8_t ctrlHum = (uint8_t)OSR_X1;
|
||||
// ctrl_meas register. (ctrl_meas[7:5] = temperature oversampling rate, ctrl_meas[4:2] = pressure oversampling rate, ctrl_meas[1:0] = mode.)
|
||||
uint8_t ctrlMeas = ((uint8_t)OSR_X1 << 5) | ((uint8_t)OSR_X1 << 2) | (uint8_t)Mode_Forced;
|
||||
// config register. (config[7:5] = standby time, config[4:2] = filter, ctrl_meas[0] = spi enable.)
|
||||
uint8_t config = ((uint8_t)StandbyTime_1000ms << 5) | ((uint8_t)Filter_Off << 2) | 0;
|
||||
|
||||
WriteRegister(CTRL_HUM_ADDR, ctrlHum);
|
||||
WriteRegister(CTRL_MEAS_ADDR, ctrlMeas);
|
||||
WriteRegister(CONFIG_ADDR, config);
|
||||
WriteRegister(CTRL_HUM_ADDR, OSR_X1);
|
||||
WriteRegister(CTRL_MEAS_ADDR, (OSR_X1 << 5) | (OSR_X1 << 2) | (Mode_Forced));
|
||||
WriteRegister(CONFIG_ADDR, StandbyTime_1000ms << 5) | (Filter_Off << 2);
|
||||
}
|
||||
|
||||
|
||||
|
@@ -31,8 +31,13 @@ void Sensor::PMS_init(void) {
|
||||
|
||||
|
||||
void Sensor::BME_measure() {
|
||||
bme->read(pres, temp, hum);
|
||||
float t_temp = 0;
|
||||
float t_pres = 0;
|
||||
bme->read(t_pres, t_temp, hum);
|
||||
|
||||
temp = t_temp - 5.0; // Correct heating offset
|
||||
heatidx = EnvironmentCalculations::HeatIndex(temp,hum);
|
||||
pres = EnvironmentCalculations::EquivalentSeaLevelPressure(100,temp, t_pres);
|
||||
}
|
||||
void Sensor::LTR_measure() {
|
||||
ltr->read(uv, uvi);
|
||||
|
Reference in New Issue
Block a user