teste de publish

Dependencies:   DS1820 HighSpeedAnalogIn devices mbed

modem.h

Committer:
brunofgc
Date:
2017-03-30
Revision:
1:0e0967c88590
Parent:
0:1c0a769988ee
Child:
7:ae9c47f62946

File content as of revision 1:0e0967c88590:

//#include "main.h"
#ifndef _modem_h_
#define _modem_h_

#include "serialModem.h"
#include "serialPC.h"
#include "funcoesSDCard.h"
#include "cmsis_os.h"   //Nucleo do Real Time Operational System
#include "diversos.h"

#define dadosStatus 1
#define dadosArmazenados 2

#define xereta_modem

typedef struct{
    uint32_t sent;
    uint32_t received;
    uint16_t buff_in;
    uint16_t ack_waiting;
}socket_info;

typedef struct{ 
 char commandMode;
 char RSSI;
 char serverConnected; 
 char associated;
 char modemIP[17]; 
 char operadora;
 char OK;
 char SEND_OK;
 char ERROR;
 char NO_CARRIER;
 char ServerAck;
 char STAIP[16];  
 char MAC[20];
 char IMSI[30]; 
 char ssid[40]; 
 char password[50];
 char serverIP[17]; 
 char port[6];
 char SRINGsockEntrante;
 char ping; 
 char socketBufferPending;
 uint16_t socketBufferPendingLength;
 uint16_t socketBuffer_ack_waiting; 
 bool emComunicacao;
 char PROMPT_ENVIO_COMMAND_MODE;
 uint8_t timeOut;
 bool recebendoArquivoDoServer;
 bool exibeBufModem;
 bool socketEntranteAtivo;
 char CLOSED;
 char busy;
 socket_info socketInfo[2]; 
}modemStatus;

extern int16_t numeroDeBytesPorEnvio;
extern uint8_t connID;
extern uint16_t IPDNumBytes;
extern bool enviaSendData;
extern char *bufInPtr;
extern bool mudaRede;

namespace modemCom{ 
    extern modemStatus status; //Struct que comporta os status do modem
    extern char* bufIn; //Ponteiro para buffer de entrada do modem; 
    extern uint32_t timeOutModem;   
    extern bool exibeEntradaPacote;
    extern bool atendendoWebServer;
    
      
    //Funções
    uint8_t sendToModem(char *,uint8_t,char *,uint16_t,uint8_t);  //Função que envia strings ao modem
    void processaPacote(void const *); //Função que processa pacotes entrantes do modem
    uint8_t inicializaModem(void);
    uint8_t enviaDados(char);
    //void sendEscapeSequence(void);    
    char aguardaFlush(uint8_t);    //connection id 1 a 6 atualmente 1 a 2
    //uint8_t sendFileCommandMode(FILE *,bool *,char *,uint32_t,char *);
    uint8_t postFileCommandMode(char *,char *,arquivoSD *);
    bool montaStatus(void);
    void leMAC(void); 
    void atendeSRING(uint8_t);   
    bool getSocketInfo(uint8_t);
    bool sendBufferCommandMode(uint8_t, char *, uint16_t);
    bool closeConnection(uint8_t);
    void webServer(void);
    char cipSend(uint8_t,char *,uint16_t);
    void conectaWiFi(void);
    int16_t getRSSI(void);
    bool writeStatusToSD(void);
}
#endif