Bmag incl gps rettelse

Dependencies:   mbed WDT MODSERIAL BME280

Revision:
12:2b46960a5d41
Parent:
11:d3d26d0e71ea
Child:
13:45b333983206
--- a/ErrorHandler/ErrorHandler.cpp	Fri Mar 31 12:30:20 2017 +0000
+++ b/ErrorHandler/ErrorHandler.cpp	Wed Apr 05 13:00:10 2017 +0000
@@ -4,7 +4,9 @@
     errorStr1.assign("        ");
     errorStr2.assign("        ");
     currentState  = NONE;
-    memset(tmparr,'\0',10);   
+    setMagTimePrompted = false;
+    memset(tmparr,'\0',10);
+    magPromptCounter = 0;   
 };
 
 ErrorHandler::ErrorHandler(string * batteryvoltage, bool * fix, BMAG * bmag){
@@ -14,7 +16,9 @@
     memset(tmparr,'\0',10);
     fixptr = fix;
     batteryvoltageptr = batteryvoltage;
-    bmagptr = bmag;       
+    bmagptr = bmag;
+    setMagTimePrompted = false;
+    magPromptCounter = 0;       
 };
 
 
@@ -41,7 +45,14 @@
         
         case(NO_FIX):
             errorStr1.assign("SetClock");
-            errorStr2.assign("on mag!");        
+            errorStr2.assign("on mag!");
+            
+            if(magPromptCounter <= 300){
+                magPromptCounter += 1;
+            }
+            if(magPromptCounter > 300){
+                setMagTimePrompted = true;      
+            }                  
             break;
         
         case(NO_MAG_DATA):
@@ -65,7 +76,10 @@
             
         case(DISPLAY_MAG_MEASUREMENT):
             memset(tmparr,'\0',10);
-            errorStr1.assign("nT:     ");            
+            errorStr1.assign("Q:   nT:");  
+            errorStr1[2] = bmagptr->getMagSq()[0];
+            errorStr1[3] = bmagptr->getMagSq()[1];
+            
             sprintf(tmparr, "%s",bmagptr->getMagNTStr().c_str());
             errorStr2.assign(tmparr);
             break;
@@ -75,4 +89,8 @@
         
         
     }    
+};
+
+bool ErrorHandler::getMagTimePromtStatus(void){
+    return setMagTimePrompted;  
 };
\ No newline at end of file