Version FC

Dependencies:   DmTftLibrary eeprom SX1280Lib filesystem mbed

Fork of MSNV2-Terminal_V1-5 by Francis CHATAIN

Committer:
patrick_duc
Date:
Tue Oct 16 07:19:47 2018 +0000
Revision:
35:be9473118f9a
Parent:
21:8524d815c587
Child:
36:14a8da4108d5
Suite modifs

Who changed what in which revision?

UserRevisionLine numberNew contents of line
patrick_duc 20:b0281e8a375a 1 /*
patrick_duc 20:b0281e8a375a 2 * MISNet
patrick_duc 20:b0281e8a375a 3 *
patrick_duc 20:b0281e8a375a 4 * Frame: External Memory
patrick_duc 20:b0281e8a375a 5 *
patrick_duc 20:b0281e8a375a 6 * Created on: August 17, 2018 Author: Francis CHATAIN
patrick_duc 20:b0281e8a375a 7 *
patrick_duc 20:b0281e8a375a 8 */
patrick_duc 20:b0281e8a375a 9 #ifndef __EXTMEMORY_HPP__
patrick_duc 20:b0281e8a375a 10 #define __EXTMEMORY_HPP__
patrick_duc 20:b0281e8a375a 11
patrick_duc 20:b0281e8a375a 12 #include "Context.h"
patrick_duc 20:b0281e8a375a 13
patrick_duc 20:b0281e8a375a 14 #include "DataBase.hpp"
patrick_duc 20:b0281e8a375a 15
patrick_duc 20:b0281e8a375a 16 namespace misnet {
patrick_duc 20:b0281e8a375a 17 class ExtMemory;
patrick_duc 20:b0281e8a375a 18
patrick_duc 20:b0281e8a375a 19 // --------------------------------------------------------------------------------
patrick_duc 20:b0281e8a375a 20 // POUR INFORMATION : structure memoire de l'entete et d'une description de channel
patrick_duc 20:b0281e8a375a 21 // Non verifie actuellement !
patrick_duc 20:b0281e8a375a 22 // --------------------------------------------------------------------------------
patrick_duc 20:b0281e8a375a 23
patrick_duc 20:b0281e8a375a 24 /* Header definition */
patrick_duc 20:b0281e8a375a 25 typedef struct {
patrick_duc 20:b0281e8a375a 26 uint8_t version;
patrick_duc 20:b0281e8a375a 27 uint16_t payload_id;
patrick_duc 20:b0281e8a375a 28 uint8_t nb_of_sensors;
patrick_duc 20:b0281e8a375a 29 uint8_t nb_of_actuators;
patrick_duc 20:b0281e8a375a 30 char checksum[4];
patrick_duc 20:b0281e8a375a 31 uint8_t operating_mode;
patrick_duc 20:b0281e8a375a 32 uint16_t terminal_base_period;
patrick_duc 20:b0281e8a375a 33 uint16_t payload_base_period;
patrick_duc 20:b0281e8a375a 34 uint16_t synchro_period;
patrick_duc 20:b0281e8a375a 35 uint16_t listen_period;
patrick_duc 20:b0281e8a375a 36 uint16_t listen_duration;
patrick_duc 20:b0281e8a375a 37 char comment[25];
patrick_duc 20:b0281e8a375a 38 uint8_t trailer;
patrick_duc 20:b0281e8a375a 39 } Header;
patrick_duc 20:b0281e8a375a 40
patrick_duc 20:b0281e8a375a 41 /* Service definition */
patrick_duc 20:b0281e8a375a 42 typedef struct {
patrick_duc 20:b0281e8a375a 43 uint8_t rank;
patrick_duc 35:be9473118f9a 44 uint8_t value_type;
patrick_duc 20:b0281e8a375a 45 uint8_t device_type;
patrick_duc 20:b0281e8a375a 46 uint8_t component_id;
patrick_duc 20:b0281e8a375a 47 uint8_t group_rank;
patrick_duc 20:b0281e8a375a 48 uint8_t mistnet_code;
patrick_duc 20:b0281e8a375a 49 uint8_t device_state;
patrick_duc 20:b0281e8a375a 50 uint8_t access_type;
patrick_duc 20:b0281e8a375a 51 uint8_t access_pin_1;
patrick_duc 20:b0281e8a375a 52 uint8_t access_pin_2;
patrick_duc 20:b0281e8a375a 53 uint8_t access_pin_3;
patrick_duc 20:b0281e8a375a 54 uint8_t access_pin_4;
patrick_duc 20:b0281e8a375a 55 uint8_t access_pin_5;
patrick_duc 20:b0281e8a375a 56 uint8_t access_pin_6;
patrick_duc 20:b0281e8a375a 57 uint8_t request_mode;
patrick_duc 20:b0281e8a375a 58 uint8_t up_mode;
patrick_duc 21:8524d815c587 59 double subsample_rate;
patrick_duc 21:8524d815c587 60 double threshold_delta;
patrick_duc 21:8524d815c587 61 double threshold_up;
patrick_duc 21:8524d815c587 62 double threshold_down;
patrick_duc 20:b0281e8a375a 63 char action;
patrick_duc 20:b0281e8a375a 64 char output;
patrick_duc 20:b0281e8a375a 65 char comment[9];
patrick_duc 20:b0281e8a375a 66 char trailer[4];
patrick_duc 20:b0281e8a375a 67 } ServiceDefinition;
patrick_duc 20:b0281e8a375a 68 }
patrick_duc 20:b0281e8a375a 69
patrick_duc 20:b0281e8a375a 70
patrick_duc 20:b0281e8a375a 71 // ======================================= Class content
patrick_duc 20:b0281e8a375a 72 class misnet::ExtMemory
patrick_duc 20:b0281e8a375a 73 {
patrick_duc 20:b0281e8a375a 74 // Public variable /method
patrick_duc 20:b0281e8a375a 75 public:
patrick_duc 20:b0281e8a375a 76 static void read (DataBase * dataBase) ;
patrick_duc 20:b0281e8a375a 77
patrick_duc 20:b0281e8a375a 78 // Private variable /method
patrick_duc 20:b0281e8a375a 79 private:
patrick_duc 20:b0281e8a375a 80
patrick_duc 20:b0281e8a375a 81 // Protected variable /method
patrick_duc 20:b0281e8a375a 82 protected:
patrick_duc 20:b0281e8a375a 83
patrick_duc 20:b0281e8a375a 84 } ;
patrick_duc 20:b0281e8a375a 85
patrick_duc 20:b0281e8a375a 86 #endif