avec dfu
Fork of Utils by
Diff: Utils.h
- Revision:
- 6:8bae97034114
- Parent:
- 5:0f3b6e6677ef
- Child:
- 7:1bd8b236feb1
diff -r 0f3b6e6677ef -r 8bae97034114 Utils.h --- a/Utils.h Tue Feb 13 16:54:00 2018 +0000 +++ b/Utils.h Tue Feb 20 16:48:46 2018 +0000 @@ -6,14 +6,23 @@ #include "FATFileSystem.h" #include "SDBlockDevice.h" +//#include "SPIFBlockDevice.h" #include <stdio.h> #include <errno.h> -//PIN OUT carte SD -#define SD_MOSI PA_7 -#define SD_MISO PA_6 -#define SD_SCK PA_5 -#define SD_CS PB_6 +//PIN OUT Flash +#define Flash_MOSI PA_7 +#define Flash_MISO PA_6 +#define Flash_SCK PA_5 +#define Flash_CS PB_6 + +#define DEBUG_UTILS 0 + +#if DEBUG_UTILS +#define DEBUG_U(...) { printf(__VA_ARGS__); fflush(stdout);} +#else +#define DEBUG_U(...) +#endif /** Utils class. * Rassemblant des fonctions annexes pour le fonctionnement de l'ARNSRS. @@ -22,21 +31,63 @@ * * - FATFileSystem * - * - SDBlockDevice + * - SPIFBlockDevice * * * Constantes de l'application : * - * Pin out carte SD : + * Pin out Flash : + * + * - Flash_MOSI PA_7 + * + * - Flash_MISO PA_6 + * + * - Flash_SCK PA_5 + * + * - Flash_CS PB_6 + * + * Liste des erreurs possibles sur les fonctions Flash : * - * - SD_MOSI PA_7 + * + * (0) no error + * + * (1) A hard error occurred in the low level disk I/O layer + * + * (2) Assertion failed + * + * (3) The physical drive cannot work + * + * (4) Could not find the file + * + * (5) Could not find the path * - * - SD_MISO PA_6 + * (6) The path name format is invalid + * + * (7) Access denied due to prohibited access or directory full, Permission denied + * + * (8) Access denied due to prohibited access, File exists + * + * (9) The file/directory object is invalid, Bad address + * + * (10) The physical drive is write protected + * + * (11) The logical drive number is invalid + * + * (12) The volume has no work area, No such device or address * - * - SD_SCK PA_5 + * (13) There is no valid FAT volume, No such file or directory + * + * (14) The f_mkfs() aborted due to any parameter error + * + * (15) Could not get a grant to access the volume within defined period, Bad file number * - * - SD_CS PB_6 + * (16) The operation is rejected according to the file sharing policy, Permission denied + * + * (17) LFN working buffer could not be allocated, Not enough space * + * (18) Number of open files > _FS_LOCK, Too many open files in system + * + * (19) Given parameter is invalid, Exec format error */ class UTILS @@ -60,57 +111,61 @@ */ static float constrain(float x, float a, float b); - /**Fonction de stockage valeur sur la carte SD. + /**Fonction de stockage valeur sur la Flash. * @param float Val_To_Store, la valeur à stocker * @param char* Nom du fichier ou stocker cette valeur */ static void Store_A_Val(float Val_To_Store, char* File_Name); - /**Fonction de récupération d'une valeur stockée sur la carte SD. + /**Fonction de récupération d'une valeur stockée sur la Flash. * @param char* Nom du fichier ou stocker cette valeur * @returns * valeur de calibration des capteurs O2 */ static float Read_A_Val(char* File_Name); - /**Fonction d'enregistrement d'une chaine de charatères sur la carte SD. + /**Fonction d'enregistrement d'une chaine de charatères sur la Flash. * @param char* To_Store, chaine de charactères * @param char* Nom du fichier, s'il existe il est ouvert, sinon il est créé */ - static void Write_SD_File(char* To_Store, char* File_Name); + static void Write_Flash_File(char* To_Store, char* File_Name); - /**Fonction de lecture d'un fichier sur la carte SD. + /**Fonction de lecture d'un fichier sur la Flash. * @param char* Nom du fichier */ - static void Read_SD_File(char* File_Name); + static void Read_Flash_File(char* File_Name); - /**Fonction d'éffaçage d'un fichier sur la carte SD. + /**Fonction d'éffaçage d'un fichier sur la Flash. * @param char* Nom du fichier */ - static void Delete_SD_File(char* File_Name); + static void Delete_Flash_File(char* File_Name); - /**Fonction d'éffaçage d'un fichier sur la carte SD. + /**Fonction nettoyage de la Flash. + */ + static void Clean_Flash(); + + /**Fonction d'éffaçage d'un fichier sur la Flash. * @param char* Nom du fichier à effacer * @param char* Nouveau Nom du fichier */ - static void Rename_SD_File(char* Old_File_Name, char* New_File_Name); + static void Rename_Flash_File(char* Old_File_Name, char* New_File_Name); - /**Fonction montage de la carte SD. + /**Fonction montage de la Flash. */ - static void Mount_SD(); + static void Mount_Flash(); - /**Fonction demontage de la carte SD. + /**Fonction demontage de la Flash. */ - static void UnMount_SD(); + static void UnMount_Flash(); - /**Fonction formatage de la carte SD. + /**Fonction formatage de la Flash. */ - static void Format_SD(); + static void Format_Flash(); /**Fonction DIR. * @param char* Nom du répertoire */ - static void Dir_SD(char* Dir_Name = ""); + static void Dir_Flash(char* Dir_Name = ""); /**Fonction de numérotage des fichiers log. * @returns @@ -124,6 +179,10 @@ * true si le fichier existe, false s'il n'existe pas */ static bool File_Exist(string File_Name); + + /**Fonction d'affichage du menu d'aide. + */ + static void Help(); private: