123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- #pragma once
- #include <AP_HAL/AP_HAL.h>
- #include <AP_HAL/utility/OwnPtr.h>
- #include <AP_HAL/I2CDevice.h>
- #include <utility>
- #include "AP_Airspeed_Backend.h"
- class AP_Airspeed_DLVR : public AP_Airspeed_Backend
- {
- public:
- AP_Airspeed_DLVR(AP_Airspeed &frontend, uint8_t _instance, const float _range_inH2O);
- ~AP_Airspeed_DLVR(void) {}
-
-
- bool init() override;
-
- bool get_differential_pressure(float &pressure) override;
-
- bool get_temperature(float &temperature) override;
- private:
- void timer();
- float pressure;
- float temperature;
- float temperature_sum;
- float pressure_sum;
- uint32_t temp_count;
- uint32_t press_count;
-
- uint32_t last_sample_time_ms;
- const float range_inH2O;
- AP_HAL::OwnPtr<AP_HAL::I2CDevice> dev;
- };
|