26 #include <Adafruit_I2CDevice.h>    27 #include <Adafruit_SPIDevice.h>    28 #include <Adafruit_Sensor.h>    33 #define BME280_ADDRESS (0x77)           // Primary I2C Address    37 #define BME280_ADDRESS_ALTERNATE (0x76) // Alternate Address    43   BME280_REGISTER_DIG_T1 = 0x88,
    44   BME280_REGISTER_DIG_T2 = 0x8A,
    45   BME280_REGISTER_DIG_T3 = 0x8C,
    47   BME280_REGISTER_DIG_P1 = 0x8E,
    48   BME280_REGISTER_DIG_P2 = 0x90,
    49   BME280_REGISTER_DIG_P3 = 0x92,
    50   BME280_REGISTER_DIG_P4 = 0x94,
    51   BME280_REGISTER_DIG_P5 = 0x96,
    52   BME280_REGISTER_DIG_P6 = 0x98,
    53   BME280_REGISTER_DIG_P7 = 0x9A,
    54   BME280_REGISTER_DIG_P8 = 0x9C,
    55   BME280_REGISTER_DIG_P9 = 0x9E,
    57   BME280_REGISTER_DIG_H1 = 0xA1,
    58   BME280_REGISTER_DIG_H2 = 0xE1,
    59   BME280_REGISTER_DIG_H3 = 0xE3,
    60   BME280_REGISTER_DIG_H4 = 0xE4,
    61   BME280_REGISTER_DIG_H5 = 0xE5,
    62   BME280_REGISTER_DIG_H6 = 0xE7,
    64   BME280_REGISTER_CHIPID = 0xD0,
    65   BME280_REGISTER_VERSION = 0xD1,
    66   BME280_REGISTER_SOFTRESET = 0xE0,
    68   BME280_REGISTER_CAL26 = 0xE1, 
    70   BME280_REGISTER_CONTROLHUMID = 0xF2,
    71   BME280_REGISTER_STATUS = 0XF3,
    72   BME280_REGISTER_CONTROL = 0xF4,
    73   BME280_REGISTER_CONFIG = 0xF5,
    74   BME280_REGISTER_PRESSUREDATA = 0xF7,
    75   BME280_REGISTER_TEMPDATA = 0xFA,
    76   BME280_REGISTER_HUMIDDATA = 0xFD
   165     SAMPLING_NONE = 0b000,
   203     STANDBY_MS_0_5 = 0b000,
   204     STANDBY_MS_10 = 0b110,
   205     STANDBY_MS_20 = 0b111,
   206     STANDBY_MS_62_5 = 0b001,
   207     STANDBY_MS_125 = 0b010,
   208     STANDBY_MS_250 = 0b011,
   209     STANDBY_MS_500 = 0b100,
   210     STANDBY_MS_1000 = 0b101
   216   Adafruit_BME280(int8_t cspin, int8_t mosipin, int8_t misopin, int8_t sckpin);
   218   bool begin(uint8_t addr = 
BME280_ADDRESS, TwoWire *theWire = &Wire);
   228   bool takeForcedMeasurement(
void);
   229   float readTemperature(
void);
   230   float readPressure(
void);
   231   float readHumidity(
void);
   233   float readAltitude(
float seaLevel);
   234   float seaLevelForAltitude(
float altitude, 
float pressure);
   235   uint32_t sensorID(
void);
   237   float getTemperatureCompensation(
void);
   238   void setTemperatureCompensation(
float);
   240   Adafruit_Sensor *getTemperatureSensor(
void);
   241   Adafruit_Sensor *getPressureSensor(
void);
   242   Adafruit_Sensor *getHumiditySensor(
void);
   245   Adafruit_I2CDevice *i2c_dev = NULL; 
   246   Adafruit_SPIDevice *spi_dev = NULL; 
   257   void readCoefficients(
void);
   258   bool isReadingCalibration(
void);
   260   void write8(byte reg, byte value);
   261   uint8_t read8(byte reg);
   262   uint16_t read16(byte reg);
   263   uint32_t read24(byte reg);
   264   int16_t readS16(byte reg);
   265   uint16_t read16_LE(byte reg); 
   266   int16_t readS16_LE(byte reg); 
   274   int32_t t_fine_adjust = 0; 
   309     unsigned int get() { 
return (t_sb << 5) | (filter << 2) | spi3w_en; }
   344     unsigned int get() { 
return (osrs_t << 5) | (osrs_p << 2) | mode; }
   367     unsigned int get() { 
return (osrs_h); }
 int16_t dig_H4
