mbed-os github
Dependencies: ADS1015 Faulhaber HTU21D_mod MS5837_potless Sensor_Head_RevB_3 USBDevice_dfu Utilsdfu beep
Fork of ARNSRS_testDFU by
Diff: main.cpp
- 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");