attempt to fix posible power issues with the sharp

Dependencies:   ADS1115 BME280 CronoDot SDFileSystem mbed

Fork of Outdoor_UPAS_v1_2_Tboard by scott kelleher

Revision:
17:3e6dda6e6335
Parent:
16:577cb22cec99
Child:
18:41ef98db0423
--- a/main.cpp	Tue Mar 22 18:08:12 2016 +0000
+++ b/main.cpp	Tue Mar 22 21:18:42 2016 +0000
@@ -25,7 +25,7 @@
 MCP40D17            DigPot(&i2c);
 BME280              bmesensor(PB_9, PB_8);//(D14, D15);
 NCP5623BMUTBG       RGB_LED(PB_9, PB_8);//(D14, D15);
-//CronoDot            RTC_UPAS(PB_9, PB_8);//(D14, D15);
+CronoDot            RTC_UPAS(PB_9, PB_8);//(D14, D15);
 EEPROM              E2PROM(PB_9, PB_8);//(D14, D15);
 Calibration         calibrations(1);     //Default serial/calibration if there are no values for the selected option
 
@@ -36,10 +36,9 @@
 Serial microChannel(PB_10, PB_11); // tx, rx
 DigitalOut          bleRTS(PB_14, 0);
 DigitalOut          bleCTS(PB_13, 0);
-/*
 DigitalOut          BT_IRST(PC_8, 0);
 DigitalOut          BT_SW(PA_12, 0);
-*/
+
 
 /////////////////////////////////////////////
 //Analog to Digital Converter
@@ -71,7 +70,7 @@
 /////////////////////////////////////////////
 //GPS
 /////////////////////////////////////////////
-DigitalOut      gpsEN(PB_15, 1);
+DigitalOut      gpsEN(PB_15, 0);
 Max_M8 gps(PB_9, PB_8,(66<<1));   // this must be defnined in the int main (? Not sure if this is true)
 
 /////////////////////////////////////////////
@@ -252,7 +251,7 @@
                 
                 //if(dataLength==6)RTC_UPAS.set_time(writeData[0],writeData[1],writeData[2],writeData[3],writeData[3],writeData[4],writeData[5]);//sets chronodot RTC
                 if(dataLength==6){
-                        //RTC_UPAS.set_time(writeData[0],writeData[1],writeData[2],writeData[3],writeData[3],writeData[4],writeData[5]);//sets chronodot RTC
+                        RTC_UPAS.set_time(writeData[0],writeData[1],writeData[2],writeData[3],writeData[3],writeData[4],writeData[5]);//sets chronodot RTC
                         ///////////////////////
                         //sets ST RTC
                         //////////////////////
@@ -390,12 +389,12 @@
     //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
     //UPDATE THIS TO WORK WITH ST RTC INSTEAD
     //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
- /*  
+   
     if(RTC_UPAS.compare(startAndEndTime[6], startAndEndTime[7], startAndEndTime[8], startAndEndTime[9], startAndEndTime[10], startAndEndTime[11])) {
         pbKill = 0; // this is were we shut everything down
         //pc.printf("If you're reading this something has gone very wrong.");
     }
-*/ 
+ 
 }
 
 //////////////////////////////////////////////////////////////
@@ -409,7 +408,7 @@
     time_t seconds = time(NULL);
     strftime(timestr, 32, "%y%m%d%H%M%S", localtime(&seconds));
 
-    //RTC_UPAS.get_time(); 
+    RTC_UPAS.get_time(); 
     press = bmesensor.getPressure();
     temp = bmesensor.getTemperature()-5.0;
     rh = bmesensor.getHumidity();
@@ -446,7 +445,8 @@
     vInReading = ads.readADC_SingleEnded(1, 0xD583); // read channel 0
     vBlowerReading = ads.readADC_SingleEnded(2, 0xE783); // read channel 0
     omronDiff = ads.readADC_Differential(0x8583); // differential channel 2-3
-        
+     
+    if(gpsEN ==1){    
     gps.read(1);
         RGB_LED.set_led(1,1,0);
         gpsspeed = gps.speed;
@@ -511,8 +511,10 @@
               }
 */
      
