Complete library for whole scientific pre-final

Dependencies:   BOX_1

Committer:
stebonicelli
Date:
Mon Jun 10 15:28:07 2019 +0000
Revision:
3:7c5d4da549ce
Parent:
0:f8a9cceb4186
Child:
4:f693e434d21c
Fixed i2c

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Alessio_Zaino 0:f8a9cceb4186 1 #ifndef ENVIROMENTAL_H
Alessio_Zaino 0:f8a9cceb4186 2 #define ENVIROMENTAL_H
Alessio_Zaino 0:f8a9cceb4186 3
Alessio_Zaino 0:f8a9cceb4186 4 #include "mbed.h"
Alessio_Zaino 0:f8a9cceb4186 5 #include "BME280.h"
Alessio_Zaino 0:f8a9cceb4186 6 #include "SI7021.h"
Alessio_Zaino 0:f8a9cceb4186 7 #include "VEML6070.h"
Alessio_Zaino 0:f8a9cceb4186 8 //#include "TSL2561.h" //Lacks library
Alessio_Zaino 0:f8a9cceb4186 9
Alessio_Zaino 0:f8a9cceb4186 10
Alessio_Zaino 0:f8a9cceb4186 11 class ENVIROMENTAL
Alessio_Zaino 0:f8a9cceb4186 12 {
Alessio_Zaino 0:f8a9cceb4186 13 public:
stebonicelli 3:7c5d4da549ce 14 ENVIROMENTAL(PinName envi_SDA, PinName envi_SCL,PinName mq_analog,I2C &i2c);
Alessio_Zaino 0:f8a9cceb4186 15 float get_temp(); //return temperature from SI7021
Alessio_Zaino 0:f8a9cceb4186 16 uint32_t get_humidity(); //return humidity from SI7021
Alessio_Zaino 0:f8a9cceb4186 17 int32_t get_pressure(); //return pressure in Pa from MBP280
Alessio_Zaino 0:f8a9cceb4186 18 float get_CO(); //return CO from mq-7
Alessio_Zaino 0:f8a9cceb4186 19 int get_lux(); //return lux from TSL2561
Alessio_Zaino 0:f8a9cceb4186 20 void calibrate_mq(); //run only once in clean air
Alessio_Zaino 0:f8a9cceb4186 21 int get_uv(); //return uv intensity from VEML6070
Alessio_Zaino 0:f8a9cceb4186 22
Alessio_Zaino 0:f8a9cceb4186 23 virtual ~ENVIROMENTAL();
Alessio_Zaino 0:f8a9cceb4186 24
Alessio_Zaino 0:f8a9cceb4186 25
Alessio_Zaino 0:f8a9cceb4186 26
Alessio_Zaino 0:f8a9cceb4186 27 private:
Alessio_Zaino 0:f8a9cceb4186 28
Alessio_Zaino 0:f8a9cceb4186 29 PinName _pinSCL;
Alessio_Zaino 0:f8a9cceb4186 30 PinName _pinSDA;
Alessio_Zaino 0:f8a9cceb4186 31 PinName _mq_pin;
Alessio_Zaino 0:f8a9cceb4186 32 float _tmp;
Alessio_Zaino 0:f8a9cceb4186 33 //TSL2561 lux;
Alessio_Zaino 0:f8a9cceb4186 34 BME280 bmp;
Alessio_Zaino 0:f8a9cceb4186 35 SI7021 climate;
Alessio_Zaino 0:f8a9cceb4186 36 VEML6070 uv;
Alessio_Zaino 0:f8a9cceb4186 37
Alessio_Zaino 0:f8a9cceb4186 38 };
Alessio_Zaino 0:f8a9cceb4186 39
Alessio_Zaino 0:f8a9cceb4186 40 #endif