teste de publish

Revision:
0:8c59a494a451
Child:
1:3f9e5b86d9e4
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/devices.h	Fri Mar 24 15:54:14 2017 +0000
@@ -0,0 +1,90 @@
+#include "mbed.h"
+#include "funcoesSDCard.h"
+#include "modbusMaster1.h"
+#ifndef _devices_h_
+#define _devices_h_
+#define maxCaractereLeLinha 40
+#include <cstdlib>
+
+enum {        
+    modBusType_float=1,
+    modBusType_bit,
+    modBusType_uint8_t,
+    modBusType_uint16_t,
+    modBusType_uint32_t,
+    IrCommandType
+};
+
+typedef struct _alarm{
+    uint32_t id;
+    //Tempos de confirmação
+    uint32_t seconds;
+    //Var Read block
+    uint8_t type;
+    uint16_t addrModbusRead;
+    uint8_t funcModbusRead;
+    uint16_t regModbusRead;             
+    uint8_t max; //1 Max; 0 Min
+    uint8_t value[4];
+    
+    //Act block
+    uint32_t idAct;    
+
+    //Maquina de estados alarme    
+    uint32_t secAlarm;    
+    bool alarmFound;
+}alarm;
+
+typedef struct _reading{    
+    uint8_t type;
+    uint8_t addr;
+    uint8_t func;
+    uint16_t reg;               
+    uint8_t numRegs;        
+}reading;
+
+typedef struct _schedule{    
+    uint32_t id;
+    uint8_t weekday;
+    uint16_t minute; // Minuto do dia em que será executada a ação programada
+    
+    //Act block
+    uint32_t idAct;
+    //Maquina de estados alarme
+    bool actSent;
+}schedule;
+
+class device{
+    private:
+        uint8_t execActAlarm(uint32_t);                
+        uint8_t execAct(uint32_t);
+    public: 
+        uint8_t numAlarms;
+        uint8_t numSchedules;
+        uint16_t numReadings;
+        alarm *alarms;
+        reading *readings;
+        schedule *schedules;
+        //uint32_t id;
+        
+        device();
+        
+        void floatToBin(uint8_t,float *,uint8_t *);                
+        void uint32_t_ToBin(uint8_t,uint32_t *,uint8_t *);
+        void uint16_t_ToBin(uint8_t,uint16_t *,uint8_t *);
+        void setAlarm(char *);
+        void setReading(char *);
+        void setSchedule(char *);        
+        void verifyAlarms();
+        void verifySchedules();        
+        void writeReadingsToSD();        
+};
+
+int criaDevices(FILE *);
+int configuraDevices(FILE *); 
+uint8_t resizeArray(uint32_t,uint32_t,char **,uint16_t);
+void testaTudoDevices();
+void writeReadingsToSD();
+void verifyAlarms();
+void verifySchedules();
+#endif