mbed-os github

Dependencies:   ADS1015 Faulhaber HTU21D_mod MS5837_potless Sensor_Head_RevB_3 USBDevice_dfu Utilsdfu beep

Fork of ARNSRS_testDFU by POTLESS

Revision:
35:a209a192f431
Parent:
34:26f6e3dbefb9
Child:
36:1f5e2247b073
diff -r 26f6e3dbefb9 -r a209a192f431 main.cpp
--- a/main.cpp	Mon Mar 05 11:16:18 2018 +0000
+++ b/main.cpp	Tue Mar 06 10:32:45 2018 +0000
@@ -93,7 +93,7 @@
 int ppO2 = 0;
 int CellO2_1 = 0;
 int CellO2_2 = 0;
-
+    
 //Variables et constantes OTU
 float OTU = 0;
 float COEF_OTU = 0.83;
@@ -110,7 +110,6 @@
 int Humid;
 
 //Data LOG
-char header[50];
 char to_store[50];
 time_t seconds;
 char Log_File_Name[] = "                           ";
@@ -285,7 +284,7 @@
 void SENSORS_thread()
 {
     while (true) {
-        DEBUG("  SENSORS_thread\r\n");
+        DEEP_DEBUG("  SENSORS_thread\r\n");
 
         //CO2 sur Cozir
         co2 = sensors.requestCO2();
@@ -312,7 +311,7 @@
 void GO_TO_thread()
 {
     while (true) {
-        //DEBUG("  GO_TO_Thread\r\n");
+        DEEP_DEBUG("  GO_TO_Thread\r\n");
 
         //Servo_Poumon.Go_To_Prop(Consigne_poumon);
         //Servo_Poumon.Go_To_PID(Consigne_poumon, Volet_DeadBand);
@@ -327,7 +326,7 @@
 void SECU_thread()
 {
     while (true) {
-        //DEBUG("  SECU_Thread\r\n");
+        DEEP_DEBUG("  SECU_Thread\r\n");
 
         //Alim USB
         //Vusb = Power_Test(V_USB);
@@ -376,7 +375,7 @@
     
     sscanf(message,"%s %s",&com , &numb);
     
-    DEBUG("\r\n  Commande = %s       Valeur = %s \r\n\r\n", com, numb);
+    DEEP_DEBUG("\r\n  Commande = %s       Valeur = %s \r\n\r\n", com, numb);
     
     if (0 == strcmp(com, "secu")) {
         Mode_SECU();
@@ -404,12 +403,15 @@
         FLAG_REC = false;
         UTILS::Flash_Infos();
         FLAG_REC = true;
-    } else if (0 == strcmp(com, "check")) {
+    } else if (0 == strcmp(com, "check_F")) {
         FLAG_REC = false;
-        serialMonit.printf("  Calibration_O2.txt = %f\r\n", UTILS::Read_A_Val("Calibration_O2"));
+        serialMonit.printf("  ARNSRS_ID.txt   = %d\r\n", (int)UTILS::Read_A_Val("ARNSRS_ID"));
+        //serialMonit.printf("  Calibration_O2.txt = %f\r\n", UTILS::Read_A_Val("Calibration_O2"));
         serialMonit.printf("  Servo_Poumon.txt   = %d\r\n", (int)UTILS::Read_A_Val("Servo_Poumon"));
         //serialMonit.printf("Servo_Fuite.txt    = %d\r\n", (int)UTILS::Read_A_Val("Servo_Fuite");
         FLAG_REC = true;
+    } else if (0 == strcmp(com, "check_E")) {
+        sensors.Sensor_head_check();
     } else if (0 == strcmp(com, "rec")) {
         if (FLAG_REC) {
             FLAG_REC = false;
@@ -454,12 +456,6 @@
         sprintf(filename, "LOG_%d.txt", atoi(numb));
         UTILS::Get_File_Size(filename);
         FLAG_REC = true;
-        //}else if (0 == strcmp(com, "file_i")) {
-        //    FLAG_REC = false;
-        //    char filename[20];
-        //    sprintf(filename, "LOG_%d.txt", (int)valeur_2);
-        //    UTILS::Get_File_Infos_bis(filename);
-        //    FLAG_REC = true;
     } else if (0 == strcmp(com, "calib_p")) {
         Consigne_poumon = 0;
         volet_poumon_Position = 0;
@@ -558,50 +554,6 @@
     DEBUG("  Nouveau fichier LOG = %s \r\n", Log_File_Name);
 }
 
-void Create_File_Header()
-{
-    //On récupère tout...
-    //Les identifiants matériel
-    int ARNSRS_ID = UTILS::Read_A_Val("ARNSRS_ID");
-    int Head_ID = UTILS::read_I_EEPROM(HEAD_ID);
-    int Co2_ID = UTILS::read_I_EEPROM(CO2_ID);
-    int Cell_o2_1_ID = UTILS::read_I_EEPROM(CELL_O2_1_ID);
-    int Cell_o2_2_ID = UTILS::read_I_EEPROM(CELL_O2_2_ID);
-    //Les calibrations O2
-    float calibO2_1 = UTILS::read_F_EEPROM(O2_POINT_1);//Calib dans l'air
-    float calibO2_2 = UTILS::read_F_EEPROM(O2_POINT_2);//Calib dans du 0%, N2 par exemple
-    float calibO2_3 = UTILS::read_F_EEPROM(O2_POINT_3);//Calib dans un gaz donné
-    //Les calibrations CO2
-    int calibCO2_1 = UTILS::read_I_EEPROM(CO2_POINT_1);//Calib dans l'air
-    int calibCO2_2 = UTILS::read_I_EEPROM(CO2_POINT_2);//Calib dans du 0%, N2 par exemple
-    int calibCO2_3 = UTILS::read_I_EEPROM(CO2_POINT_3);//Calib dans un gaz donné
-
-    //Fabrication de la chaine Date / heure
-    seconds = time(NULL);
-    char Time[32];
-    strftime(Time, 32, "%D %I-%M-%S ", localtime(&seconds));
-    //Fabrication de la chaine à enregistrer
-    sprintf(header,"FICHIER %s\r\n> Date : %s\r\n> ARNSRS Id : %d\r\n> Sensor Head Id : %d\r\n> CO2 Id : %d\r\n> Cell O2 Id : %d et %d\r\n> Calib O2 dans l'Air : %f\r\n> Calib O2 dans le N2 : %f\r\n> Calib O2 dans le X : %f\r\n> Calib CO2 dans l'Air : %d\r\n> Calib CO2 dans le N2 : %d\r\n> Calib CO2 dans le X : %d\r\n",
-            Log_File_Name,
-            Time,
-            ARNSRS_ID,
-            Head_ID,
-            Co2_ID,
-            Cell_o2_1_ID,
-            Cell_o2_2_ID,
-            calibO2_1,//Calib dans l'air
-            calibO2_2,//Calib dans du 0%, N2 par exemple
-            calibO2_3,//Calib dans un gaz donné
-            calibCO2_1,//Calib dans l'air
-            calibCO2_2,//Calib dans du 0%, N2 par exemple
-            calibCO2_3//Calib dans un gaz donné
-           );
-
-    DEBUG("  Header du fichier LOG : \r\n\r\n%s\r\n\r\n", header);
-
-    UTILS::Write_Flash_File(header, Log_File_Name);
-}
-
 int main()
 {
 
@@ -611,7 +563,7 @@
 
     while (1) {
 
-        if (count == 0) serialMonit.printf("\r\nAppuyez sur le User Button pour commencer...\r\n\r\n");
+        if (count == 0) serialMonit.printf("\r\n  Appuyez sur le User Button pour commencer...\r\n\r\n");
 
         count = 1;
 
@@ -661,17 +613,20 @@
             */
 
             sensors.Sensors_INIT(calib_O2, calib_CO2);
-
             wait(1);
 
-            Servo_Poumon.Init("Servo_Poumon");
-            //Servo_Fuite.Init("Servo_Fuite");
-
+            sensors.Sensor_head_check();
+            wait(1);
+            
             //Création du nouveau fichier LOG par index / par date.
             Create_File_Name_Index();
             //Create_File_Name_Date()
+            
             //Création et écriture du header du fichier LOG
-            Create_File_Header();
+            sensors.Create_Header(Log_File_Name);
+            
+            Servo_Poumon.Init("Servo_Poumon");
+            //Servo_Fuite.Init("Servo_Fuite");
 
             DEBUG("  Demarrage des threads...\r\n\r\n");