| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- #ifndef UNITEMP_BMP280
- #define UNITEMP_BMP280
- #include "../unitemp.h"
- #include "../Sensors.h"
- #include "../interfaces/I2CSensor.h"
- typedef struct {
- uint16_t dig_T1;
- int16_t dig_T2;
- int16_t dig_T3;
- } BMP280_temp_cal;
- // typedef struct {
- // uint16_t dig_P1;
- // int16_t dig_P2;
- // int16_t dig_P3;
- // int16_t dig_P4;
- // int16_t dig_P5;
- // int16_t dig_P6;
- // int16_t dig_P7;
- // int16_t dig_P8;
- // int16_t dig_P9;
- // } BMP280_press_cal;
- typedef struct {
- //Калибровочные значения температуры
- BMP280_temp_cal temp_cal;
- //Калибровочные значения давления
- // BMP280_press_cal press_cal;
- //Время последнего обновления калибровочных значений
- uint32_t last_cal_update_time;
- } BMP280_instance;
- extern const SensorType BMP280;
- /**
- * @brief Выделение памяти и установка начальных значений датчика BMP280
- * @param sensor Указатель на создаваемый датчик
- * @return Истина при успехе
- */
- bool unitemp_BMP280_alloc(Sensor* sensor, char* args);
- /**
- * @brief Инициализации датчика BMP280
- * @param sensor Указатель на датчик
- * @return Истина если инициализация упспешная
- */
- bool unitemp_BMP280_init(Sensor* sensor);
- /**
- * @brief Деинициализация датчика
- * @param sensor Указатель на датчик
- */
- bool unitemp_BMP280_deinit(Sensor* sensor);
- /**
- * @brief Обновление значений из датчика
- * @param sensor Указатель на датчик
- * @return Статус опроса датчика
- */
- UnitempStatus unitemp_BMP280_update(Sensor* sensor);
- /**
- * @brief Высвободить память датчика
- * @param sensor Указатель на датчик
- */
- bool unitemp_BMP280_free(Sensor* sensor);
- #endif
|