+}
+     
     FILE *fp = fopen(filename, "a");
-    //fprintf(fp, "%02d,%02d,%02d,%02d,%02d,%02d,",RTC_UPAS.year, RTC_UPAS.month,RTC_UPAS.date,RTC_UPAS.hour,RTC_UPAS.minutes,RTC_UPAS.seconds);
+    fprintf(fp, "%02d,%02d,%02d,%02d,%02d,%02d,",RTC_UPAS.year, RTC_UPAS.month,RTC_UPAS.date,RTC_UPAS.hour,RTC_UPAS.minutes,RTC_UPAS.seconds);
     fprintf(fp, "%s,", timestr);
     fprintf(fp, "%1.3f,%1.3f,%2.2f,%4.2f,%2.1f,%1.3f,", omronVolt,massflow,temp,press,rh,atmoRho);
     fprintf(fp, "%1.3f,%5.1f,%1.1f,%1.1f,%1.1f,%1.1f,", volflow, sampledVol, accel_x, accel_y, accel_z, accel_comp);
@@ -589,6 +591,12 @@
 //////////////////////////////////////////////////////////////
 int main(){
     
+    gpsEN = 0;
+    BT_SW = 1;
+    wait(1);
+    BT_IRST = 1;
+    wait(1);
+    
     RGB_LED.set_led(0,0,1);
     STtime.tm_sec = 10;    // 0-59
     STtime.tm_min = 30;    // 0-59
@@ -637,7 +645,7 @@
     motor4.stop();
     RGB_LED.set_led(0,0,1);
 
-
+*/
 
 
     pc.baud(115200);  // set what you want here depending on your terminal program speed
@@ -723,7 +731,7 @@
     } else {
         gainFlow = 25;
     }
-*/
+
     RGB_LED.set_led(1,0,0);
     press = bmesensor.getPressure();
     temp = bmesensor.getTemperature();
@@ -734,7 +742,7 @@
 
     DigPot.writeRegister(digital_pot_setpoint);
     wait(1);
-    blower = 1;
+    //blower = 1;
 
     uint8_t subjectLabelOriginal[8] = {0,};
     E2PROM.read(0x00001, subjectLabelOriginal,8); 
@@ -745,8 +753,8 @@
     strftime(timestr, 32, "%y-%m-%d-%H=%M=%S", localtime(&seconds));
 
     //sprintf(filename, "/sd/UPAS%04dLOG_%02d-%02d-%02d_%02d=%02d=%02d_%c%c%c%c%c%c%c%c.txt",serial_num,RTC_UPAS.year,RTC_UPAS.month,RTC_UPAS.date,RTC_UPAS.hour,RTC_UPAS.minutes,RTC_UPAS.seconds,subjectLabelOriginal[0],subjectLabelOriginal[1],subjectLabelOriginal[2],subjectLabelOriginal[3],subjectLabelOriginal[4],subjectLabelOriginal[5],subjectLabelOriginal[6],subjectLabelOriginal[7]);
-    //sprintf(filename, "/sd/UPAS_TboardtestLog_%s_%c%c%c%c%c%c%c%c.txt", timestr,subjectLabelOriginal[0],subjectLabelOriginal[1],subjectLabelOriginal[2],subjectLabelOriginal[3],subjectLabelOriginal[4],subjectLabelOriginal[5],subjectLabelOriginal[6],subjectLabelOriginal[7]);
-    sprintf(filename, "/sd/UPAS_TboardtestLog_%s.txt", timestr);
+    sprintf(filename, "/sd/UPAS_TboardtestLog_%s_%c%c%c%c%c%c%c%c.txt", timestr,subjectLabelOriginal[0],subjectLabelOriginal[1],subjectLabelOriginal[2],subjectLabelOriginal[3],subjectLabelOriginal[4],subjectLabelOriginal[5],subjectLabelOriginal[6],subjectLabelOriginal[7]);
+   // sprintf(filename, "/sd/UPAS_TboardtestLog_%s.txt", timestr);
     FILE *fp = fopen(filename, "w");
     fclose(fp);