joseph adamu
/
cw_final_thr1
coursework
sensor_data.h
- Committer:
- joseph_adamu
- Date:
- 2018-01-10
- Revision:
- 1:dc648c5624b9
- Child:
- 2:54c537a2569a
File content as of revision 1:dc648c5624b9:
#include "mbed.h" #include "BMP280.h" #include "calender_operation.h" float getTemperature_bmp280; // Read the current Temperature value from BME280 sensor float getPressure_bmp280; // Read the current humidity value (humidity %) from BME280 sensor float fLDR; // Read the current light intensity value from LDR sensor float temperature_data [120], pressure_data[120], LDR_data[120]; BMP280 bmp280(D14,D15,0x77); //Assigning the pin for BMP280 Pressure sensor AnalogIn LDR(A1); //Assigning the pin for LDR int counter_store = 0, full = 0, day, month, year, leap; //***** setting up the time ************ // h/hh/mi/mni/s/ss // h=> first integer value of the Hour // hh=> second integer value of the Hour // mi=> first integer value of the Minutes // mni=> second integer value of the Minutes // s=> first integer value of the Seconds // ss => second integer value of the Seconds void time_rule() { if (ss == 10) { ss = 0; s++; } if (s == 6 && ss == 1) { ss = 1; s = 0; mmi++; } if (mmi == 10) { mmi = 0; mi++; } if (mi == 6 && mmi == 1) { mi = 0; mmi = 1; hh++; } if (hh == 10) { hh = 0; h++; } if(h == 2 && hh == 4) { h = 0; hh = 0; dd++; } } /********* Setting the date up *********/ void date_rule() { if (mm == 10) { mm = 0; m++; } if (m == 1 && mm == 3) { m = 0; mm = 1; yyyy++; } if (yyyy== 10) { yyyy = 0; yyy++; } if (yyy == 10) { yyy = 0; yy++; } if (yy == 10) { yy = 0; y++; } } void day_check() { day = 10*d + dd; month = mi*10+mmi; year = y*1000+yy*100+yyy*10+yyyy; if((month == 1)||(month ==3)||(month ==5)||(month ==7)||(month ==8)||(month ==10)||(month ==12)) { if (day == 32) { mm++; d = 0; dd = 1; } } else if(month == 4||6||9||11 ) { if (day == 31) { mm++; d = 0; dd = 1; } } else if(month == 2) { leap = year % 4; if(leap == 0) { if (day == 30) { mm++; d = 0; dd = 1; } } else { if (day == 29) { mm++; d = 0; dd = 1; } } } date_rule(); } //Sensor setup void sensor_operation() { getTemperature_bmp280 = bmp280.getTemperature(); getPressure_bmp280 = bmp280.getPressure(); fLDR = LDR; } //******* Displaying sensor data to the lcd to allocated position ************* void sensor_lcd() { lcd.locate(10,0); lcd.printf("L:%1.2f", fLDR); lcd.locate(0,0); lcd.printf("P:%3.1f", getPressure_bmp280); lcd.locate(10,1); lcd.printf("T:%3.1f", getTemperature_bmp280); } void records() { temperature_data[counter_store] = getTemperature_bmp280; pressure_data[counter_store] = getPressure_bmp280; LDR_data[counter_store] = fLDR; if (counter_store == 120) { counter_store = 0; full = 1; } counter_store++; }