upm
1.7.1
Sensor/Actuator repository for libmraa (v2.0.0)
|
API for the BME280 Digital Humidity, Pressure, and Temperature Sensor. More...
The BME280 is as combined digital humidity, pressure and temperature sensor based on proven sensing principles. The sensor module is housed in an extremely compact metal-lid LGA package with a footprint of only 2.5 * 2.5 mm2 with a height of 0.93 mm. Its small dimensions and its low power consumption allow the implementation in battery driven devices such as handsets, GPS modules or watches. The BME280 is register and performance compatible to the Bosch Sensortec BMP280 digital pressure sensor.
Public Member Functions | |
BME280 (int bus=BME280_DEFAULT_I2C_BUS, int addr=BME280_DEFAULT_ADDR, int cs=-1) | |
virtual | ~BME280 () |
float | getHumidity () |
void | setOversampleRateHumidity (BME280_OSRS_H_T rate) |
const char * | getModuleName () |
int | getHumidityRelative () |
Public Member Functions inherited from BMP280 | |
BMP280 (int bus=BMP280_DEFAULT_I2C_BUS, int addr=BMP280_DEFAULT_ADDR, int cs=-1) | |
virtual | ~BMP280 () |
virtual void | update () |
uint8_t | getChipID () |
void | reset () |
float | getTemperature (bool fahrenheit=false) |
float | getPressure () |
void | setSeaLevelPreassure (float seaLevelhPA=1013.25) |
float | getAltitude () |
virtual void | setUsageMode (BMP280_USAGE_MODE_T mode) |
void | setOversampleRateTemperature (BMP280_OSRS_T_T rate) |
void | setOversampleRatePressure (BMP280_OSRS_P_T rate) |
void | setTimerStandby (BMP280_T_SB_T tsb) |
void | setFilter (BMP280_FILTER_T filter) |
void | setMeasureMode (BMP280_MODES_T mode) |
const char * | getModuleName () |
int | getTemperatureCelsius () |
int | getPressurePa () |
Additional Inherited Members | |
Protected Member Functions inherited from BMP280 | |
uint8_t | getStatus () |
uint8_t | readReg (uint8_t reg) |
int | readRegs (uint8_t reg, uint8_t *buffer, int len) |
void | writeReg (uint8_t reg, uint8_t val) |
Protected Attributes inherited from BMP280 | |
bmp280_context | m_bmp280 |
BME280 | ( | int | bus = BME280_DEFAULT_I2C_BUS , |
int | addr = BME280_DEFAULT_ADDR , |
||
int | cs = -1 |
||
) |
BME280 constructor.
This driver supports both the BMP280 and the BME280. The BME280 adds a humidity sensor. The device type is detected automatically by querying the chip id register.
This device can support both I2C and SPI. For SPI, set the addr to -1, and specify a positive integer representing the Chip Select (CS) pin for the cs argument. If you are using a hardware CS pin, then you can connect the proper pin to the hardware CS pin on your MCU and supply -1 for cs. The default operating mode is I2C.
bus | I2C or SPI bus to use. |
addr | The I2C address for this device. Use -1 for SPI. |
cs | The gpio pin to use for the SPI Chip Select. Use -1 for I2C, or for SPI with a hardware controlled pin. |
std::runtime_error | on failure. |
float getHumidity | ( | void | ) |
Return the current measured relative humidity. update() must have been called prior to calling this method. If the device is a bmp280 rather than a bme280, this method will always return 0.
void setOversampleRateHumidity | ( | BME280_OSRS_H_T | rate | ) |
Set the humidity sensor oversampling parameter. See the data sheet for details. This value can be automatically set to a suitable value by using one of the predefined modes for setUsageMode().
rate | One of the OSRS_H_T values. |
|
inlinevirtual |
Returns name of module. This is the string in library name after libupm_
Implements IModuleStatus.