Adafruit TSL2591 sensor

Dependencies:   mbed

Committer:
12104404
Date:
Mon Apr 04 09:09:12 2016 +0000
Revision:
4:66ce66d4c07c
Parent:
3:fecb1929cbef
<<1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
12104404 3:fecb1929cbef 1 #ifndef BME280_H
12104404 3:fecb1929cbef 2 #define BME280_H
12104404 3:fecb1929cbef 3
12104404 3:fecb1929cbef 4 #include "mbed.h"
12104404 3:fecb1929cbef 5
12104404 3:fecb1929cbef 6 #define BME280_ADDR_H (0x77)
12104404 3:fecb1929cbef 7 #define BME280_ADDR_L (0x76)
12104404 3:fecb1929cbef 8
12104404 3:fecb1929cbef 9 #define BME280_CTRL_HUM (0xF2)
12104404 3:fecb1929cbef 10 #define BME280_CTRL_MEAS (0xF4)
12104404 3:fecb1929cbef 11
12104404 3:fecb1929cbef 12 typedef enum {
12104404 3:fecb1929cbef 13 BME280_SAMPLING_X1 = 0x01,
12104404 3:fecb1929cbef 14 BME280_SAMPLING_X2 = 0x02,
12104404 3:fecb1929cbef 15 BME280_SAMPLING_X4 = 0x03,
12104404 3:fecb1929cbef 16 BME280_SAMPLING_X8 = 0x04,
12104404 3:fecb1929cbef 17 BME280_SAMPLING_X16 = 0x05,
12104404 3:fecb1929cbef 18 } bme280_sampling_t;
12104404 3:fecb1929cbef 19
12104404 3:fecb1929cbef 20 typedef enum{
12104404 3:fecb1929cbef 21 BME280_MODE_SLEEP = 0x00,
12104404 3:fecb1929cbef 22 BME280_MODE_FORCED1 = 0x01,
12104404 3:fecb1929cbef 23 BME280_MODE_FORCED2 = 0x02,
12104404 3:fecb1929cbef 24 BME280_MODE_NORMAL = 0x03,
12104404 3:fecb1929cbef 25 } bme280_mode_t;
12104404 3:fecb1929cbef 26
12104404 3:fecb1929cbef 27 class BME280
12104404 3:fecb1929cbef 28 {
12104404 3:fecb1929cbef 29 public:
12104404 3:fecb1929cbef 30 BME280(I2C& bme280_i2c, uint8_t bme280_addr=BME280_ADDR_H);
12104404 3:fecb1929cbef 31 //virtual ~BME280();
12104404 3:fecb1929cbef 32 bool init(void);
12104404 3:fecb1929cbef 33 float getTemperature(void);
12104404 3:fecb1929cbef 34 float getPressure(void);
12104404 3:fecb1929cbef 35 float getHumidity(void);
12104404 3:fecb1929cbef 36
12104404 3:fecb1929cbef 37 protected:
12104404 3:fecb1929cbef 38 I2C _i2c;
12104404 3:fecb1929cbef 39 uint8_t _addr;
12104404 3:fecb1929cbef 40 bool _init;
12104404 3:fecb1929cbef 41 uint16_t dig_T1;
12104404 3:fecb1929cbef 42 int16_t dig_T2, dig_T3;
12104404 3:fecb1929cbef 43 uint16_t dig_P1;
12104404 3:fecb1929cbef 44 int16_t dig_P2, dig_P3, dig_P4, dig_P5, dig_P6, dig_P7, dig_P8, dig_P9;
12104404 3:fecb1929cbef 45 uint16_t dig_H1, dig_H3;
12104404 3:fecb1929cbef 46 int16_t dig_H2, dig_H4, dig_H5, dig_H6;
12104404 3:fecb1929cbef 47 int32_t t_fine;
12104404 3:fecb1929cbef 48 };
12104404 3:fecb1929cbef 49
12104404 3:fecb1929cbef 50 #endif