Resolvido - Problema com delay Esp8266 - Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)2024-03-29T10:16:25Zhttps://labdegaragem.com/forum/topics/problema-delay-esp8266?xg_source=activity&feed=yes&xn_auth=noconsegui resolver o problema…tag:labdegaragem.com,2017-04-30:6223006:Comment:6101132017-04-30T15:26:22.320ZTiago Alexandrehttps://labdegaragem.com/profile/TiagoAlexandre
<p>consegui resolver o problema do delay de forma alternativa, aparentemente segundo o <span>Ivan Grokhotkov o esp não possui uma ordem de execução dos delays igual os atmegas isso acaba gerando conflito nas ações, caso ocorra algum conflito o esp aciona o WDT.</span></p>
<p></p>
<p><span>Usando uma dica do Marcelo Rovai no blog dele sobre o …</span></p>
<p>consegui resolver o problema do delay de forma alternativa, aparentemente segundo o <span>Ivan Grokhotkov o esp não possui uma ordem de execução dos delays igual os atmegas isso acaba gerando conflito nas ações, caso ocorra algum conflito o esp aciona o WDT.</span></p>
<p></p>
<p><span>Usando uma dica do Marcelo Rovai no blog dele sobre o <a href="https://mjrobot.org/2017/02/21/ardufarmbot-2-sistema-automatico-para-irrigacao-e-calor-agora-com-o-nodemcu-e-blynk/" target="_blank">ArdufarmBot2</a>, </span>ele utilizou o a biblioteca <a href="http://playground.arduino.cc/Code/SimpleTimer" target="_blank">simpleTimer</a>, custei um pouco entender o funcionamento, mas no meu caso onde eu queria realizar uma espera deveria acionar o seguinte comando.</p>
<p></p>
<p> timer.setTimeout(5000L, void_qualquer_sem_os_parentenses);</p>
<p></p>
<p>ex:</p>
<p>void manual() {<br/> stateRelay = true;<br/> status_gpio = 1;<br/> if (stateRelay == true) {<br/> stateRelay = false;<br/> status_gpio = 0;<br/>}<br/>}</p>
<p></p>
<p>Void XXX(){</p>
<p> } else if (req.indexOf(F("rele_on")) != -1) {</p>
<p> timer.setTimeout((5000L), manual); // aciona depois de 5 segundos<br/> }</p>
<p>}</p>
<p>assim resolvi o problema</p>
<p><span> </span></p>