avec dfu

Fork of Utils by POTLESS

Files at this revision

API Documentation at this revision

Comitter:
POTLESS_2
Date:
Fri Feb 23 13:11:14 2018 +0000
Parent:
7:1bd8b236feb1
Child:
9:fa2818db80cf
Commit message:
nouvelles fonctions

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	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
--- a/Utils.h	Wed Feb 21 06:57:58 2018 +0000
+++ b/Utils.h	Fri Feb 23 13:11:14 2018 +0000
@@ -7,6 +7,7 @@
 #include "FATFileSystem.h"
 #include "SDBlockDevice.h"
 //#include "SPIFBlockDevice.h"
+
 #include <stdio.h>
 #include <errno.h>
 
@@ -111,6 +112,10 @@
     */
     static float constrain(float x, float a, float b);
 
+    /**Fonction d'affichage des infos de la Flash.
+    */
+    static void Flash_Infos();
+    
     /**Fonction de stockage valeur sur la Flash.
     * @param float Val_To_Store, la valeur à stocker
     * @param char* Nom du fichier ou stocker cette valeur
@@ -134,9 +139,24 @@
     * @param char* Nom du fichier
     */
     static void Read_Flash_File(char* File_Name);
-
+    
+    /**Fonction de renvoie de la taille d'un fichier.
+    * @param char* Nom du fichier
+    */
+    static void Get_File_Size(char* File_Name);
+    
+    /**Fonction de renvoie des infos d'un fichier.
+    * @param char* Nom du fichier
+    */
+    static void Get_File_Infos(char* File_Name);
+    
+    /**Fonction de renvoie des infos d'un fichier.
+    * @param char* Nom du fichier
+    */
+    static void Get_File_Infos_bis(char* File_Name);
+    
     /**Fonction d'éffaçage d'un fichier sur la Flash.
-    * @param char* Nom du fichier
+    * @param char* Nom du fichier à effacer
     */
     static void Delete_Flash_File(char* File_Name);