BME280 Driver 2.0.x
Driver for BME280 sensor
Loading...
Searching...
No Matches
bme280.h
Go to the documentation of this file.
1
16//***************************************
17
18#ifndef BME280_H
19#define BME280_H
20
21//***************************************
22
23#ifdef __cplusplus /* CPP */
24extern "C" {
25#endif
26
27//***************************************
28
29#include "bme280_definitions.h"
30
37#define USE_64BIT
39#define USE_FLOATS_RESULTS
41#define USE_INTEGER_RESULTS
43#define USE_GETTERS
45#define USE_SETTERS
47#define USE_NORMAL_MODE
49#define USE_FORCED_MODE
51
73int8_t BME280_Init(BME280_t *Dev, BME280_Driver_t *Driver);
74
85int8_t BME280_Reset(BME280_t *Dev);
86
87#ifdef USE_GETTERS
106int8_t BME280_GetMode(BME280_t *Dev, uint8_t *Mode);
107
117int8_t BME280_GetPOvs(BME280_t *Dev, uint8_t *POvs);
118
128int8_t BME280_GetTOvs(BME280_t *Dev, uint8_t *TOvs);
129
139int8_t BME280_GetHOvs(BME280_t *Dev, uint8_t *HOvs);
140
150int8_t BME280_GetTStby(BME280_t *Dev, uint8_t *TStby);
151
161int8_t BME280_GetTFilter(BME280_t *Dev, uint8_t *Filter);
162
172int8_t BME280_Is3WireSPIEnabled(BME280_t *Dev, uint8_t *Result);
174#endif
175
191int8_t BME280_ConfigureAll(BME280_t *Dev, BME280_Config_t *Config);
192
193#ifdef USE_SETTERS
216int8_t BME280_SetMode(BME280_t *Dev, uint8_t Mode);
217
234int8_t BME280_SetPOvs(BME280_t *Dev, uint8_t POvs);
235
252int8_t BME280_SetTOvs(BME280_t *Dev, uint8_t TOvs);
253
270int8_t BME280_SetHOvs(BME280_t *Dev, uint8_t HOvs);
271
288int8_t BME280_SetTStby(BME280_t *Dev, uint8_t TStby);
289
306int8_t BME280_SetFilter(BME280_t *Dev, uint8_t Filter);
307
324
342#endif
343
344#ifdef USE_INTEGER_RESULTS
352#ifdef USE_NORMAL_MODE
374int8_t BME280_ReadAllLast(BME280_t *Dev, BME280_Data_t *Data);
375
392int8_t BME280_ReadTempLast(BME280_t *Dev, int8_t *TempInt, uint8_t *TempFract);
393
410int8_t BME280_ReadPressLast(BME280_t *Dev, uint16_t *PressInt, uint16_t *PressFract);
411
428int8_t BME280_ReadHumLast(BME280_t *Dev, uint8_t *HumInt, uint16_t *HumFract);
430#endif
431
432#ifdef USE_FORCED_MODE
458int8_t BME280_ReadAllForce(BME280_t *Dev, BME280_Data_t *Data);
459
479int8_t BME280_ReadTempForce(BME280_t *Dev, int8_t *TempInt, uint8_t *TempFract);
480
500int8_t BME280_ReadPressForce(BME280_t *Dev, uint16_t *PressInt, uint16_t *PressFract);
501
521int8_t BME280_ReadHumForce(BME280_t *Dev, uint8_t *HumInt, uint16_t *HumFract);
523#endif
525#endif
526
527#ifdef USE_FLOATS_RESULTS
535#ifdef USE_NORMAL_MODE
558
574int8_t BME280_ReadTempLast_F(BME280_t *Dev, float *Temp);
575
591int8_t BME280_ReadPressLast_F(BME280_t *Dev, float *Press);
592
608int8_t BME280_ReadHumLast_F(BME280_t *Dev, float *Hum);
610#endif
611
612#ifdef USE_FORCED_MODE
639
658int8_t BME280_ReadTempForce_F(BME280_t *Dev, float *Temp);
659
678int8_t BME280_ReadPressForce_F(BME280_t *Dev, float *Press);
679
698int8_t BME280_ReadHumForce_F(BME280_t *Dev, float *Hum);
700#endif
702#endif
704
705
706//***************************************
707
708#ifdef __cplusplus
709}
710#endif /* CPP */
711
712//***************************************
713
714#endif /* BME280_H */
715
Defined types for BME280 Driver.
int8_t BME280_ConfigureAll(BME280_t *Dev, BME280_Config_t *Config)
Function to set all sensor settings at once.
Definition bme280.c:270
int8_t BME280_Reset(BME280_t *Dev)
Function to perform sensor's software reset.
Definition bme280.c:320
int8_t BME280_Init(BME280_t *Dev, BME280_Driver_t *Driver)
Function to initialize sensor and resources.
Definition bme280.c:237
int8_t BME280_GetTOvs(BME280_t *Dev, uint8_t *TOvs)
Function gets current temperature Oversampling from sensor.
Definition bme280.c:394
int8_t BME280_GetTFilter(BME280_t *Dev, uint8_t *Filter)
Function gets current IIR Filter coeficient from sensor.
Definition bme280.c:473
int8_t BME280_GetPOvs(BME280_t *Dev, uint8_t *POvs)
Function gets current pressure Oversampling from sensor.
Definition bme280.c:368
int8_t BME280_GetHOvs(BME280_t *Dev, uint8_t *HOvs)
Function gets current humidity Oversampling from sensor.
Definition bme280.c:421
int8_t BME280_GetTStby(BME280_t *Dev, uint8_t *TStby)
Function gets current Standby Time from sensor.
Definition bme280.c:447
int8_t BME280_GetMode(BME280_t *Dev, uint8_t *Mode)
Function gets current Operating Mode from sensor.
Definition bme280.c:338
int8_t BME280_Is3WireSPIEnabled(BME280_t *Dev, uint8_t *Result)
Function checks if 3-wire SPI is enabled.
Definition bme280.c:499
int8_t BME280_ReadTempForce_F(BME280_t *Dev, float *Temp)
Function forces single measure and returns temperatrue as floats (forced mode)
Definition bme280.c:1175
int8_t BME280_ReadPressForce_F(BME280_t *Dev, float *Press)
Function forces single measure and returns pressure as floats (forced mode)
Definition bme280.c:1210
int8_t BME280_ReadAllForce_F(BME280_t *Dev, BME280_DataF_t *Data)
Function forces single measure and returns all data as floats.
Definition bme280.c:1140
int8_t BME280_ReadHumForce_F(BME280_t *Dev, float *Hum)
Function forces single measure and returns humidity as floats (forced mode)
Definition bme280.c:1246
int8_t BME280_ReadTempForce(BME280_t *Dev, int8_t *TempInt, uint8_t *TempFract)
Function forces single measure and returns temperatrue as integers (forced mode)
Definition bme280.c:915
int8_t BME280_ReadPressForce(BME280_t *Dev, uint16_t *PressInt, uint16_t *PressFract)
Function forces single measure and returns pressure as integers (forced mode)
Definition bme280.c:955
int8_t BME280_ReadAllForce(BME280_t *Dev, BME280_Data_t *Data)
Function forces single measure and returns all data as integers.
Definition bme280.c:877
int8_t BME280_ReadHumForce(BME280_t *Dev, uint8_t *HumInt, uint16_t *HumFract)
Function forces single measure and returns humidity as integers (forced mode)
Definition bme280.c:996
int8_t BME280_ReadAllLast_F(BME280_t *Dev, BME280_DataF_t *Data)
Function reads all measured data at once.
Definition bme280.c:1041
int8_t BME280_ReadPressLast_F(BME280_t *Dev, float *Press)
Function reads last measured pressure.
Definition bme280.c:1090
int8_t BME280_ReadHumLast_F(BME280_t *Dev, float *Hum)
Function reads last measured humidity.
Definition bme280.c:1114
int8_t BME280_ReadTempLast_F(BME280_t *Dev, float *Temp)
Function reads last measured temperature.
Definition bme280.c:1067
int8_t BME280_ReadAllLast(BME280_t *Dev, BME280_Data_t *Data)
Function reads all measured data at once.
Definition bme280.c:763
int8_t BME280_ReadTempLast(BME280_t *Dev, int8_t *TempInt, uint8_t *TempFract)
Function reads last measured temperature.
Definition bme280.c:789
int8_t BME280_ReadHumLast(BME280_t *Dev, uint8_t *HumInt, uint16_t *HumFract)
Function reads last measured humidity.
Definition bme280.c:846
int8_t BME280_ReadPressLast(BME280_t *Dev, uint16_t *PressInt, uint16_t *PressFract)
Function reads last measured pressure.
Definition bme280.c:817
int8_t BME280_SetPOvs(BME280_t *Dev, uint8_t POvs)
Function sets sensor's pressure Oversampling.
Definition bme280.c:561
int8_t BME280_SetTStby(BME280_t *Dev, uint8_t TStby)
Function sets sensor's Standby Time.
Definition bme280.c:645
int8_t BME280_SetMode(BME280_t *Dev, uint8_t Mode)
Function sets sensor's Operating Mode.
Definition bme280.c:527
int8_t BME280_Enable3WireSPI(BME280_t *Dev)
Function enables 3-wire SPI bus.
Definition bme280.c:703
int8_t BME280_SetFilter(BME280_t *Dev, uint8_t Filter)
Function sets sensor's IIR Filter coeficient.
Definition bme280.c:674
int8_t BME280_SetTOvs(BME280_t *Dev, uint8_t TOvs)
Function sets sensor's temperature Oversampling.
Definition bme280.c:590
int8_t BME280_Disable3WireSPI(BME280_t *Dev)
Function disables 3-wire SPI bus.
Definition bme280.c:732
int8_t BME280_SetHOvs(BME280_t *Dev, uint8_t HOvs)
Function sets sensor's humidity Oversampling.
Definition bme280.c:619
Contains all sensor's settings.
Definition bme280_definitions.h:291
Contains result of measure (with floating points variables)
Definition bme280_definitions.h:332
Contains result of measure (no floating points variables)
Definition bme280_definitions.h:311
Keeps all data specific for used platform.
Definition bme280_definitions.h:243
Keeps all data related to a single sensor.
Definition bme280_definitions.h:266