Bmag incl gps rettelse

Dependencies:   mbed WDT MODSERIAL BME280

Revision:
11:d3d26d0e71ea
Child:
12:2b46960a5d41
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ErrorHandler/ErrorHandler.cpp	Fri Mar 31 12:30:20 2017 +0000
@@ -0,0 +1,78 @@
+#include "ErrorHandler.h"
+
+ErrorHandler::ErrorHandler(){
+    errorStr1.assign("        ");
+    errorStr2.assign("        ");
+    currentState  = NONE;
+    memset(tmparr,'\0',10);   
+};
+
+ErrorHandler::ErrorHandler(string * batteryvoltage, bool * fix, BMAG * bmag){
+    errorStr1.assign("        ");
+    errorStr2.assign("        ");
+    currentState  = NONE;
+    memset(tmparr,'\0',10);
+    fixptr = fix;
+    batteryvoltageptr = batteryvoltage;
+    bmagptr = bmag;       
+};
+
+
+string ErrorHandler::getLine1(void){
+    return errorStr1;
+};
+
+string ErrorHandler::getLine2(void){
+    return errorStr2;
+};
+
+void ErrorHandler::setErrorState(ErrorState es){
+    currentState = es;
+    
+    switch(currentState){
+        
+        case(NONE): 
+            break;
+            
+        case(NO_GPS):
+            errorStr1.assign("GPS data");
+            errorStr2.assign("Missing!");
+            break;            
+        
+        case(NO_FIX):
+            errorStr1.assign("SetClock");
+            errorStr2.assign("on mag!");        
+            break;
+        
+        case(NO_MAG_DATA):
+            errorStr1.assign("Mag data");
+            errorStr2.assign("missing!");              
+            break;
+        
+        case(DISPLAY_VBAT_FIX):
+            memset(tmparr,'\0',10);
+            sprintf(tmparr, "VB: %s", *batteryvoltageptr);
+            errorStr1.assign(tmparr);
+            
+            if(*fixptr){
+                errorStr2.assign("FIX: OK ");    
+            }
+            
+            if(!(*fixptr)){
+                errorStr2.assign("FIX:NONE");                
+            }
+            break;
+            
+        case(DISPLAY_MAG_MEASUREMENT):
+            memset(tmparr,'\0',10);
+            errorStr1.assign("nT:     ");            
+            sprintf(tmparr, "%s",bmagptr->getMagNTStr().c_str());
+            errorStr2.assign(tmparr);
+            break;
+        
+        default:
+            break;
+        
+        
+    }    
+};
\ No newline at end of file