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:
- 31:231a96d1d1c8
- Parent:
- 30:7a16a66d76f3
- Child:
- 33:f5d4bae05f16
diff -r 7a16a66d76f3 -r 231a96d1d1c8 main.cpp --- a/main.cpp Wed Feb 21 06:58:28 2018 +0000 +++ b/main.cpp Fri Feb 23 13:11:46 2018 +0000 @@ -146,8 +146,15 @@ //Boolean du status de l'appareil, en mode SECU ou nominal bool EN_MODE_SECU = false; + +//Test des alim DigitalIn V_USB(PA_0); -float Vusb = 1; +DigitalIn V_PILES_2(PC_3); +AnalogIn V_PILES(PA_1); + +int Vusb = 1; +int VPiles = 1; +float VPiles_2 = 1; //Interruption user button InterruptIn button(USER_BUTTON); @@ -159,7 +166,7 @@ serialMonit.printf("\r\n"); serialMonit.printf(" CO2 = %d ppm\r\n" , co2); serialMonit.printf(" PPO2 = %d mb\r\n", ppO2); - serialMonit.printf(" OTU = %d \r\n", OTU); + serialMonit.printf(" OTU = %d \r\n", (int)OTU); serialMonit.printf(" Pression = %f msw\r\n", pression); serialMonit.printf(" Temp MS5837 = %f C\r\n", Temp1); serialMonit.printf(" Temp HTU21D = %f C\n\r", Temp2); @@ -231,7 +238,7 @@ sleep_manager_sleep_auto(); } -//Fonction test de valeur d'entrée convertie en Hight / Low +//Fonction test de valeur d'entrée digitale int Power_Test(DigitalIn& pin) { pin.mode(PullDown); @@ -244,6 +251,13 @@ } } +//Fonction test de valeur d'entrée analogique +float Power_Test(AnalogIn& pin) +{ + float Val = pin.read(); + return Val; +} + //Contrôle du status de l'appareil / des constantes bool Check() { @@ -315,6 +329,7 @@ while (true) { //Alim USB Vusb = Power_Test(V_USB); + VPiles = Power_Test(V_PILES); //Divers problèmes à implémenter //if(!Check()) Mode_SECU(); } @@ -366,6 +381,10 @@ Mode_SECU(); }else if (0 == strcmp(com, "calib_O2")) { sensors.Calibrate_O2(true, (int)val); + }else if (0 == strcmp(com, "flash_i")) { + FLAG_REC = false; + UTILS::Flash_Infos(); + FLAG_REC = true; }else if (0 == strcmp(com, "check")) { FLAG_REC = false; serialMonit.printf(" Calibration_O2.txt = %f\r\n", UTILS::Read_A_Val("Calibration_O2")); @@ -388,7 +407,6 @@ FLAG_AFF = false; UTILS::Help(); }else if (0 == strcmp(com, "clean")) { - //Enregistrement de la chaine FLAG_REC = false; UTILS::Clean_Flash(); }else if (0 == strcmp(com, "dir")) { @@ -409,7 +427,19 @@ sprintf(filename, "LOG_%d.txt", (int)val); UTILS::Delete_Flash_File(filename); UTILS::Dir_Flash(); - FLAG_REC = true; + FLAG_REC = true; + }else if (0 == strcmp(com, "file_s")) { + FLAG_REC = false; + char filename[20]; + sprintf(filename, "LOG_%d.txt", (int)val); + 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)val); + // UTILS::Get_File_Infos_bis(filename); + // FLAG_REC = true; } else if (0 == strcmp(com, "calib_p")) { Consigne_poumon = 0; volet_poumon_Position = 0; @@ -688,11 +718,25 @@ 0 ); #endif - + char to_slave[50]; + //Fabrication de la chaine pour l'IHM + sprintf(to_slave,"%d:%d:%d:%.2f:%.2f:%.2f:%d:%d:%d:%.2f:%.2f\r\n", + co2, + ppO2, + (int)OTU, + pression, + Temp1, + Temp2, + Humid, + CellO2_1, + CellO2_2, + volet_poumon_Position, + volet_fuite_Position); + //Pour Android on ajoute < et > pour décoder l'arrivée du message if (NEED_ANDROID_OUTPUT == 1) { - sprintf(to_android,"<%s>",to_store); - ANDROID(to_android); + //sprintf(to_android,"<%s>",to_store); + ANDROID(to_slave); } //Calcul des OTU