2 // BRY: I implemented this entire unit thinking I had a BMP085 on hand
3 // but I do not so this code is completely untested and never has run
4 // but it compiles, so ship it!
8 #include "baro_bmp085_regs.h"
10 class BMP085
: public BaroI2CBase
13 // Detect if chip is present
18 uint8_t getPressureDuration();
20 uint32_t getPressure();
21 uint8_t getTemperatureDuration();
22 void startTemperature();
23 int32_t getTemperature();
26 // 3x pressure + temperature = 30.5ms per update
27 // 0x=4.5ms, 1x=7.5ms, 2x=13.5ms, 3x=25.5ms
29 const uint8_t OVERSAMPLING_PRESSURE
= 3;
31 // calibration data, if initialized
32 // Packed to be able to read all at once
33 struct tagCalibrationData
46 } __attribute__((packed
)) m_calib
;
48 uint16_t m_temperatureLast
;
51 int32_t computeB5(int32_t UT
) const;