refactor bmp388: use driver base class

This commit is contained in:
Beat Küng
2020-03-17 23:31:17 -04:00
committed by Daniel Agar
parent aeadf54a74
commit 985bb2adc9
8 changed files with 88 additions and 225 deletions
+7 -9
View File
@@ -41,12 +41,10 @@
#include "bmp388.h"
#if defined(PX4_I2C_OBDEV_BMP388) || defined(PX4_I2C_EXT_OBDEV_BMP388)
class BMP388_I2C: public device::I2C, public IBMP388
{
public:
BMP388_I2C(uint8_t bus, uint32_t device);
BMP388_I2C(uint8_t bus, uint32_t device, int bus_frequency);
virtual ~BMP388_I2C() = default;
int init();
@@ -58,17 +56,19 @@ public:
uint32_t get_device_id() const override { return device::I2C::get_device_id(); }
uint8_t get_device_address() const override { return device::I2C::get_device_address(); }
private:
struct calibration_s _cal;
};
IBMP388 *bmp388_i2c_interface(uint8_t busnum, uint32_t device)
IBMP388 *bmp388_i2c_interface(uint8_t busnum, uint32_t device, int bus_frequency)
{
return new BMP388_I2C(busnum, device);
return new BMP388_I2C(busnum, device, bus_frequency);
}
BMP388_I2C::BMP388_I2C(uint8_t bus, uint32_t device) :
I2C("BMP388_I2C", nullptr, bus, device, 100 * 1000)
BMP388_I2C::BMP388_I2C(uint8_t bus, uint32_t device, int bus_frequency) :
I2C("BMP388_I2C", nullptr, bus, device, bus_frequency)
{
}
@@ -108,5 +108,3 @@ calibration_s *BMP388_I2C::get_calibration(uint8_t addr)
return nullptr;
}
}
#endif /* PX4_I2C_OBDEV_BMP388 || PX4_I2C_EXT_OBDEV_BMP388 */