Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
FileManager.h
- Committer:
- Lucyjungz
- Date:
- 2016-05-16
- Revision:
- 5:7c513eee7b2b
- Parent:
- 4:ec62bf823914
- Child:
- 6:5bd75c0f607c
File content as of revision 5:7c513eee7b2b:
/* ############### Constant Defination ################## */
#define DEVICE_NAME "sd"
// DEVICE_NAME must be put in between "/" for file name
#define SETUP_FILE_NAME "/sd/RMS_Tester.xml"
#define GPS_LOG_FILE_NAME "/sd/YYYY-MM-DD.gps.csv "
#define RTL_LOG_FILE_NAME "/sd/YYYY-MM-DD.rtl.csv"
#define VARIABLE_FILE_NAME "/sd/20160216185627_upload.xml"
#define MINIRMS_LOG_FILE_NAME "/sd/miniRMS.log"
#define GPS_TAG "<Gps>"
#define DATA_TAG "<Data>"
#define UPDATE_INTERVAL_TAG "<Update_Interval>"
#define VAR_NAME_TAG "<varName>"
#define VAR_ADDR_TAG "<varAddress>"
#define VAR_SIZE_TAG "<LSB2>"
#define VAR_UNIT_TAG "<Unit>"
#define XMLTEXT_SIZE 20
#define VAR_NAME_MAX_SIZE 20
#define VAR_ADDR_MAX_SIZE 10
#define VAR_SIZE_MAX_SIZE 5
#define VAR_UNIT_MAX_SIZE 20
#define MAX_VAR 50
#define RMS_HEADER_TIME "Time"
/* ############### Enum ################## */
typedef enum {
STATE_FINDING, /** Finding */
STATE_FOUND_DATA, /** Found Data tag */
STATE_FOUND_DATA_INTERVAL, /**< Found update internal of tag*/
STATE_FOUND_GPS, /** Found GPS tag */
STATE_FOUND_GPS_INTERVAL, /** Found update internal of GPS*/
} ReadingFileState;
/* ############### Structure ################## */
typedef struct {
char varName[VAR_NAME_MAX_SIZE];
char varAddress[VAR_ADDR_MAX_SIZE+1];
char varSize[VAR_SIZE_MAX_SIZE];
char varUnit[VAR_UNIT_MAX_SIZE];
} Variable_Data_TypeDef;
/* ############### Function Prototype ################## */
void FileManager_ReadSetupFile();
void FileManager_DeleteFile(char filename[]);
int FileManager_GPSInterval();
int FileManager_DataInterval();
void FileManager_LogGPSData(time_t timestamp ,char lat[], char longti[]);
void FileManager_LogSystemData(float gps_interval);
Variable_Data_TypeDef * FileManager_ReadVarFile();
int FileManager_GetAmountVarList();
Variable_Data_TypeDef * FileManager_GetVarList();
void FileManager_LogRMSData(time_t timestamp ,float * var, int size);
void FileManager_LogRMSHeader(time_t timestamp);
bool FileManager_IsFileExist(char filename[]);
