teste de publish
Dependencies: DS1820 HighSpeedAnalogIn devices mbed
Diff: main.cpp
- Revision:
- 9:cf406384efd9
- Parent:
- 7:ae9c47f62946
- Child:
- 10:263c093f8977
--- a/main.cpp Tue Jul 18 20:00:43 2017 +0000 +++ b/main.cpp Wed Aug 09 20:38:10 2017 +0000 @@ -190,7 +190,8 @@ } } } -osThreadDef(threadTimers, osPriorityNormal, DEFAULT_STACK_SIZE/10); +osThreadDef(threadTimers, osPriorityNormal, 128); +//osThreadDef(threadTimers, osPriorityNormal, DEFAULT_STACK_SIZE/10); osThreadId idThreadProcessaPacote; void threadProcessaPacote(void const *args){ @@ -214,13 +215,13 @@ //char aux[30]; while(true){ - osSignalWait(0x1,5000); //Executo compulsoriamente mesmo que não haja sinal num periodo de 1 segundo + osSignalWait(0x1,500); //Executo compulsoriamente mesmo que não haja sinal num periodo de meio segundo //pc.printf("Thread: COM.\r\n"); //if((modemCom::status.SRING)&&(!modemCom::status.serverConnected)){ if(modemCom::status.SRINGsockEntrante){ modemCom::status.SRINGsockEntrante=false; - modemCom::atendeSRING(connID); + modemCom::atendeSRING(modemCom::status.connIDServerCommand); } if(inicializaModemBool){ @@ -240,7 +241,8 @@ pc.printf("\r\n\r\nDrome reparametrizado.\r\n\r\n");*/ } - if(eventosRTC::rotina15Minutos){ + if(eventosRTC::rotina15Minutos){ + eventosRTC::rotina15Minutos = false; //Faço aqui o que for devido. pc.printf("Enviando dados de hora completa ao server.\n"); modemCom::status.emComunicacao = true; @@ -251,18 +253,12 @@ modemCom::enviaDados(dadosArmazenados); } //diversos::wdt.kick(90.0); - modemCom::status.emComunicacao = false; - eventosRTC::rotina15Minutos = false; + modemCom::status.emComunicacao = false; } - if(sdCard::deleteSentFiles){ - sdCard::deleteSentFiles = false; - sdCard::finalizaEnvio(); - } - if(arquivoEnvioPointer!=NULL){ pc.printf("Enviando o arquivo <%s> ao server.\n",arquivoEnvioPointer->nome); - if(modemCom::postFileCommandMode(serverAddress,"/drome/parser/index.php",arquivoEnvioPointer)){ + if(modemCom::postFileCommandMode(modemCom::status.host,"/drome/parser/index.php",arquivoEnvioPointer)){ pc.printf("Enviado o arquivo <%s>.\n",arquivoEnvioPointer->nome); arquivoEnvioPointer = NULL; }else{ @@ -272,7 +268,8 @@ modemCom::timeOutModem = 30; } } -osThreadDef(threadComunicacoes, osPriorityNormal, (DEFAULT_STACK_SIZE * 2)); +osThreadDef(threadComunicacoes, osPriorityNormal, 3072); +//osThreadDef(threadComunicacoes, osPriorityNormal, (DEFAULT_STACK_SIZE*2)); void RTC_POR_SEGUNDO(void){ time_t seconds; @@ -289,8 +286,8 @@ eventosRTC::minutos = true; } - //if((seconds%900)==0){ - if((seconds%300)==0){ + if((seconds%modemCom::status.periodo)==0){ + //if((seconds%300)==0){ eventosRTC::rotina15Minutos = true; } @@ -387,7 +384,7 @@ while(true){ osDelay(10); //pc.printf("Thread: MAIN.\r\n"); - if(!modemCom::status.recebendoArquivoDoServer){ + if((!modemCom::status.recebendoArquivoDoServer)&&(!modemCom::status.emComunicacao)){ diversos::wdt.kick(); @@ -414,7 +411,7 @@ leiturasDigitais(); verifyAlarms(); verificaSaidasDigitais(); - //pc.printf("\nMemoria RAM disponivel = %lu\n",diversos::memAvailable()); + pc.printf("\nMemoria RAM disponivel = %lu\n",diversos::memAvailable()); time_t seconds = time(NULL); printf("%s\n", ctime(&seconds)); //pc.printf("\nEntrada 3 = %lu.\nEntrada 2 = %lu.\nEntrada 1 = %lu.\n\n",aiFiltrada[2],aiFiltrada[1],aiFiltrada[0]); @@ -430,7 +427,7 @@ if(executaComandoServer){ executaComandoServer = false; - commands::exec(connID); + commands::exec(modemCom::status.connIDServerCommand); } @@ -441,6 +438,11 @@ modemCom::webServer(); modemCom::status.emComunicacao=false; } + + if(sdCard::deleteSentFiles){ + sdCard::deleteSentFiles = false; + sdCard::finalizaEnvio(); + } if(boolExecAct){ dispositivos[0]->execAct(act);