File manager

Dependencies:   SDFileSystem

Dependents:   RwSDCard_Xml_GPS

Revision:
17:d24d2b2bbd42
Parent:
16:c13dc589bb55
Child:
19:5af5c60e7a9f
--- a/FileManager.cpp	Mon May 23 11:19:54 2016 +0000
+++ b/FileManager.cpp	Tue May 24 07:16:38 2016 +0000
@@ -17,12 +17,20 @@
 Variable_Data_TypeDef m_varList[MAX_VAR];   // Variable List
 unsigned int m_amountVarList = 0;           // Amount of variable list
 
+/** Connect pin for SD Card LED  */ 
 #ifdef LED_SDCARD
-DigitalOut ledStatus(LED_SDCARD);
+DigitalOut ledStatus(LED_SDCARD);           
 #else
 DigitalOut ledStatus(NC);
 #endif
 
+/** Connect pin for SD Card Switch  */ 
+#ifdef SDCARD_SWITCH
+DigitalOut sdSwitch(SDCARD_SWITCH);
+#else
+DigitalOut sdSwitch(NC);
+#endif
+
 /* ###############  Static function prototype  ################## */
 
 static void FILEMANAGER_RemoveSpaces(char* s , int size);
@@ -548,8 +556,19 @@
     /* Check LED Connection  */
     if (ledStatus.is_connected())
     {
-        /* Set LED regarding to given argment */
-        ledStatus = on;
+        #ifdef SDCARD_SWITCH
+        /** SDCARD Switch is defined */
+        if (sdSwitch.is_connected() && !sdSwitch ) 
+        {
+            /** SDCARD Switch is connected and set to low = SD card is not present. Therefore, turn LED off */
+            ledStatus = false;
+        }
+        else 
+        #endif
+        {
+            /* Set LED regarding to given argment */
+            ledStatus = on;
+        }
     }
     #if DEBUG
     else