teste de publish
Dependencies: DS1820 HighSpeedAnalogIn devices mbed
modem.h@25:a6da63ed025b, 2018-04-16 (annotated)
- Committer:
- brunofgc
- Date:
- Mon Apr 16 12:30:29 2018 +0000
- Revision:
- 25:a6da63ed025b
- Parent:
- 21:b9315cdd9275
- Child:
- 30:8a06a85d8807
Vers?o 16/04/2018 com modbus otimizado para 100 leituras
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
brunofgc | 0:1c0a769988ee | 1 | //#include "main.h" |
brunofgc | 0:1c0a769988ee | 2 | #ifndef _modem_h_ |
brunofgc | 0:1c0a769988ee | 3 | #define _modem_h_ |
brunofgc | 0:1c0a769988ee | 4 | |
brunofgc | 0:1c0a769988ee | 5 | #include "serialModem.h" |
brunofgc | 0:1c0a769988ee | 6 | #include "serialPC.h" |
brunofgc | 0:1c0a769988ee | 7 | #include "funcoesSDCard.h" |
brunofgc | 0:1c0a769988ee | 8 | #include "cmsis_os.h" //Nucleo do Real Time Operational System |
brunofgc | 0:1c0a769988ee | 9 | #include "diversos.h" |
brunofgc | 0:1c0a769988ee | 10 | |
brunofgc | 0:1c0a769988ee | 11 | #define dadosStatus 1 |
brunofgc | 0:1c0a769988ee | 12 | #define dadosArmazenados 2 |
brunofgc | 0:1c0a769988ee | 13 | |
brunofgc | 0:1c0a769988ee | 14 | #define xereta_modem |
brunofgc | 0:1c0a769988ee | 15 | |
brunofgc | 0:1c0a769988ee | 16 | typedef struct{ |
brunofgc | 0:1c0a769988ee | 17 | uint32_t sent; |
brunofgc | 0:1c0a769988ee | 18 | uint32_t received; |
brunofgc | 0:1c0a769988ee | 19 | uint16_t buff_in; |
brunofgc | 0:1c0a769988ee | 20 | uint16_t ack_waiting; |
brunofgc | 0:1c0a769988ee | 21 | }socket_info; |
brunofgc | 0:1c0a769988ee | 22 | |
brunofgc | 0:1c0a769988ee | 23 | typedef struct{ |
brunofgc | 0:1c0a769988ee | 24 | char commandMode; |
brunofgc | 1:0e0967c88590 | 25 | char RSSI; |
brunofgc | 11:631bea162800 | 26 | char dnsError; |
brunofgc | 0:1c0a769988ee | 27 | char serverConnected; |
brunofgc | 21:b9315cdd9275 | 28 | char associated; |
brunofgc | 0:1c0a769988ee | 29 | char operadora; |
brunofgc | 0:1c0a769988ee | 30 | char OK; |
brunofgc | 0:1c0a769988ee | 31 | char SEND_OK; |
brunofgc | 0:1c0a769988ee | 32 | char ERROR; |
brunofgc | 0:1c0a769988ee | 33 | char NO_CARRIER; |
brunofgc | 0:1c0a769988ee | 34 | char ServerAck; |
brunofgc | 21:b9315cdd9275 | 35 | char STAIP[16]; |
brunofgc | 21:b9315cdd9275 | 36 | char subnetmask[16]; |
brunofgc | 21:b9315cdd9275 | 37 | char gateway[16]; |
brunofgc | 0:1c0a769988ee | 38 | char MAC[20]; |
brunofgc | 0:1c0a769988ee | 39 | char IMSI[30]; |
brunofgc | 0:1c0a769988ee | 40 | char ssid[40]; |
brunofgc | 0:1c0a769988ee | 41 | char password[50]; |
brunofgc | 18:1eefda1f7736 | 42 | char serverIP[50]; |
brunofgc | 0:1c0a769988ee | 43 | char port[6]; |
brunofgc | 9:cf406384efd9 | 44 | char host[50]; |
brunofgc | 9:cf406384efd9 | 45 | uint32_t periodo; |
brunofgc | 18:1eefda1f7736 | 46 | uint32_t periodoConfiguracao; |
brunofgc | 0:1c0a769988ee | 47 | char SRINGsockEntrante; |
brunofgc | 0:1c0a769988ee | 48 | char ping; |
brunofgc | 0:1c0a769988ee | 49 | char socketBufferPending; |
brunofgc | 0:1c0a769988ee | 50 | uint16_t socketBufferPendingLength; |
brunofgc | 0:1c0a769988ee | 51 | uint16_t socketBuffer_ack_waiting; |
brunofgc | 0:1c0a769988ee | 52 | bool emComunicacao; |
brunofgc | 0:1c0a769988ee | 53 | char PROMPT_ENVIO_COMMAND_MODE; |
brunofgc | 0:1c0a769988ee | 54 | uint8_t timeOut; |
brunofgc | 17:9b0eecbacbaa | 55 | uint8_t recebendoArquivoDoServer; |
brunofgc | 0:1c0a769988ee | 56 | bool exibeBufModem; |
brunofgc | 0:1c0a769988ee | 57 | bool socketEntranteAtivo; |
brunofgc | 0:1c0a769988ee | 58 | char CLOSED; |
brunofgc | 0:1c0a769988ee | 59 | char busy; |
brunofgc | 7:ae9c47f62946 | 60 | char modemResponse; |
brunofgc | 9:cf406384efd9 | 61 | uint8_t connIDWebServer; |
brunofgc | 9:cf406384efd9 | 62 | uint8_t connIDServerCommand; |
brunofgc | 25:a6da63ed025b | 63 | socket_info socketInfo[2]; |
brunofgc | 25:a6da63ed025b | 64 | bool ALREADY_CONNECTED; |
brunofgc | 0:1c0a769988ee | 65 | }modemStatus; |
brunofgc | 0:1c0a769988ee | 66 | |
brunofgc | 0:1c0a769988ee | 67 | extern int16_t numeroDeBytesPorEnvio; |
brunofgc | 0:1c0a769988ee | 68 | extern uint8_t connID; |
brunofgc | 0:1c0a769988ee | 69 | extern uint16_t IPDNumBytes; |
brunofgc | 0:1c0a769988ee | 70 | extern bool enviaSendData; |
brunofgc | 0:1c0a769988ee | 71 | extern char *bufInPtr; |
brunofgc | 0:1c0a769988ee | 72 | extern bool mudaRede; |
brunofgc | 9:cf406384efd9 | 73 | extern char webServerBuff[256]; |
brunofgc | 0:1c0a769988ee | 74 | |
brunofgc | 0:1c0a769988ee | 75 | namespace modemCom{ |
brunofgc | 0:1c0a769988ee | 76 | extern modemStatus status; //Struct que comporta os status do modem |
brunofgc | 14:c0162ab2a951 | 77 | extern char* bufIn; //Ponteiro para buffer de entrada do modem; |
brunofgc | 0:1c0a769988ee | 78 | extern uint32_t timeOutModem; |
brunofgc | 0:1c0a769988ee | 79 | extern bool exibeEntradaPacote; |
brunofgc | 14:c0162ab2a951 | 80 | extern bool atendendoWebServer; |
brunofgc | 7:ae9c47f62946 | 81 | //Funções |
brunofgc | 7:ae9c47f62946 | 82 | uint8_t sendToModem(char *,uint8_t,char *,char *,uint16_t,uint8_t,uint16_t); //Função que envia strings ao modem |
brunofgc | 0:1c0a769988ee | 83 | void processaPacote(void const *); //Função que processa pacotes entrantes do modem |
brunofgc | 0:1c0a769988ee | 84 | uint8_t inicializaModem(void); |
brunofgc | 10:263c093f8977 | 85 | uint8_t enviaDados(); |
brunofgc | 0:1c0a769988ee | 86 | //void sendEscapeSequence(void); |
brunofgc | 0:1c0a769988ee | 87 | char aguardaFlush(uint8_t); //connection id 1 a 6 atualmente 1 a 2 |
brunofgc | 0:1c0a769988ee | 88 | //uint8_t sendFileCommandMode(FILE *,bool *,char *,uint32_t,char *); |
brunofgc | 18:1eefda1f7736 | 89 | uint8_t postFileCommandMode(char *,char *,char *,arquivoSD *); |
brunofgc | 0:1c0a769988ee | 90 | bool montaStatus(void); |
brunofgc | 0:1c0a769988ee | 91 | void leMAC(void); |
brunofgc | 7:ae9c47f62946 | 92 | void atendeSRING(uint8_t); |
brunofgc | 0:1c0a769988ee | 93 | bool sendBufferCommandMode(uint8_t, char *, uint16_t); |
brunofgc | 0:1c0a769988ee | 94 | bool closeConnection(uint8_t); |
brunofgc | 15:0f78bf9c13ec | 95 | void webServer(uint8_t); |
brunofgc | 0:1c0a769988ee | 96 | char cipSend(uint8_t,char *,uint16_t); |
brunofgc | 15:0f78bf9c13ec | 97 | bool conectaWiFi(void); |
brunofgc | 15:0f78bf9c13ec | 98 | bool leParametrosConexaoSDCard(); |
brunofgc | 1:0e0967c88590 | 99 | int16_t getRSSI(void); |
brunofgc | 1:0e0967c88590 | 100 | bool writeStatusToSD(void); |
brunofgc | 7:ae9c47f62946 | 101 | bool verificaConexao(void); |
brunofgc | 7:ae9c47f62946 | 102 | bool leIP(void); |
brunofgc | 0:1c0a769988ee | 103 | } |
brunofgc | 0:1c0a769988ee | 104 | #endif |