Plant Monitoring Project
Dependencies: mbed SHT21_ncleee WakeUp SSD1306 DHT Adafruit_TCS34725 DS1820
main.hh@26:5d38b3abb89a, 2019-12-02 (annotated)
- Committer:
- Germaint
- Date:
- Mon Dec 02 10:19:02 2019 +0000
- Revision:
- 26:5d38b3abb89a
- Parent:
- 25:77322fbe298e
- Child:
- 29:29df6820812c
- Child:
- 30:0a25c02e25d9
Suppression WakUp;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Germaint | 25:77322fbe298e | 1 | #pragma once |
Germaint | 25:77322fbe298e | 2 | |
Germaint | 23:424b3149003b | 3 | #include "define.hh" |
Germaint | 23:424b3149003b | 4 | #include "mbed.h" |
Germaint | 23:424b3149003b | 5 | #include "DS1820.h" |
Germaint | 23:424b3149003b | 6 | #include "SHT21_ncleee.h" |
Germaint | 23:424b3149003b | 7 | #include "Adafruit_TCS34725.h" |
Germaint | 23:424b3149003b | 8 | #include "ssd1306.h" |
Germaint | 23:424b3149003b | 9 | |
Germaint | 23:424b3149003b | 10 | #define DUREE_OFF 10 // Durée en seconde entre deux mesures |
Germaint | 23:424b3149003b | 11 | #define DUREE_ECRAN_ON 5 // Durée en seconde d'éveil de l'écran |
Germaint | 23:424b3149003b | 12 | |
Germaint | 23:424b3149003b | 13 | #define I2C_SDA D4 |
Germaint | 23:424b3149003b | 14 | #define I2C_SCL D5 |
Germaint | 23:424b3149003b | 15 | |
Germaint | 23:424b3149003b | 16 | Ticker timeScreen; |
Germaint | 23:424b3149003b | 17 | |
Germaint | 23:424b3149003b | 18 | #ifdef DEBUG |
Germaint | 23:424b3149003b | 19 | Serial pc(SERIAL_TX, SERIAL_RX); |
Germaint | 23:424b3149003b | 20 | #endif |
Germaint | 23:424b3149003b | 21 | |
Germaint | 23:424b3149003b | 22 | #ifdef SIGFOX |
Germaint | 23:424b3149003b | 23 | Serial wisol(D1,D0); |
Germaint | 23:424b3149003b | 24 | #endif |
Germaint | 23:424b3149003b | 25 | |
Germaint | 23:424b3149003b | 26 | I2C i2c(I2C_SDA, I2C_SCL); |
Germaint | 23:424b3149003b | 27 | |
Germaint | 23:424b3149003b | 28 | #ifdef OLED |
Germaint | 23:424b3149003b | 29 | SSD1306 oled(D12, A6); |
Germaint | 23:424b3149003b | 30 | #endif |
Germaint | 23:424b3149003b | 31 | |
Germaint | 23:424b3149003b | 32 | InterruptIn bouton(D10); |
Germaint | 23:424b3149003b | 33 | |
Germaint | 23:424b3149003b | 34 | // Capteurs |
Germaint | 23:424b3149003b | 35 | #ifdef FLOOR_TEMPERATURE |
Germaint | 23:424b3149003b | 36 | DS1820 DS(D2); // temperature sol |
Germaint | 23:424b3149003b | 37 | #endif |
Germaint | 23:424b3149003b | 38 | |
Germaint | 23:424b3149003b | 39 | #ifdef FLOOR_HUMIDITY |
Germaint | 23:424b3149003b | 40 | AnalogIn capteur_humidity_sol(A0); // humidité sol |
Germaint | 23:424b3149003b | 41 | #endif |
Germaint | 23:424b3149003b | 42 | |
Germaint | 23:424b3149003b | 43 | #ifdef AIR_PARAMETERS |
Germaint | 23:424b3149003b | 44 | SHT21 sht(&i2c); // humidité + température air |
Germaint | 23:424b3149003b | 45 | #endif |
Germaint | 23:424b3149003b | 46 | |
Germaint | 23:424b3149003b | 47 | #ifdef RGB |
Germaint | 23:424b3149003b | 48 | Adafruit_TCS34725 RGBsens = Adafruit_TCS34725(&i2c, TCS34725_INTEGRATIONTIME_154MS, TCS34725_GAIN_1X); // RGB |
Germaint | 23:424b3149003b | 49 | #endif |
Germaint | 23:424b3149003b | 50 | |
Germaint | 23:424b3149003b | 51 | // Fonctions |
Germaint | 23:424b3149003b | 52 | float temp_sol(void); |
Germaint | 23:424b3149003b | 53 | int fct_humidity_sol(void); |
Germaint | 23:424b3149003b | 54 | void fct_RGB(void); |
Germaint | 23:424b3149003b | 55 | void sendDataSigfox(void); |
Germaint | 23:424b3149003b | 56 | void oledData(void); |
Germaint | 23:424b3149003b | 57 | void readData(void); |
Germaint | 23:424b3149003b | 58 | void interruption_bouton(void); |
Germaint | 23:424b3149003b | 59 | void turnOffScreen(void); |
Germaint | 23:424b3149003b | 60 | void initOLED(void); |
Germaint | 23:424b3149003b | 61 | |
Germaint | 23:424b3149003b | 62 | // Variables globales |
Germaint | 23:424b3149003b | 63 | bool oled_on = 0; // flag OLED |
Germaint | 23:424b3149003b | 64 | float temperature_sol; |
Germaint | 23:424b3149003b | 65 | unsigned char humidity_sol; |
Germaint | 23:424b3149003b | 66 | float temperature_air; |
Germaint | 23:424b3149003b | 67 | unsigned char humidity_air; |
Germaint | 23:424b3149003b | 68 | unsigned char pr, pg, pb; |
Germaint | 23:424b3149003b | 69 | unsigned short lum; |