Plant Monitoring Project

Dependencies:   mbed SHT21_ncleee WakeUp SSD1306 DHT Adafruit_TCS34725 DS1820

Revision:
34:fb1b9c5e5cf3
Parent:
33:b576ea9bf0e3
Child:
35:d87c1391706a
--- a/main.hh	Tue Dec 17 18:45:22 2019 +0000
+++ b/main.hh	Tue Jan 07 17:57:19 2020 +0000
@@ -3,16 +3,21 @@
 #include "define.hh"
 #include "mbed.h"
 #include "DS1820.h"
-#include "SHT21_ncleee.h"
+#include "DHT.h"
 #include "Adafruit_TCS34725.h"
 #include "ssd1306.h"
 #include "standard_font.h"
 #include "bold_font.h"
+#include "WakeUp.h"
 
-#define DUREE_OFF 892                        // Durée en seconde entre deux mesures
-#define DUREE_ECRAN_ON  10                   // Durée en seconde d'éveil de l'écran
+#define DUREE_OFF 900                        // Durée en seconde entre deux mesures + 8 secondes pour le module sigfox dans le code
+#define DUREE_ECRAN_ON  10                 // Durée en seconde d'éveil de l'écran
 
-Ticker timeScreen;
+#define NB_MESURES 100
+
+#define BATTERIE_MIN 30
+#define BATTERIE_MAX 42
+
 
 #ifdef INTERRUPTEUR
 DigitalOut interrupteur(D11);
@@ -26,7 +31,7 @@
 Serial wisol(D1,D0);
 #endif
 
-I2C i2c_1(D4, D5);
+//I2C i2c_1(D4, D5);
 I2C i2c_2(D12,A6);
 
 #ifdef OLED
@@ -34,6 +39,11 @@
 SSD1306 oled(PB_1, PA_8, PA_11, PA_5, PA_12);
 #endif
 
+//Mesure niveau batterie
+#ifdef BATTERY_LVL
+AnalogIn battery(A1);
+#endif
+
 InterruptIn bouton(A2);
 
 // Capteurs
@@ -45,15 +55,17 @@
 AnalogIn capteur_humidity_sol(A0);          // humidité sol
 #endif
 
-#ifdef AIR_PARAMETERS
-SHT21 sht(&i2c_1);                            // humidité + température air
-#endif
 
 #ifdef RGB
 Adafruit_TCS34725 RGBsens = Adafruit_TCS34725(&i2c_2, TCS34725_INTEGRATIONTIME_154MS, TCS34725_GAIN_1X);  // RGB
 #endif
 
+#ifdef AIR_PARAMETERS_DHT22
+DHT dht_sensor(D5, 22);
+#endif
+
 // Fonctions
+void    air_temp_hum(void);
 void    temp_sol(void);
 int     fct_humidity_sol(void);
 void    fct_RGB(void);
@@ -63,6 +75,8 @@
 void    interruption_bouton(void);
 void    turnOffScreen(void);
 void    initOLED(void);
+void    readBatteryLvl(void);
+
 
 // Variables globales
 bool            oled_on = 0;             // flag OLED
@@ -72,3 +86,5 @@
 unsigned char   humidity_air;
 unsigned char   pr, pg, pb;
 unsigned short  lum;
+char            vBat;
+bool            flag_readData = true;