Code APP3

Dependencies:   mbed EthernetInterface WebSocketClient mbed-rtos BufferedSerial

Fork of APP3_Lab by Jean-Philippe Fournier

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers parser.cpp Source File

parser.cpp

00001 /**
00002 *   APP3 : Jean-Phillippe Fournier fouj1807 & Jean-Pascal McGee mcgj2701
00003 *   parser.h - Lecture du fichier de configuration du coordinatuer
00004 */
00005 
00006 #include "parser.h"
00007 
00008 LocalFileSystem local("local");
00009 
00010 // Lecture du fichier de config du coordinateur
00011 coordinator_config_t read_coordinator_config()
00012 {
00013     coordinator_config_t config;
00014 
00015     Serial pc(USBTX, USBRX); // tx, rx
00016     FILE *fp = fopen("/local/config.txt", "r");  // Ouvrir config.txt pour lecture seulement
00017     pc.printf("Opening configuration file for the coordinator\n\r");
00018     if (fp == NULL) // Echec de l'ouverture de fichier
00019     {
00020         pc.printf("Failed to find configuration file. Setting default configuration\n\r");
00021         
00022         sprintf(config.server_url, "localhost");
00023         config.pan_id = 0x1;
00024     }
00025     else // Succes de l'ouverture du fichier
00026     {
00027         pc.printf("Config file opened. \n\r");
00028         fscanf(fp,"0x%x", &config.pan_id);  // Lire le PanId      
00029         fscanf(fp,"%s", config.server_url); // Lire l'adresse URL        
00030         fclose(fp); // Fermer le fichier
00031         
00032         // Afficher le contenue pour confirmation
00033         pc.printf("PanId : 0x%x value : %u\r\n", config.pan_id, config.pan_id); // Display PanId
00034         pc.printf("ServeurURL : %s\r\n",config.server_url); // Display URL
00035     }
00036     return config;
00037 }
00038 
00039 router_config_t read_router_config()
00040 {
00041     router_config_t config;
00042     
00043     Serial pc(USBTX, USBRX); // tx, rx
00044     FILE *fp = fopen("/local/config.txt", "r");  // Ouvrir config.txt pour lecture seulement
00045     pc.printf("Opening configuration file for the router\n\r");
00046     if (fp == NULL)  // Echec de l'ouverture de fichier
00047     {
00048         pc.printf("Failed to find configuration file. Setting default configuration\n\r");
00049         
00050         config.refresh_freq = 0x1;
00051         config.pan_id = 0x1;
00052     }
00053     else // Succes de l'ouverture du fichier
00054     {
00055         pc.printf("Config file opened. \n\r");
00056         fscanf(fp,"0x%x", &config.pan_id);     // Lire le PanId
00057         fscanf(fp,"%u", &config.refresh_freq); // Lire la fréquence de rafraichissement
00058         fclose(fp); // Fermer le fichier
00059                       
00060         // Afficher le contenue pour confirmation
00061         pc.printf("PanId : 0x%x value : %u\r\n", config.pan_id, config.pan_id); // Display PanId
00062         pc.printf("Sensor refresh rate : %u\r\n",config.refresh_freq); // Display URL
00063     }
00064     return config;
00065 }