avec dfu

Fork of Utils by POTLESS

Revision:
8:23fd400c4edd
Parent:
7:1bd8b236feb1
Child:
9:fa2818db80cf
--- a/Utils.cpp	Wed Feb 21 06:57:58 2018 +0000
+++ b/Utils.cpp	Fri Feb 23 13:11:14 2018 +0000
@@ -3,7 +3,8 @@
 
 SDBlockDevice bd(Flash_MOSI, Flash_MISO, Flash_SCK, Flash_CS);
 //SPIFBlockDevice bd(Flash_MOSI, Flash_MISO, Flash_SCK, Flash_CS);
-
+ 
+    
 FATFileSystem Root("Root");
 
 int Exist_Val = 0;
@@ -34,6 +35,106 @@
     wait_ms(100);
 }
 
+void UTILS::Flash_Infos()
+{
+    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());
+}
+
+void UTILS::Get_File_Size(char* File_Name) {
+    
+    char filename[20];
+    sprintf(filename, "/Root/%s", File_Name);
+
+    FILE* fd = fopen(filename, "r");
+    errno_error(fd); 
+         
+    fseek(fd, 0, SEEK_END);
+    int size = ftell(fd);
+    fseek(fd, 0, SEEK_SET);
+    
+    fclose(fd);
+    
+    printf("\r\n");
+    printf("  Taille du fichier %s = %d Kb\r\n", filename, size / 1024);
+}
+
+/*
+void UTILS::Get_File_Infos(char* File_Name) {
+    
+    char filename[20];
+    sprintf(filename, "/Root/%s", File_Name);
+    
+    struct stat fileStat;
+    stat(filename, &fileStat); 
+    
+    printf("Informations sur %s\r\n\r\n",filename);
+    printf("  Taille du fichier           :  %d bytes\r\n",&fileStat.st_size);
+    printf("  Heure dernier accès         :  %s\r\n",ctime(&fileStat.st_atime));
+    printf("  Heure dernière modification :  %s\r\n",ctime(&fileStat.st_mtime));
+    printf("  Heure dernier changement    :  %s\r\n",ctime(&fileStat.st_ctime));
+
+  
+    struct stat stat_buf;
+
+    stat(filename, &stat_buf);
+    
+
+    stat_buf.st_size;
+    stat_buf.st_dev;
+    stat_buf.st_ino;
+    stat_buf.st_mode;
+    stat_buf.st_nlink;
+    stat_buf.st_uid;
+    stat_buf.st_gid;
+    stat_buf.st_rdev;
+    stat_buf.st_size;
+    stat_buf.st_blksize;
+    stat_buf.st_blocks;
+    stat_buf.st_atime;
+    stat_buf.st_mtime;
+    stat_buf.st_ctime;
+
+    printf("  Taille du fichier           :  %d bytes\r\n",&stat_buf.st_size);
+    printf("  Heure dernier accès         :  %s\r\n",ctime(&stat_buf.st_atime));
+    printf("  Heure dernière modification :  %s\r\n",ctime(&stat_buf.st_mtime));
+    printf("  Heure dernier changement    :  %s\r\n",ctime(&stat_buf.st_ctime));
+
+}    
+
+void UTILS::Get_File_Infos_bis(char* File_Name) {
+    
+    char filename[20];
+    sprintf(filename, "/Root/%s", File_Name);
+    
+    struct stat fileStat;
+ 
+    stat(filename, &fileStat); 
+
+    printf("Information for %s\n",filename);
+    printf("---------------------------\n");
+    printf("File Size: \t\t%d bytes\n",fileStat.st_size);
+    printf("Number of Links: \t%d\n",fileStat.st_nlink);
+    printf("File inode: \t\t%d\n",fileStat.st_ino);
+ 
+    printf("File Permissions: \t");
+    printf( (fileStat.st_mode & S_IRUSR) ? "r" : "-");
+    printf( (fileStat.st_mode & S_IWUSR) ? "w" : "-");
+    printf( (fileStat.st_mode & S_IXUSR) ? "x" : "-");
+    printf( (fileStat.st_mode & S_IRGRP) ? "r" : "-");
+    printf( (fileStat.st_mode & S_IWGRP) ? "w" : "-");
+    printf( (fileStat.st_mode & S_IXGRP) ? "x" : "-");
+    printf( (fileStat.st_mode & S_IROTH) ? "r" : "-");
+    printf( (fileStat.st_mode & S_IWOTH) ? "w" : "-");
+    printf( (fileStat.st_mode & S_IXOTH) ? "x" : "-");
+    printf("\n\n");
+  
+}
+*/
+
 void UTILS::Store_A_Val(float Val_To_Store, char* File_Name)
 {
 
@@ -126,6 +227,7 @@
     FILE* fd = fopen(filename, "r");
     errno_error(fd);   
     char s1[100];
+    printf("\r\n");
     printf("  Contenu du fichier :\r\n\r\n");
     while (!feof(fd)) {
         memset(s1, 0, sizeof(s1));
@@ -288,26 +390,37 @@
 void UTILS::Help()
 {
     printf("\r\n");
-    printf("  Commandes à entrer dans le moniteur :\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("  rec              =    démarrage / arrêt enregistrement\r\n");
-    printf("  clean            =    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("  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");
-    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("  calib_O2 X       =    calibration des cellules O2 dans l'air avec X itérations\n\r");
-    printf("  check            =    sortie des valeurs de calibrations enregistrées\n\r");
-    printf("  sleep            =    mise en veille\n\r");
-    printf("  secu             =    mise des volets en mode sécu\n\r");
-    printf("  reset            =    reset de la carte\n\r\n\r");
-    printf("  Les commandes pour le Mini-r sont à entrer conformément à la doc.\n\r");
+    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("  clean            =    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\n\r");
+    printf("  COMMANDES CAPTEURS\r\n\r\n");   
+    printf("  calib_O2 X       =    calibration des cellules O2 dans l'air avec X itérations.\n\r");
+    printf("  check            =    sortie des valeurs de calibrations enregistrées.\n\r\n\r");  
+    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");
     fflush(stdout);
 }
\ No newline at end of file