Venkata Siva Krishna Madala / Mbed 2 deprecated ECE4180FinalProjectFall22

Dependencies:   4DGL-uLCD-SE ENS160_Library mbed PinDetect mbed-rtos

Committer:
krishnamvs
Date:
Tue Dec 06 21:23:57 2022 +0000
Revision:
10:112572fbb168
Parent:
8:31e63caf37e2
Child:
11:03f86b377280
V1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
4180_1 0:cfcf73272647 1 #include "mbed.h"
krishnamvs 10:112572fbb168 2 #include "ens160_i2c.h"
4180_1 2:75727e89a717 3 #include "uLCD_4DGL.h"
4180_1 0:cfcf73272647 4
krishnamvs 10:112572fbb168 5 ENS160 myENS(p9, p10, ENS160_ADDRESS_HIGH);
krishnamvs 10:112572fbb168 6 DigitalOut myled(LED1);
krishnamvs 10:112572fbb168 7 Serial pc(USBTX, USBRX);
krishnamvs 10:112572fbb168 8 uLCD_4DGL uLCD(p28,p27,p30); // serial tx, serial rx, reset pin;
krishnamvs 10:112572fbb168 9
krishnamvs 10:112572fbb168 10 bool printedCompensation = false;
krishnamvs 10:112572fbb168 11 int ensStatus;
krishnamvs 10:112572fbb168 12
krishnamvs 10:112572fbb168 13 float rh;
krishnamvs 10:112572fbb168 14 float tempC;
4180_1 0:cfcf73272647 15
4180_1 2:75727e89a717 16 int main()
4180_1 2:75727e89a717 17 {
krishnamvs 10:112572fbb168 18 if (!myENS.init())
krishnamvs 10:112572fbb168 19 {
krishnamvs 10:112572fbb168 20 pc.printf("Hello, ENS160! Reading raw data from registers...\n");
krishnamvs 10:112572fbb168 21 while(1);
4180_1 7:7bd7397ab89f 22 }
krishnamvs 10:112572fbb168 23 if( myENS.setOperatingMode(SFE_ENS160_RESET) )
krishnamvs 10:112572fbb168 24 pc.printf("Ready.\n");
krishnamvs 10:112572fbb168 25 wait(0.1);
krishnamvs 10:112572fbb168 26 myENS.setOperatingMode(SFE_ENS160_IDLE);
4180_1 7:7bd7397ab89f 27 wait(0.5);
krishnamvs 10:112572fbb168 28 myENS.setOperatingMode(SFE_ENS160_STANDARD);
krishnamvs 10:112572fbb168 29 ensStatus = myENS.getFlags();
krishnamvs 10:112572fbb168 30 pc.printf("Gas Sensor Status Flag: ");
krishnamvs 10:112572fbb168 31 pc.printf("%d\n", ensStatus);
krishnamvs 10:112572fbb168 32 while (1)
krishnamvs 10:112572fbb168 33 {
krishnamvs 10:112572fbb168 34 if( myENS.checkDataStatus() )
krishnamvs 10:112572fbb168 35 {
krishnamvs 10:112572fbb168 36 if( printedCompensation == false)
krishnamvs 10:112572fbb168 37 {
krishnamvs 10:112572fbb168 38 pc.printf("---------------------------\n");
krishnamvs 10:112572fbb168 39 pc.printf("Compensation Temperature: ");
krishnamvs 10:112572fbb168 40 pc.printf("%f\n", myENS.getTempCelsius());
krishnamvs 10:112572fbb168 41 pc.printf("---------------------------");
krishnamvs 10:112572fbb168 42 pc.printf("Compensation Relative Humidity: ");
krishnamvs 10:112572fbb168 43 pc.printf("%f\n", myENS.getRH());
krishnamvs 10:112572fbb168 44 pc.printf("---------------------------\n");
krishnamvs 10:112572fbb168 45 printedCompensation = true;
krishnamvs 10:112572fbb168 46 wait(0.5);
4180_1 3:454d1f4c8fd7 47 }
krishnamvs 10:112572fbb168 48
krishnamvs 10:112572fbb168 49 pc.printf("Air Quality Index (1-5) : ");
krishnamvs 10:112572fbb168 50 pc.printf("%d\n", myENS.getAQI());
krishnamvs 10:112572fbb168 51
krishnamvs 10:112572fbb168 52 pc.printf("Total Volatile Organic Compounds: ");
krishnamvs 10:112572fbb168 53 pc.printf("%d", myENS.getTVOC());
krishnamvs 10:112572fbb168 54 pc.printf("ppb\n");
krishnamvs 10:112572fbb168 55
krishnamvs 10:112572fbb168 56 pc.printf("CO2 concentration: ");
krishnamvs 10:112572fbb168 57 pc.printf("%d", myENS.getECO2());
krishnamvs 10:112572fbb168 58 pc.printf("ppm\n");
krishnamvs 10:112572fbb168 59
4180_1 3:454d1f4c8fd7 60 }
krishnamvs 10:112572fbb168 61 wait(0.1);
4180_1 5:a1ef40ff0f78 62 }
krishnamvs 10:112572fbb168 63 }