humidity compensation value 
Definition: Adafruit_BME280.h:102
unsigned int none
unused - don't set 
Definition: Adafruit_BME280.h:355
unsigned int filter
filter settings 
Definition: Adafruit_BME280.h:302
int16_t dig_P6
pressure compensation value 
Definition: Adafruit_BME280.h:94
unsigned int none
unused - don't set 
Definition: Adafruit_BME280.h:305
Adafruit_BME280_Pressure(Adafruit_BME280 *parent)
Create an Adafruit_Sensor compatible object for the pressure sensor. 
Definition: Adafruit_BME280.h:129
ctrl_meas register 
Definition: Adafruit_BME280.h:318
int16_t dig_H2
humidity compensation value 
Definition: Adafruit_BME280.h:100
Definition: Adafruit_BME280.h:111
Class that stores state and functions for interacting with BME280 IC. 
Definition: Adafruit_BME280.h:157
Adafruit_BME280_Temp(Adafruit_BME280 *parent)
Create an Adafruit_Sensor compatible object for the temp sensor. 
Definition: Adafruit_BME280.h:115
int16_t dig_P2
pressure compensation value 
Definition: Adafruit_BME280.h:90
int16_t dig_P8
pressure compensation value 
Definition: Adafruit_BME280.h:96
int32_t _sensorID
ID of the BME Sensor. 
Definition: Adafruit_BME280.h:269
Adafruit_BME280_Humidity(Adafruit_BME280 *parent)
Create an Adafruit_Sensor compatible object for the humidity sensor. 
Definition: Adafruit_BME280.h:143
bme280_calib_data _bme280_calib
here calibration data is stored 
Definition: Adafruit_BME280.h:277
bool getEvent(sensors_event_t *)
Gets the temperature as a standard sensor event. 
Definition: Adafruit_BME280.cpp:553
int16_t dig_T3
temperature compensation value 
Definition: Adafruit_BME280.h:87
unsigned int osrs_p
pressure oversampling 
Definition: Adafruit_BME280.h:335
int16_t dig_T2
temperature compensation value 
Definition: Adafruit_BME280.h:86
int16_t dig_P3
pressure compensation value 
Definition: Adafruit_BME280.h:91
config _configReg
config register object 
Definition: Adafruit_BME280.h:311
sensor_filter
filter values 
Definition: Adafruit_BME280.h:189
ctrl_hum register 
Definition: Adafruit_BME280.h:353
int8_t dig_H6
humidity compensation value 
Definition: Adafruit_BME280.h:104
Definition: Adafruit_BME280.h:125
int16_t dig_H5
humidity compensation value 
Definition: Adafruit_BME280.h:103
uint8_t dig_H1
humidity compensation value 
Definition: Adafruit_BME280.h:99
int16_t dig_P4
pressure compensation value 
Definition: Adafruit_BME280.h:92
config register 
Definition: Adafruit_BME280.h:284
unsigned int osrs_h
humidity oversampling 
Definition: Adafruit_BME280.h:364
int16_t dig_P5
pressure compensation value 
Definition: Adafruit_BME280.h:93
uint16_t dig_P1
pressure compensation value 
Definition: Adafruit_BME280.h:89
ctrl_hum _humReg
hum register object 
Definition: Adafruit_BME280.h:369
unsigned int spi3w_en
unused - don't set 
Definition: Adafruit_BME280.h:306
unsigned int t_sb
inactive duration (standby time) in normal mode 
Definition: Adafruit_BME280.h:294
uint8_t dig_H3
humidity compensation value 
Definition: Adafruit_BME280.h:101
unsigned int osrs_t
temperature oversampling 
Definition: Adafruit_BME280.h:326
Definition: Adafruit_BME280.h:139
sensor_sampling
sampling rates 
Definition: Adafruit_BME280.h:164
unsigned int mode
device mode 
Definition: Adafruit_BME280.h:341
uint16_t dig_T1
temperature compensation value 
Definition: Adafruit_BME280.h:85
int16_t dig_P7
pressure compensation value 
Definition: Adafruit_BME280.h:95
int16_t dig_P9
pressure compensation value 
Definition: Adafruit_BME280.h:97
#define BME280_ADDRESS
default I2C address 
Definition: Adafruit_BME280.h:33
int32_t t_fine
Definition: Adafruit_BME280.h:270
uint8_t _i2caddr
I2C addr for the TwoWire interface. 
Definition: Adafruit_BME280.h:268
void getSensor(sensor_t *)
Gets the sensor_t data for the BME280's temperature sensor. 
Definition: Adafruit_BME280.cpp:530
standby_duration
standby duration in ms 
Definition: Adafruit_BME280.h:202
ctrl_meas _measReg
measurement register object 
Definition: Adafruit_BME280.h:346
sensor_mode
power modes 
Definition: Adafruit_BME280.h:178
calibration data 
Definition: Adafruit_BME280.h:84