File tree 1 file changed +5
-9
lines changed 1 file changed +5
-9
lines changed Original file line number Diff line number Diff line change 35
35
_REGISTER_PRESSUREDATA = const (0xF7 )
36
36
_REGISTER_TEMPDATA = const (0xFA )
37
37
38
- _BMP280_PRESSURE_MIN_HPA = const (300 )
39
- _BMP280_PRESSURE_MAX_HPA = const (1100 )
40
-
41
38
42
39
"""iir_filter values"""
43
40
IIR_FILTER_DISABLE = const (0 )
@@ -320,18 +317,17 @@ def pressure(self):
320
317
var3 = self ._pressure_calib [2 ] * var1 * var1 / 524288.0
321
318
var1 = (var3 + self ._pressure_calib [1 ] * var1 ) / 524288.0
322
319
var1 = (1.0 + var1 / 32768.0 ) * self ._pressure_calib [0 ]
323
- if not var1 :
324
- return _BMP280_PRESSURE_MIN_HPA
320
+ if not var1 : # avoid exception caused by division by zero
321
+ raise ArithmeticError (
322
+ "Invalid result possibly related to error while reading the calibration registers"
323
+ )
325
324
pressure = 1048576.0 - adc
326
325
pressure = ((pressure - var2 / 4096.0 ) * 6250.0 ) / var1
327
326
var1 = self ._pressure_calib [8 ] * pressure * pressure / 2147483648.0
328
327
var2 = pressure * self ._pressure_calib [7 ] / 32768.0
329
328
pressure = pressure + (var1 + var2 + self ._pressure_calib [6 ]) / 16.0
330
329
pressure /= 100
331
- if pressure < _BMP280_PRESSURE_MIN_HPA :
332
- return _BMP280_PRESSURE_MIN_HPA
333
- if pressure > _BMP280_PRESSURE_MAX_HPA :
334
- return _BMP280_PRESSURE_MAX_HPA
330
+
335
331
return pressure
336
332
337
333
@property
You can’t perform that action at this time.
0 commit comments