library to modify and read program variable in runtime from a serial console. You can reset as well the mbed from the console without pushing buttons. Handy for debugging from the online compiler as you can change the behavior of the program without need to recompile each time.

Committer:
julmbed
Date:
Mon Aug 25 08:43:23 2014 +0000
Revision:
0:85afbf3c9fad
Child:
2:a59207652720
version inicial de la librer?a VarStore

Who changed what in which revision?

UserRevisionLine numberNew contents of line
julmbed 0:85afbf3c9fad 1 #ifndef VARSTORE_H
julmbed 0:85afbf3c9fad 2 #define VARSTORE_H
julmbed 0:85afbf3c9fad 3
julmbed 0:85afbf3c9fad 4 #include "mbed.h"
julmbed 0:85afbf3c9fad 5 #include "VarItems.h"
julmbed 0:85afbf3c9fad 6
julmbed 0:85afbf3c9fad 7
julmbed 0:85afbf3c9fad 8 #define SZ 10
julmbed 0:85afbf3c9fad 9
julmbed 0:85afbf3c9fad 10 class VarStore
julmbed 0:85afbf3c9fad 11 {
julmbed 0:85afbf3c9fad 12 public:
julmbed 0:85afbf3c9fad 13 /*******************************
julmbed 0:85afbf3c9fad 14 *
julmbed 0:85afbf3c9fad 15 *Constructor
julmbed 0:85afbf3c9fad 16 ********************************/
julmbed 0:85afbf3c9fad 17
julmbed 0:85afbf3c9fad 18 VarStore(Serial *ser);
julmbed 0:85afbf3c9fad 19 /*******************************
julmbed 0:85afbf3c9fad 20 *
julmbed 0:85afbf3c9fad 21 *Destructor
julmbed 0:85afbf3c9fad 22 ********************************/
julmbed 0:85afbf3c9fad 23
julmbed 0:85afbf3c9fad 24 virtual ~VarStore();
julmbed 0:85afbf3c9fad 25 /*******************************
julmbed 0:85afbf3c9fad 26 *
julmbed 0:85afbf3c9fad 27 *asigna valor a una variable/array o retorna ERR
julmbed 0:85afbf3c9fad 28 ********************************/
julmbed 0:85afbf3c9fad 29
julmbed 0:85afbf3c9fad 30 int Set(char *Input);
julmbed 0:85afbf3c9fad 31
julmbed 0:85afbf3c9fad 32 /*******************************
julmbed 0:85afbf3c9fad 33 *
julmbed 0:85afbf3c9fad 34 *devuelve en un string el contenido de una variable
julmbed 0:85afbf3c9fad 35 ********************************/
julmbed 0:85afbf3c9fad 36
julmbed 0:85afbf3c9fad 37 char* Get(char *Name);
julmbed 0:85afbf3c9fad 38
julmbed 0:85afbf3c9fad 39 /*******************************
julmbed 0:85afbf3c9fad 40 *carga en el store una variable
julmbed 0:85afbf3c9fad 41 *
julmbed 0:85afbf3c9fad 42 ********************************/
julmbed 0:85afbf3c9fad 43
julmbed 0:85afbf3c9fad 44 int Load(char *Name, void *VarPtr,VarTypes VarType );
julmbed 0:85afbf3c9fad 45
julmbed 0:85afbf3c9fad 46 /*******************************
julmbed 0:85afbf3c9fad 47 *
julmbed 0:85afbf3c9fad 48 *carga en el store una variable/array
julmbed 0:85afbf3c9fad 49 ********************************/
julmbed 0:85afbf3c9fad 50
julmbed 0:85afbf3c9fad 51 int Load(char *Name, void *VarPtr,VarTypes VarType, int Size );
julmbed 0:85afbf3c9fad 52
julmbed 0:85afbf3c9fad 53 /*******************************
julmbed 0:85afbf3c9fad 54 * Proceso que less del un serial para modificar
julmbed 0:85afbf3c9fad 55 * los valores de las variables.
julmbed 0:85afbf3c9fad 56 *
julmbed 0:85afbf3c9fad 57 ********************************/
julmbed 0:85afbf3c9fad 58
julmbed 0:85afbf3c9fad 59 static void Worker(void const *args);
julmbed 0:85afbf3c9fad 60
julmbed 0:85afbf3c9fad 61
julmbed 0:85afbf3c9fad 62 protected:
julmbed 0:85afbf3c9fad 63 private:
julmbed 0:85afbf3c9fad 64 /*******************************
julmbed 0:85afbf3c9fad 65 * Busca una variable con nombre name.
julmbed 0:85afbf3c9fad 66 *
julmbed 0:85afbf3c9fad 67 ********************************/
julmbed 0:85afbf3c9fad 68
julmbed 0:85afbf3c9fad 69 VarItem *GetVar(char *name);
julmbed 0:85afbf3c9fad 70
julmbed 0:85afbf3c9fad 71 VarItem Store[SZ];
julmbed 0:85afbf3c9fad 72 int VarCounter;
julmbed 0:85afbf3c9fad 73 Serial *pc;
julmbed 0:85afbf3c9fad 74
julmbed 0:85afbf3c9fad 75 };
julmbed 0:85afbf3c9fad 76
julmbed 0:85afbf3c9fad 77 #endif // VARSTORE_H