avec dfu
Fork of Utils by
Revision 15:a8c19ad9c11d, committed 2018-04-09
- Comitter:
- POTLESS_2
- Date:
- Mon Apr 09 06:51:14 2018 +0000
- Parent:
- 14:fbf4be649b6a
- Child:
- 16:74cb32bb162f
- Commit message:
- modifs;
Changed in this revision
Utils.cpp | Show annotated file Show diff for this revision Revisions of this file |
Utils.h | Show annotated file Show diff for this revision Revisions of this file |
--- a/Utils.cpp Fri Mar 30 10:28:43 2018 +0000 +++ b/Utils.cpp Mon Apr 09 06:51:14 2018 +0000 @@ -37,19 +37,19 @@ wait_ms(100); } -void UTILS::Flash_Infos() +void UTILS::Flash_Infos(Serial *serial_port) { - printf("\r\n"); - printf("Flash size : %llu Mb\r\n", bd.size() / 1048576); - printf("Flash read size : %llu\r\n", bd.get_read_size()); - printf("Flash program size : %llu\r\n", bd.get_program_size()); - printf("Flash erase size : %llu\r\n", bd.get_erase_size()); + serial_port->printf("\r\n"); + serial_port->printf(" Flash size : %llu Mb\r\n", bd.size() / 1048576); + serial_port->printf(" Flash read size : %llu\r\n", bd.get_read_size()); + serial_port->printf(" Flash program size : %llu\r\n", bd.get_program_size()); + serial_port->printf(" Flash erase size : %llu\r\n", bd.get_erase_size()); } -void UTILS::Get_File_Size(char* File_Name) +void UTILS::Get_File_Size(Serial *serial_port, char* File_Name) { - char filename[20]; + char filename[50]; sprintf(filename, "/Root/%s", File_Name); FILE* fd = fopen(filename, "r"); @@ -61,15 +61,14 @@ fclose(fd); - printf("\r\n"); - printf(" Taille du fichier %s = %d Kb\r\n", filename, size / 1024); + serial_port->printf(" Taille du fichier %s = %d Kb\r\n", filename, size / 1024); } void UTILS::Store_A_Val(float Val_To_Store, char* File_Name) { - char filename[20]; - sprintf(filename, "/Root/%s.txt", File_Name); + char filename[50]; + sprintf(filename, "/Root/%s", File_Name); FILE* fd = fopen(filename, "w"); errno_error(fd); @@ -87,8 +86,8 @@ char *token; int i = 0; - char filename[20]; - sprintf(filename, "/Root/%s.txt", File_Name); + char filename[50]; + sprintf(filename, "/Root/%s", File_Name); DEEP_DEBUG(" \n Récupération de %s...\r\n", filename); @@ -130,7 +129,7 @@ /* void UTILS::Read_Flash_File(char* File_Name) { - char filename[20]; + char filename[50]; sprintf(filename, "/Root/%s", File_Name); FILE* fd = fopen(filename, "r"); @@ -149,30 +148,31 @@ } */ -void UTILS::Read_Flash_File(char* File_Name) -{ - char filename[20]; - sprintf(filename, "/Root/%s", File_Name); - +void UTILS::Read_Flash_File(Serial *serial_port, char* File_Name) +{ + if (File_Exist(File_Name)) { + char filename[50]; + sprintf(filename, "/Root/%s", File_Name); FILE* fd = fopen(filename, "r"); errno_error(fd); char s1[100]; printf("\r\n"); - printf(" Contenu du fichier :\r\n\r\n"); + DEBUG(" Contenu du fichier :\r\n\r\n"); while (!feof(fd)) { memset(s1, 0, sizeof(s1)); fgets(s1, sizeof(s1), fd); - printf("%s", s1); + serial_port->printf("%s", s1); fflush(stdout); } fclose(fd); - printf("\r\n Fin du fichier.\r\n"); + DEBUG("\r\n Fin du fichier.\r\n"); + } } -bool UTILS::File_Exist(string File_Name) +bool UTILS::File_Exist(char* File_Name) { - char filename[20]; - sprintf(filename, "/Root/%s.txt", File_Name); + char filename[50]; + sprintf(filename, "/Root/%s", File_Name); FILE* fd = fopen(filename, "r"); errno_error(fd); @@ -191,7 +191,7 @@ void UTILS::Delete_Flash_File(char* File_Name) { - char filename[20]; + char filename[50]; sprintf(filename, "%s", File_Name); int error = 0; error = Root.remove(filename); @@ -204,25 +204,33 @@ { DEBUG(" Nettoyage de la Flash.\r\n"); //float Saved_O2 = UTILS::Read_A_Val("Calibration_O2"); - int Saved_Motor = (int)UTILS::Read_A_Val("Servo_Poumon"); - int ARNSRS_ID = (int)UTILS::Read_A_Val("ARNSRS_ID"); + int Saved_Motor = (int)UTILS::Read_A_Val("Servo_Poumon.sys"); + int ARNSRS_ID = (int)UTILS::Read_A_Val("ARNSRS_ID.sys"); UTILS::UnMount_Flash(); UTILS::Format_Flash(); UTILS::Mount_Flash(); //UTILS::Store_A_Val(Saved_O2, "Calibration_O2"); - UTILS::Store_A_Val(Saved_Motor, "Servo_Poumon"); - UTILS::Store_A_Val(ARNSRS_ID, "ARNSRS_ID"); + UTILS::Store_A_Val(Saved_Motor, "Servo_Poumon.sys"); + UTILS::Store_A_Val(ARNSRS_ID, "ARNSRS_ID.sys"); DEBUG(" Flash nettoyée.\r\n"); DEBUG(" Redémmarage code.\r\n"); UTILS::UnMount_Flash(); NVIC_SystemReset(); } +void UTILS::Clean_Flash_All() +{ + DEBUG(" Nettoyage complet de la Flash.\r\n"); + UTILS::UnMount_Flash(); + UTILS::Format_Flash(); + NVIC_SystemReset(); +} + void UTILS::Rename_Flash_File(char* Old_File_Name, char* New_File_Name) { - char Oldfilename[20]; + char Oldfilename[50]; sprintf(Oldfilename, "/Root/%s", Old_File_Name); - char Newfilename[20]; + char Newfilename[50]; sprintf(Newfilename, "/Root/%s", New_File_Name); int error = 0; @@ -264,12 +272,12 @@ return_error(error); } -void UTILS::Dir_Flash(char* Dir_Name) +void UTILS::Dir_Flash(Serial *serial_port, char* Dir_Name) { int error = 0; int nb = 0; DEEP_DEBUG("\r\n Ouverture du répertoire %s\r\n", Dir_Name); - char Dirname[20]; + char Dirname[50]; sprintf(Dirname, "/Root/%s", Dir_Name); DIR* dir = opendir(Dirname); @@ -277,7 +285,7 @@ struct dirent* de; DEBUG(" Fichiers du répertoire :\r\n\r\n"); while((de = readdir(dir)) != NULL) { - printf(" %s\r\n", &(de->d_name)[0]); + serial_port->printf(" %s\r\n", &(de->d_name)[0]); fflush(stdout); nb++; } @@ -320,55 +328,55 @@ return x; } -void UTILS::Help() +void UTILS::Help(Serial *serial_port) { - printf("\r\n"); - printf(" COMMANDES GENERALES\r\n\r\n"); + serial_port->printf("\r\n"); + serial_port->printf(" COMMANDES GENERALES\r\n\r\n"); /* - printf(" help = liste des commandes.\r\n"); - printf(" start = démmarage des sorties moniteur.\r\n"); - printf(" stop = arrêt des sorties moniteur.\r\n"); - printf(" time X = met la RTC à l'heure, X en UNIX TIME.\n\r"); + serial_port->printf(" help = liste des commandes.\r\n"); + serial_port->printf(" start = démmarage des sorties moniteur.\r\n"); + serial_port->printf(" stop = arrêt des sorties moniteur.\r\n"); + serial_port->printf(" time X = met la RTC à l'heure, X en UNIX TIME.\n\r"); */ - printf(" ARNSRS_ID X = entrée de l'identifiant de l'appareil X.\r\n"); + serial_port->printf(" ARNSRS_ID X = entrée de l'identifiant de l'appareil X.\r\n"); /* - printf(" sleep = mise en veille.\n\r"); - printf(" reset = reset de la carte.\n\r\n\r"); - printf(" COMMANDES MEMOIRE\r\n\r\n"); - printf(" rec = démarrage / arrêt enregistrement.\r\n"); - printf(" flash_i = informations sur la flash.\r\n"); - printf(" flash_u = démonte la flash. A faire avant de débrancher ou recharger un code.\r\n"); - printf(" flash_m = monte la flash.\r\n"); - printf(" flash_c = nettoyage flash, suppression des fichiers LOG.\r\n"); - printf(" dir = liste des fichiers de la flash.\r\n"); - printf(" del X = effacer le fichier LOG_X.\n\r"); - printf(" get X = récupérer le contenu du fichier LOG_X.\n\r"); - printf(" file_s X = récupérer la taille du fichier LOG_X.\n\r\n\r"); - //printf(" file_i X = récupérer les informations sur le fichier LOG_X.\n\r\n\r"); - printf(" COMMANDES MOTEURS\r\n\r\n"); - printf(" c_pou X = changement consigne volet poumon à X.\n\r"); - printf(" c_fui X = changement consigne volet fuite à X.\n\r"); - printf(" calib_p = calibration à 0 du volet poumon.\n\r"); - printf(" calib_f = calibration à 0 du volet fuite.\n\r"); - printf(" secu = mise des volets en mode sécu.\n\r"); - printf(" check_F = sortie des valeurs 0 moteurs et ARNSRS_ID enregistrées.\n\r\n\r"); + serial_port->printf(" sleep = mise en veille.\r\n"); + serial_port->printf(" reset = reset de la carte.\r\n\r\n"); + serial_port->printf(" COMMANDES MEMOIRE\r\n\r\n"); + serial_port->serial_port->printf(" rec = démarrage / arrêt enregistrement.\r\n"); + serial_port->printf(" flash_i = informations sur la flash.\r\n"); + serial_port->printf(" flash_u = démonte la flash. A faire avant de débrancher ou recharger un code.\r\n"); + serial_port->printf(" flash_m = monte la flash.\r\n"); + serial_port->printf(" flash_c = nettoyage flash, suppression des fichiers LOG.\r\n"); + serial_port->printf(" dir = liste des fichiers de la flash.\r\n"); + serial_port->printf(" del X = effacer le fichier LOG_X.\r\n"); + serial_port->printf(" get X = récupérer le contenu du fichier LOG_X.\r\n"); + serial_port->printf(" file_s X = récupérer la taille du fichier LOG_X.\r\n"); + //serial_port->printf(" file_i X = récupérer les informations sur le fichier LOG_X.\r\n"); + serial_port->printf(" COMMANDES MOTEURS\r\n\r\n"); + serial_port->printf(" c_pou X = changement consigne volet poumon à X.\r\n"); + serial_port->printf(" c_fui X = changement consigne volet fuite à X.\r\n"); + serial_port->printf(" calib_p = calibration à 0 du volet poumon.\r\n"); + serial_port->printf(" calib_f = calibration à 0 du volet fuite.\r\n"); + serial_port->printf(" secu = mise des volets en mode sécu.\r\n"); + serial_port->printf(" check_F = sortie des valeurs 0 moteurs et ARNSRS_ID enregistrées.\r\n"); */ - printf(" COMMANDES CAPTEURS\r\n\r\n"); - printf(" Head_ID X = Numérote le numéro X d'identification de la sensor Head dans l'eeprom.\n\r"); - printf(" O2_1_ID X = Numérote le numéro X d'identification de la cellule O2 1 dans l'eeprom.\n\r"); - printf(" O2_2_ID X = Numérote le numéro X d'identification de la cellule O2 2 dans l'eeprom.\n\r"); - printf(" CO2_ID X = Numérote le numéro X d'identification du capteur CO2 dans l'eeprom.\n\r"); - printf(" check_E = sortie des valeurs de calibration enregistrées dans l'eeprom.\n\r\n\r"); - printf(" calib_O2 X = calibration des cellules O2 dans l'air avec X itérations.\n\r\n\r"); + serial_port->printf(" COMMANDES CAPTEURS\r\n\r\n"); + serial_port->printf(" Head_ID X = Numérote le numéro X d'identification de la sensor Head dans l'eeprom.\r\n"); + serial_port->printf(" O2_1_ID X = Numérote le numéro X d'identification de la cellule O2 1 dans l'eeprom.\r\n"); + serial_port->printf(" O2_2_ID X = Numérote le numéro X d'identification de la cellule O2 2 dans l'eeprom.\r\n"); + serial_port->printf(" CO2_ID X = Numérote le numéro X d'identification du capteur CO2 dans l'eeprom.\r\n"); + serial_port->printf(" check_E = sortie des valeurs de calibration enregistrées dans l'eeprom.\r\n"); + serial_port->printf(" calib_O2 X = calibration des cellules O2 dans l'air avec X itérations.\r\n"); - printf(" Les commandes pour le Mini-r sont à entrer conformément à la doc. Les plus utilisée :\n\r"); - printf(" G = calibration du capteur CO2 dans l'air.\n\r"); - printf(" K 0 = arrêt du capteur CO2.\n\r"); - printf(" K 1 = capteur CO2 mode streaming.\n\r"); - printf(" K 2 = capteur CO2 mode spooling.\n\r"); - printf(" A X = digi filter X. X égal à 32, 64, 128...\n\r"); - printf("\r\n\r\n"); + serial_port->printf(" Les commandes pour le Mini-r sont à entrer conformément à la doc. Les plus utilisée :\r\n"); + serial_port->printf(" G = calibration du capteur CO2 dans l'air.\r\n"); + serial_port->printf(" K 0 = arrêt du capteur CO2.\r\n"); + serial_port->printf(" K 1 = capteur CO2 mode streaming.\r\n"); + serial_port->printf(" K 2 = capteur CO2 mode spooling.\r\n"); + serial_port->printf(" A X = digi filter X. X égal à 32, 64, 128...\r\n"); + //serial_port->printf("\r\n"); fflush(stdout); } @@ -517,4 +525,4 @@ clean_line_EEPROM(pointer, address); } DEBUG("Eeprom néttoyée.\r\n"); -} +} \ No newline at end of file
--- a/Utils.h Fri Mar 30 10:28:43 2018 +0000 +++ b/Utils.h Mon Apr 09 06:51:14 2018 +0000 @@ -128,8 +128,9 @@ static float constrain(float x, float a, float b); /**Fonction d'affichage des infos de la Flash. + * @param Serial Port série ou sortir le résultat */ - static void Flash_Infos(); + static void Flash_Infos(Serial *serial_port = NULL); /**Fonction de stockage valeur sur la Flash. * @param float Val_To_Store, la valeur à stocker @@ -151,14 +152,16 @@ static void Write_Flash_File(char* To_Store, char* File_Name); /**Fonction de lecture d'un fichier sur la Flash. + * @param Serial Port série ou sortir le résultat * @param char* Nom du fichier */ - static void Read_Flash_File(char* File_Name); - + static void Read_Flash_File(Serial *serial_port, char* File_Name); + /**Fonction de renvoie de la taille d'un fichier. + * @param Serial Port série ou sortir le résultat * @param char* Nom du fichier */ - static void Get_File_Size(char* File_Name); + static void Get_File_Size(Serial *serial_port, char* File_Name); /**Fonction d'éffaçage d'un fichier sur la Flash. * @param char* Nom du fichier à effacer @@ -169,6 +172,10 @@ */ static void Clean_Flash(); + /**Fonction nettoyage de la Flash. + */ + static void Clean_Flash_All(); + /**Fonction d'éffaçage d'un fichier sur la Flash. * @param char* Nom du fichier à effacer * @param char* Nouveau Nom du fichier @@ -188,10 +195,11 @@ static void Format_Flash(); /**Fonction DIR. + * @param Serial Port série ou sortir le résultat * @param char* Nom du répertoire */ - static void Dir_Flash(char* Dir_Name = ""); - + static void Dir_Flash(Serial *serial_port = NULL, char* Dir_Name = ""); + /**Fonction de numérotage des fichiers log. * @returns * Index du nouveau fichier log @@ -203,11 +211,12 @@ * @returns * true si le fichier existe, false s'il n'existe pas */ - static bool File_Exist(string File_Name); + static bool File_Exist(char* File_Name); /**Fonction d'affichage du menu d'aide. + * @param Serial Port série ou sortir le résultat */ - static void Help(); + static void Help(Serial *serial_port = NULL); /**Fonction d'écriture sur l'eeprom. * @param char data à stocker @@ -233,7 +242,7 @@ static float read_F_EEPROM(unsigned int eeaddress, int address = EEPROM_ADDRESS); /**Fonction de lecture d'un char dans l'eeprom. - * @param char data ou vaêtre stocké le résultat + * @param char data ou va être stocké le résultat * @param int eeadress de stockage de la data dans l'eeprom * @param int adress adresse I2C de l'eeprom * @returns @@ -259,7 +268,7 @@ * @param int adress adresse I2C de l'eeprom */ static void clean_EEPROM(int address = EEPROM_ADDRESS); - + private: //Rien... };