<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	>

<channel>
	<title>Sem Categoria &#8211; NTRONICS</title>
	<atom:link href="https://www.ntronics.com.br/category/sem-categoria/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.ntronics.com.br</link>
	<description>Desenvolvimento em Automações</description>
	<lastBuildDate>Sun, 22 Jul 2018 18:27:20 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.3</generator>

<image>
	<url>https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2017/06/cropped-logo.jpg?fit=32%2C32&#038;ssl=1</url>
	<title>Sem Categoria &#8211; NTRONICS</title>
	<link>https://www.ntronics.com.br</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">141773488</site>	<item>
		<title>SPIFFS &#8211; COMO CARREGAR DADOS NA MEMÓRIA FLASH DO ESP8266</title>
		<link>https://www.ntronics.com.br/sem-categoria/direto_na_spiffs/</link>
					<comments>https://www.ntronics.com.br/sem-categoria/direto_na_spiffs/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sun, 22 Jul 2018 17:50:56 +0000</pubDate>
				<category><![CDATA[Sem Categoria]]></category>
		<category><![CDATA[ESP8266]]></category>
		<guid isPermaLink="false">https://www.ntronics.com.br/?p=414</guid>

					<description><![CDATA[<p>GRAVANDO DADOS NA SPIFFS COM A IDE DO ARDUINO DIRETAMENTE Neste post explicarei como fazer com que a IDE do Arduino carregue um arquivo na memoria SPIFFS diretamente pela IDE usando a ferramente ESP8266 SKETCH DATA UPLOAD no menu de ferramentas do Arduíno. Inicialmente precisamos lembrar das limitações do sistema FS Limitações do sistema de arquivos:<a class="moretag" href="https://www.ntronics.com.br/sem-categoria/direto_na_spiffs/"><span class="screen-reader-text">Read more about SPIFFS &#8211; COMO CARREGAR DADOS NA MEMÓRIA FLASH DO ESP8266</span>[...]</a></p>
<p>O post <a rel="nofollow" href="https://www.ntronics.com.br/sem-categoria/direto_na_spiffs/">SPIFFS &#8211; COMO CARREGAR DADOS NA MEMÓRIA FLASH DO ESP8266</a> apareceu primeiro em <a rel="nofollow" href="https://www.ntronics.com.br">NTRONICS</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h1 style="text-align: center;">GRAVANDO DADOS NA SPIFFS COM A IDE DO ARDUINO DIRETAMENTE</h1>
<p>Neste post explicarei como fazer com que a IDE do Arduino carregue um arquivo na memoria SPIFFS diretamente pela IDE usando a ferramente <strong><em>ESP8266 SKETCH DATA UPLOAD </em></strong>no menu de <em>ferramentas</em> do Arduíno.</p>
<p>Inicialmente precisamos lembrar das limitações do sistema FS</p>
<h2>Limitações do sistema de arquivos:</h2>
<p>A implementação do sistema de arquivos para o ESP8266 teve que acomodar as restrições do chip, entre as quais sua RAM limitada. Foi utilizado o sistema de arquivos SPIFFS devido ao tamanho físico do programa ser reduzido, custando menos memória e com isso, houve a necessidade de atender a algumas restrições do sistema.</p>
<p>O SPIFFS não suporta diretórios, apenas armazena uma lista “plana” de arquivos.</p>
<p>Mas ao contrário dos sistemas de arquivos convencionais, podemos utilizar o caractere &#8216;/&#8217;, permitindo que funções façam buscas na memoria indexando a busca pelo uso do mesmo, como por exemplo a função openDir(&#8220;/arquivo1&#8221;) basicamente o sistema filtra os nomes de arquivos e mantêm os que começam com o prefixo /arquivo1.</p>
<p>Existe tambem um limite de 32 caracteres no total para nomes de arquivos. Um <code class="docutils literal notranslate"><span class="pre">'\0'</span></code>char é reservado para a terminação de string C, o que nos deixa com 31 caracteres utilizáveis.</p>
<p>Isso significa que é aconselhável manter nomes de arquivos curtos e não usar diretórios profundamente aninhados, já que o caminho completo de cada arquivo (incluindo diretórios, <code class="docutils literal notranslate"><span class="pre">'/'</span></code>caracteres, nome base, ponto e extensão) deve ter 31 caracteres no máximo. Por exemplo, o nome do arquivo <em><code class="docutils literal notranslate"><span class="pre">/ntronics/texto/post_informacoes_utes_spiffs</span></code></em>possui 44 caracteres e causará problemas se usado.</p>
<p><strong>Aviso</strong> : Esse limite é facilmente alcançado e, se ignorado, os problemas podem passar despercebidos porque nenhuma mensagem de erro aparecerá na compilação nem no tempo de execução.</p>
<p>Para obter mais detalhes sobre os componentes internos da implementação do SPIFFS, consulte o <a class="reference external" href="https://github.com/esp8266/Arduino/blob/master/cores/esp8266/spiffs/README.md">arquivo leia-me DOCUMENTACAO DO SISTEMA FS</a> .</p>
<p>Com essas restrições ao uso do SPIFFS bem observadas, podemos construir bons programas aproveitando o tamanho generoso da memoria inclusa no modulo do ESP8266.</p>
<p>Podemos cria mais de um arquivo no sistema SPIFFS, e com isso, se houver necessidade de criar varios arquivos no sistema mesmo sem organiza-los em pseudo-diretorios, podemos faze-lo. Ex:</p>
<p><strong><em>                             wFile = SPIFFS.open(&#8220;/LOG1.txt&#8221;, &#8220;w+&#8221;);</em></strong></p>
<p>Acima usamos a funcao SPIFFS.opem( para criar um arquivo chamado LOG1. Podemos utilizar a mesma funcao novamente para criar o LOG2, LOG2 e assim por diante.</p>
<p><strong><em>                             wFile = SPIFFS.open(&#8220;/LOG2.txt&#8221;, &#8220;w+&#8221;);</em></strong></p>
<p><strong><em>                             wFile = SPIFFS.open(&#8220;/LOG3.txt&#8221;, &#8220;w+&#8221;);</em></strong></p>
<p>Assim teremos a quantidade de arquivos que precisarmos.</p>
<p>&nbsp;</p>
<h2>Fazendo upload de arquivos para o sistema de arquivos:</h2>
<p>Uma opção EXTREMAMENTE interessante no sistema de memoria SPIFFS é que podemos gravar na memória flash do ESP8266 na própria compilação do <em>sketch</em> qualquer informação na memoria FS utilizando uma ferramenta (<em>ESP8266FS</em>) que podemos instalar para tal  na IDE do Arduíno.</p>
<p><em>O ESP8266FS</em> é uma ferramenta que se integra ao IDE do Arduíno. Ele adiciona um item de menu ao menu <em>Ferramentas</em> para carregar o conteúdo do diretório de dados do esboço no sistema de arquivos flash ESP8266.</p>
<p>Abaixo está o passo a passo para utilizar essa ferramenta:</p>
<ul>
<li>Precisamos fazer o download da ferramenta para escrita no Github, clique no link a seguir para fazer o download: <a href="https://github.com/esp8266/arduino-esp8266fs-plugin/releases/download/0.3.0/ESP8266FS-0.3.0.zip.">https://github.com/esp8266/arduino-esp8266fs-plugin/releases/download/0.3.0/ESP8266FS-0.3.0.zip.</a></li>
<li>Após fazermos o download, precisamos abrir a pasta onde esta a IDE do Arduíno esta configurada para salvar seus sketchs, varia um pouco dependendo de como foi feita a instalação da IDE no seu computador mas por default essa pasta costuma estar na pasta <strong><em>DOCUMENTOS</em></strong> do windows. Entrando nesta pasta, crie uma pasta chamada <strong><em>tools</em></strong>, e dentro desta pasta copie o arquivo .rar que você baixo no link acima, descompacte ele nessa pasta. Será gerado uma pasta <strong><em>ESP8266FS</em></strong>. O caminho gerado ficara:  <strong><em>C:\Users\nelso\Documents\Arduino\tools\ESP8266FS\tool\EPS8266FS.jar</em></strong></li>
</ul>
<figure id="attachment_415" aria-describedby="caption-attachment-415" style="width: 693px" class="wp-caption aligncenter"><a href="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/caminho-instalacao-tool-fs.png?ssl=1"><img fetchpriority="high" decoding="async" data-attachment-id="415" data-permalink="https://www.ntronics.com.br/sem-categoria/direto_na_spiffs/attachment/caminho-instalacao-tool-fs/" data-orig-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/caminho-instalacao-tool-fs.png?fit=783%2C457&amp;ssl=1" data-orig-size="783,457" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="caminho instalacao tool fs" data-image-description="" data-medium-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/caminho-instalacao-tool-fs.png?fit=300%2C175&amp;ssl=1" data-large-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/caminho-instalacao-tool-fs.png?fit=730%2C426&amp;ssl=1" class="wp-image-415" title="Ntronics" src="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/caminho-instalacao-tool-fs.png?resize=693%2C405&#038;ssl=1" alt="" width="693" height="405" srcset="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/caminho-instalacao-tool-fs.png?w=783&amp;ssl=1 783w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/caminho-instalacao-tool-fs.png?resize=300%2C175&amp;ssl=1 300w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/caminho-instalacao-tool-fs.png?resize=768%2C448&amp;ssl=1 768w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/caminho-instalacao-tool-fs.png?resize=600%2C350&amp;ssl=1 600w" sizes="(max-width: 693px) 100vw, 693px" data-recalc-dims="1" /></a><figcaption id="caption-attachment-415" class="wp-caption-text"><em><strong>Como fica apos descompactarmos o arquivo ESP8266FS</strong></em></figcaption></figure>
<ul>
<li>Feito a criação da pasta e o descompactamento do arquivo ESP8266FS, devemos fechar a IDE do Arduíno se a mesma estiver aberta e reabri-la. Em seguida precisamos abrir um sketch qualquer que tenhamos ou criar um novo. Após isso, vá em <em>sketck </em>e clique em <em>Mostrar pagina do sketch </em>ou simplesmente abra a pasta onde o arquivo source do seu programa esta salvo. Dentro dessa pasta, crie outra pasta chamada <em>data </em>em minusculo exatamente como esta escrito aqui.</li>
</ul>
<p><a href="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PASTA-DATA-NO-MEU-SKETCH.png?ssl=1"><img decoding="async" data-attachment-id="418" data-permalink="https://www.ntronics.com.br/sem-categoria/direto_na_spiffs/attachment/pasta-data-no-meu-sketch/" data-orig-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PASTA-DATA-NO-MEU-SKETCH.png?fit=903%2C451&amp;ssl=1" data-orig-size="903,451" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="PASTA DATA NO MEU SKETCH" data-image-description="" data-medium-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PASTA-DATA-NO-MEU-SKETCH.png?fit=300%2C150&amp;ssl=1" data-large-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PASTA-DATA-NO-MEU-SKETCH.png?fit=730%2C365&amp;ssl=1" class="aligncenter wp-image-418" title="Ntronics" src="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PASTA-DATA-NO-MEU-SKETCH.png?resize=713%2C356&#038;ssl=1" alt="" width="713" height="356" srcset="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PASTA-DATA-NO-MEU-SKETCH.png?w=903&amp;ssl=1 903w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PASTA-DATA-NO-MEU-SKETCH.png?resize=300%2C150&amp;ssl=1 300w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PASTA-DATA-NO-MEU-SKETCH.png?resize=768%2C384&amp;ssl=1 768w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PASTA-DATA-NO-MEU-SKETCH.png?resize=600%2C300&amp;ssl=1 600w" sizes="(max-width: 713px) 100vw, 713px" data-recalc-dims="1" /></a></p>
<ul>
<li>Após criada a pasta <em><strong>data</strong> </em>coloque nessa pasta os arquivos que deseja que sejam gravados na memoria SPIFFS do ESP8266, em seguida vá para a IDE do Arduíno e, com o programa salvo onde você criou esta pasta, vá na aba <strong><em>Ferramentas</em></strong> e em seguida em <strong><em>ESP8266 Sketch data Upload </em></strong>lembrando que o seu ESP8266 deve estar ligado ao computador para receber a gravação do dado. A imagem abaixo mostra onde fica a opção de gravação:</li>
</ul>
<figure id="attachment_419" aria-describedby="caption-attachment-419" style="width: 746px" class="wp-caption aligncenter"><a href="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/aba-ferramentas-upload-spiffs.png?ssl=1"><img decoding="async" data-attachment-id="419" data-permalink="https://www.ntronics.com.br/sem-categoria/direto_na_spiffs/attachment/aba-ferramentas-upload-spiffs/" data-orig-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/aba-ferramentas-upload-spiffs.png?fit=1042%2C541&amp;ssl=1" data-orig-size="1042,541" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="aba ferramentas upload spiffs" data-image-description="" data-medium-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/aba-ferramentas-upload-spiffs.png?fit=300%2C156&amp;ssl=1" data-large-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/aba-ferramentas-upload-spiffs.png?fit=730%2C379&amp;ssl=1" class="wp-image-419" title="Ntronis" src="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/aba-ferramentas-upload-spiffs.png?resize=730%2C379&#038;ssl=1" alt="" width="730" height="379" srcset="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/aba-ferramentas-upload-spiffs.png?w=1042&amp;ssl=1 1042w, https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/aba-ferramentas-upload-spiffs.png?resize=300%2C156&amp;ssl=1 300w, https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/aba-ferramentas-upload-spiffs.png?resize=768%2C399&amp;ssl=1 768w, https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/aba-ferramentas-upload-spiffs.png?resize=1024%2C532&amp;ssl=1 1024w, https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/aba-ferramentas-upload-spiffs.png?resize=600%2C312&amp;ssl=1 600w" sizes="(max-width: 730px) 100vw, 730px" data-recalc-dims="1" /></a><figcaption id="caption-attachment-419" class="wp-caption-text">Gravar dados direto na memoria SPIFFS do ESP8266</figcaption></figure>
<ul>
<li>Feitos os passos acima, a IDE do Arduino irá gravar o arquivo na pasta data na memoria SPIFFS do ESP8266. Lembre-se de observar o tamanho do nome do arquivo para que não estoure o limite de 31 bytes.</li>
</ul>
<p>&nbsp;</p>
<p>Este post fica por aqui, dúvidas e sugestões deixe um comentário que  responderemos o mais rápido possível.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Fontes/Referencias: Site ESP8266 Arduino Core</p>
<p><a href="https://arduino-esp8266.readthedocs.io/en/latest/index.html">https://arduino-esp8266.readthedocs.io/en/latest/index.html</a></p>
<p><a href="https://arduino-esp8266.readthedocs.io/en/latest/filesystem.html">https://arduino-esp8266.readthedocs.io/en/latest/filesystem.html</a></p>
<p>O post <a rel="nofollow" href="https://www.ntronics.com.br/sem-categoria/direto_na_spiffs/">SPIFFS &#8211; COMO CARREGAR DADOS NA MEMÓRIA FLASH DO ESP8266</a> apareceu primeiro em <a rel="nofollow" href="https://www.ntronics.com.br">NTRONICS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.ntronics.com.br/sem-categoria/direto_na_spiffs/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">414</post-id>	</item>
		<item>
		<title>Tutorial para criar um menu wifi no NodeMCU</title>
		<link>https://www.ntronics.com.br/sem-categoria/tutorial-para-criar-um-menu-wifi-no-nodemcu/</link>
					<comments>https://www.ntronics.com.br/sem-categoria/tutorial-para-criar-um-menu-wifi-no-nodemcu/#comments</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sat, 21 Jul 2018 21:21:35 +0000</pubDate>
				<category><![CDATA[Sem Categoria]]></category>
		<guid isPermaLink="false">https://www.ntronics.com.br/?p=370</guid>

					<description><![CDATA[<p>Neste tutorial ensinaremos a criar um menu de configuração com botoes que se comunica com o seu Nodemcu, utilizando a IDE Arduíno para construir o firmware, possibilitando ao programador/desenvolvedor configurar seu sistema embarcado através de um menu simples que pode ser acessado como se fosse uma pagina da web em html dentro do microcontrolador ESP8266.<a class="moretag" href="https://www.ntronics.com.br/sem-categoria/tutorial-para-criar-um-menu-wifi-no-nodemcu/"><span class="screen-reader-text">Read more about Tutorial para criar um menu wifi no NodeMCU</span>[...]</a></p>
<p>O post <a rel="nofollow" href="https://www.ntronics.com.br/sem-categoria/tutorial-para-criar-um-menu-wifi-no-nodemcu/">Tutorial para criar um menu wifi no NodeMCU</a> apareceu primeiro em <a rel="nofollow" href="https://www.ntronics.com.br">NTRONICS</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Neste tutorial ensinaremos a criar um menu de configuração com botoes que se comunica com o seu Nodemcu, utilizando a IDE Arduíno para construir o firmware, possibilitando ao programador/desenvolvedor configurar seu sistema embarcado através de um menu simples que pode ser acessado como se fosse uma pagina da web em html dentro do microcontrolador ESP8266.</p>
<figure id="attachment_386" aria-describedby="caption-attachment-386" style="width: 473px" class="wp-caption aligncenter"><a href="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?ssl=1"><img loading="lazy" decoding="async" data-attachment-id="386" data-permalink="https://www.ntronics.com.br/sem-categoria/tutorial-para-criar-um-menu-wifi-no-nodemcu/attachment/projeto-liga-rele/" data-orig-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?fit=3448%2C2448&amp;ssl=1" data-orig-size="3448,2448" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;2.4&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;1532189259&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;3.18&quot;,&quot;iso&quot;:&quot;1000&quot;,&quot;shutter_speed&quot;:&quot;0.060007&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="PROJETO LIGA RELE" data-image-description="" data-medium-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?fit=300%2C213&amp;ssl=1" data-large-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?fit=730%2C518&amp;ssl=1" class="wp-image-386" title="Liga Rele WIFI" src="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?resize=473%2C336&#038;ssl=1" alt="" width="473" height="336" srcset="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?w=3448&amp;ssl=1 3448w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?resize=300%2C213&amp;ssl=1 300w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?resize=768%2C545&amp;ssl=1 768w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?resize=1024%2C727&amp;ssl=1 1024w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?resize=600%2C426&amp;ssl=1 600w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?w=1460&amp;ssl=1 1460w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/PROJETO-LIGA-RELE.jpg?w=2190&amp;ssl=1 2190w" sizes="auto, (max-width: 473px) 100vw, 473px" data-recalc-dims="1" /></a><figcaption id="caption-attachment-386" class="wp-caption-text">LAYOUT DEMOSNTRATIVO DO PROJETO LIGA RELE WIFI</figcaption></figure>
<h3><strong>SOBRE O ESP 8266 12F:</strong></h3>
<p>Primeiramente vamos falar sobre o microcontrolador ESP8266 12 F.</p>
<p>Microcontrolador com excelente tamanho de memoria RAM e Flash,  permite que ampliemos bastante a inserção de comandos e opções em 1 único  programa com 1 único microcontrolador, sem a necessidade de anexar uma memória externa pois o próprio modulo do microcontrolador já possui uma memoria flash integrada onde fica armazenado o Firmware com as instruções que nos colocamos nele.</p>
<p>Apesar de ele conter uma quantia de memória MONSTRUOSA comparado a outros microcontroladores do mercado, temos que ter o cuidado de manter o controle do fluxo do programa para não TRAVARMOS o wifi.</p>
<p>O grande segredo para que o nosso MENU WiFi funcione bem e de maneira estável, principalmente para os dispositivos Iphone, é sempre cuidar pra não prendermos o programa em algum looping que o faca parar de responder o atendimento do wifi ( função <em>server.handleClient(); </em>na IDE do Arduíno).</p>
<figure id="attachment_360" aria-describedby="caption-attachment-360" style="width: 524px" class="wp-caption aligncenter"><a href="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/esp12F.png?ssl=1"><img loading="lazy" decoding="async" data-attachment-id="360" data-permalink="https://www.ntronics.com.br/galeria-de-fotos/attachment/esp12f/" data-orig-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/esp12F.png?fit=1130%2C840&amp;ssl=1" data-orig-size="1130,840" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="PINAGEM ESP8266 12 F" data-image-description="" data-medium-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/esp12F.png?fit=300%2C223&amp;ssl=1" data-large-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/esp12F.png?fit=730%2C543&amp;ssl=1" class="wp-image-360" title="Pinout ESP8266 12 F" src="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/esp12F.png?resize=524%2C389&#038;ssl=1" alt="" width="524" height="389" srcset="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/esp12F.png?w=1130&amp;ssl=1 1130w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/esp12F.png?resize=300%2C223&amp;ssl=1 300w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/esp12F.png?resize=768%2C571&amp;ssl=1 768w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/esp12F.png?resize=1024%2C761&amp;ssl=1 1024w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/esp12F.png?resize=600%2C446&amp;ssl=1 600w" sizes="auto, (max-width: 524px) 100vw, 524px" data-recalc-dims="1" /></a><figcaption id="caption-attachment-360" class="wp-caption-text">Pinagem do modulo ESP8266 12 F com os respectivos pinos de acordo com o padrão do Nodemcu.</figcaption></figure>
<p>Outra preocupação que devemos ter é em sempre fazer com que o sistema do ESP8266 execute suas funções que rodam em background.</p>
<h3>ESTABILIDADE DO SISTEMA ( função yield() )</h3>
<p>Existe uma função  construída especificamente para fazer com que o firmware execute essas rotinas de background, essa função se chama yield().</p>
<p>A função yield  faz com que o programa pare naquele ponto em que a encontrou, execute as rotinas de background como resetar o WacthDog do sistema e funções internas do WiFi, e em seguida retorna a continuação do programa.</p>
<h3><strong>FINALMENTE AO PROJETO</strong></h3>
<p>Para realizar esse pequeno projeto, serão necessários os seguintes itens:</p>
<ul>
<li>2 Módulos de rele 1 canal ou 1 modulo 2 canais high level trigger;</li>
<li>1 Módulo Nodemcu;</li>
<li>1 cabo USB V8 para alimentação e gravação do Nodemcu;</li>
</ul>
<p>O layout de ligação do sistema segue abaixo:</p>
<p>&nbsp;</p>
<figure id="attachment_388" aria-describedby="caption-attachment-388" style="width: 1144px" class="wp-caption aligncenter"><a href="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/LIGACAO-DO-PROJETO.png?ssl=1"><img loading="lazy" decoding="async" data-attachment-id="388" data-permalink="https://www.ntronics.com.br/sem-categoria/tutorial-para-criar-um-menu-wifi-no-nodemcu/attachment/ligacao-do-projeto/" data-orig-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/LIGACAO-DO-PROJETO.png?fit=1144%2C450&amp;ssl=1" data-orig-size="1144,450" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="LIGACAO DO PROJETO" data-image-description="" data-medium-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/LIGACAO-DO-PROJETO.png?fit=300%2C118&amp;ssl=1" data-large-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/LIGACAO-DO-PROJETO.png?fit=730%2C287&amp;ssl=1" class="wp-image-388 size-full" title="LAYOUT" src="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/LIGACAO-DO-PROJETO.png?resize=730%2C287&#038;ssl=1" alt="" width="730" height="287" srcset="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/LIGACAO-DO-PROJETO.png?w=1144&amp;ssl=1 1144w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/LIGACAO-DO-PROJETO.png?resize=300%2C118&amp;ssl=1 300w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/LIGACAO-DO-PROJETO.png?resize=768%2C302&amp;ssl=1 768w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/LIGACAO-DO-PROJETO.png?resize=1024%2C403&amp;ssl=1 1024w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/LIGACAO-DO-PROJETO.png?resize=600%2C236&amp;ssl=1 600w" sizes="auto, (max-width: 730px) 100vw, 730px" data-recalc-dims="1" /></a><figcaption id="caption-attachment-388" class="wp-caption-text">LAYOUT DE MONTAGEM DO PROJETO WIFI</figcaption></figure>
<h3><strong>EXPLICAÇÃO DO LAYOUT:</strong></h3>
<p>Como visto no layout acima, os reles são ligados diretamente as entradas D0 e D6 do Nodemcu, ao analisarmos o datasheet do microcontrolador ESP8266 vemos que o GPIO 16, referente a saída D0 deve ser usado com cuidado, propositalmente, <em><strong>utilizamos essa porta nesse projeto para chamar a atenção a certos detalhes no uso das GPIO&#8217;s do ESP8266 que equipa o Nodemcu</strong></em>. Esta saída é utilizada no sistema de gravação do firmware na memoria do ESP portanto, nunca devemos cola-la em PullDown, senão podemos impedir a gravação do firmware no ESP. Também essa GPIO sempre eleva-se a estado HIGH ao reiniciar ou ligar o Nodemcu, portanto, se o rele for ser utilizado em uma situação onde ele não deve ativar quando o sistema é reiniciado, troque a saída D0 por uma das demais saídas, com exceção da saída D8 que sofre de uma condição especial semelhante.</p>
<p>Observando os cuidados com a GPIO 16, podemos iniciar a programação do nosso projeto.</p>
<h3><strong>EXPLICANDO A PROGRAMAÇÃO:</strong></h3>
<p>Utilizamos a IDE de programação Arduíno para este projeto:</p>
<p>Vou explicar passo a passo o código e pra quem quiser o código completo para abrir no seu computador, disponibilizei nesse link em formato txt, basta fazer o download, copiar o texto e colar na tela do seu programador Arduíno:</p>
<p style="text-align: center;"><strong><a href="https://www.ntronics.com.br/wp-content/uploads/2018/07/exemplo_menu_com_botoes_acionando_rele.txt">exemplo_menu_com_botoes_acionando_rele</a>  &lt;&lt; DOWNLOAD DO ARQUIVO FONTE</strong></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<blockquote><p><b>/// para o funcionamento das funções WebServer do ESP8266 é necessário incluirmos as seguintes</b> <strong>bibliotecas</strong></p>
<p>#include &lt;ESP8266WiFi.h&gt;<br />
#include &lt;ESP8266WebServer.h&gt;</p>
<p><b>// Definições de pinos do sistema. Normalmente essas definições já estão nas bibliotecas de inclusão do ESP8266 na IDE Arduíno</b><br />
<b>// Costumo utilizar essas definições abaixo para facilitar casos em que se faca necessário redefinir algum pino.</b></p>
<p>#define D0 16 //Utilizado neste exemplo como RELE 1<br />
#define D1 5 //<br />
#define D2 4 //<br />
#define D3 0 //<br />
#define D4 2 //<br />
#define D5 14 //<br />
#define D6 12 //Utilizado neste exemplo como RELE 2<br />
#define D7 13 //<br />
#define D8 15 //</p>
<p>&nbsp;</p></blockquote>
<p>Após definirmos as bibliotecas utilizadas neste projeto, iremos declarar as variáveis:</p>
<p>&nbsp;</p>
<blockquote><p><strong>//como este projeto é bem simples, utilizaremos apenas estas variáveis.</strong></p>
<p>char *ssid = &#8220;MEU_MENU&#8221;;     <b>/// Esta variável é responsável pelo nome da ACESS POINT gerado pelo Nodemcu</b><br />
char *password = &#8220;padrao1234&#8221;;  <strong>/// Esta variável é responsável pela senha para acessar o ACESS POINT</strong><br />
bool rele1 = false;<br />
bool rele2 = false;</p></blockquote>
<p>&nbsp;</p>
<p>Ao declararmos as variáveis <strong><em>ssid</em> </strong>e <strong><em>password </em></strong>, estamos dizendo ao sistema qual será o nome da rede wifi que o nosso Nodemcu vai gerar e a senha que ele vai exigir para  que alguém conecte-se a essa rede.</p>
<p>Se não quisermos que a rede peça alguma senha, basta não criarmos essa variável e mais adiante na função que inicializa o wifi darei as duas opções de inicialização, com e sem senha.</p>
<p>&nbsp;</p>
<blockquote><p><strong>//  Declaracao das instancias das bibliotecas </strong><br />
ESP8266WebServer server(80);       <strong>//ativa servidor web</strong></p>
<p>&nbsp;</p></blockquote>
<p>Este setor do programa inicializa a biblioteca do Webserver do Nodemcu.</p>
<p>&nbsp;</p>
<blockquote><p>void setup() {<br />
<strong>//PARTE DE CONFIGURAÇÃO DO SISTEMA </strong></p>
<p>Serial.begin(57600); <b>// Iniciamos a seria para podermos debugar o programa no terminal serial do Arduíno.</b></p>
<p>WiFi.softAP(ssid, password, 11); <b>// Esta função inicializa o ACESS POINT com o nome e senha que</b> <strong>determinamos na criação das variáveis ssid e</strong><br />
<strong>// password e o valor 11 refere-se ao canal utilizado pelo wifi</strong></p>
<p>IPAddress myIP; <b>// Declaração da variável myIP do tipo que recebe um numero de IP já no formato correto ***Dica: Se precisarmos </b><br />
<b>// usar o numero do IP em outros lugares do programa, declarem essa variável antes do setup pra que ela se torne </b><br />
<strong>// global.</strong></p>
<p>myIP = WiFi.softAPIP(); <strong>// Aqui adquirimos o ip do acess point ( por padrao se nao o pre-definirmos, ele assume 192.168.4.1</strong><br />
Serial.print(&#8220;Acess point criado. Ip: &#8220;); <strong>// Exibe no terminal serial o numero do ip confirmando a criacao do acess point</strong><br />
Serial.println(myIP);</p>
<p>pinMode(D0, OUTPUT); <strong>// rele 1</strong><br />
pinMode(D6, OUTPUT);<strong> // rele 2</strong></p>
<p>digitalWrite(D0,rele1); <strong>//desliga o rele 1 pois a variavel rele1 foi criada com valor &#8220;false&#8221;</strong><br />
digitalWrite(D6,rele2); <strong>//desliga o rele 2 pois a variavel rele2 foi criada com valor &#8220;false&#8221;</strong></p></blockquote>
<p>&nbsp;</p>
<p>Conforme havia prometido, para deixar o ACESS POINT livre, sem exigir senha, basta declara a funcao que inicializa o mesmo da seguinte forma: <strong><em>WiFi.softAP(ssid);</em></strong></p>
<p>&nbsp;</p>
<blockquote><p>server.on(&#8220;/&#8221;, MENU); <b>//Esta função responde nossa requisição no ip do servidor, enviando de volta os códigos HTML que carregam nosso menu</b><br />
server.on(&#8220;/ATIVA_R1&#8221;,ATIVA_R1); <b>//quando clicarmos no botão ATIVA RELE 1 essa função será chamada, ligando o rele 1 e escrevendo uma pagina resposta pra nos no browser</b><br />
server.on(&#8220;/DESATIVA_R1&#8221;,DESATIVA_R1); <b>//quando clicarmos no botão DESATIVA RELE 1 essa função será chamada, desligando o rele 1 e escrevendo uma pagina resposta pra nos no browser</b><br />
server.on(&#8220;/ATIVA_R2&#8221;,ATIVA_R2); <b>//quando clicarmos no botão ATIVA RELE 2 essa função será chamada, ligando o rele 2 e escrevendo uma pagina resposta pra nos no browser</b><br />
server.on(&#8220;/DESATIVA_R2&#8221;,DESATIVA_R2); <b>//quando clicarmos no botão DESATIVA RELE 2 essa função será chamada, desligando o rele 2 e escrevendo uma pagina resposta pra nos no browser</b></p>
<p>server.begin(); <b>//Apos declarar todos os caminhos de nosso menu WIFI, essa função ativa nosso servidor local no Nodemcu</b></p></blockquote>
<p>Esta parte do código é especialmente importante, é o ponto do programa onde o ACESS POINT busca as funções que respondem ao aperto dos botoes na tela do navegador no celular conectado ao Nodemcu. Também são essas funções que formam o texto que é enviado ao Browser para formar a pagina HTML e nesse texto podemos formatar o forma, cor, tamanho, fonte, alinhamento e todas as outras características que o HTML nos permite moldar.</p>
<h4>LOOPING PRINCIPAL DO PROGRAMA.</h4>
<blockquote><p>void loop() {<br />
yield(); <strong>// Funcao extremamente importante no ESP8266, ela garante que o sistema atenda todas as funcoes que </strong><br />
<strong>// correm por traz do nosso programa, garantindo estabilidade do sistema.</strong></p>
<p>server.handleClient(); /<strong>/ FUNCAO DA BIBLIOTECA webServer que &#8220;ATENDE&#8221; a nossa requisicao quando acessamos o ip do webserver criado </strong><br />
<strong>// pelo nosso Nodemcu.</strong></p>
<p>digitalWrite(D0,rele1); <strong>// Dentro das funcoes &#8220;ATIVA_R1&#8221; e &#8220;DESATIVA_R1&#8221; o valor da variavel rele1 pode ser mudado de falso para verdadeiro e vice versa,</strong><br />
<strong>// ligando ou desligando o rele 1.</strong></p>
<p>digitalWrite(D6,rele2); <strong>// Dentro das funcoes &#8220;ATIVA_R2&#8221; e &#8220;DESATIVA_R2&#8221; o valor da variavel rele1 pode ser mudado de falso para verdadeiro e vice versa, </strong><br />
<strong>// ligando ou desligando o rele 2</strong></p>
<p>}</p></blockquote>
<p>&nbsp;</p>
<p>Dentro do looping, o sistema passa pela função <em><strong>server.handleClient(); </strong></em>que faz exatamente o ATENDIMENTO das requisições vindas pela rede wifi. Essas requisições são exatamente as operações de clicar que fazemos na tela do celular ao pressionar os botoes.</p>
<p><strong>Devemos SEMPRE manter essa função próxima da execução instantânea, sempre sendo acessada pelo looping do sistema com o menor tempo possível. Quando menor o tempo par o looping passar por essa função, mais rápido e estável será a navegação pelo meni wifi gerado pelo ESP8266.</strong></p>
<p>Continuado,</p>
<blockquote><p>void MENU(){<br />
<strong>// HTML da pagina principal &gt;&gt; Este primeiro trecho em html forma as informacoes que carregarao o tipo de letra cores e ect de nossa pagina web</strong><br />
String html = &#8220;&lt;meta name=&#8217;viewport&#8217; content=&#8217;width=device-width, initial-scale=1.0&#8242;&gt;&lt;html&gt;&lt;head&gt;&lt;title&gt;MENU WIFI NTRONICS&lt;/title&gt;&#8221;;<br />
html += &#8220;&lt;style&gt;body { background-color: #FF0000; &#8220;; <strong>//Somente como exemplo, aqui mudamos a cor de fundo de nosso menu</strong><br />
html += &#8220;font-family: Arial, Helvetica, Sans-Serif; &#8220;;<br />
html += &#8220;Color: #FFFFFF; }&lt;/style&gt;&#8221;;<br />
html += &#8220;&lt;/head&gt;&lt;body&gt;&#8221;;</p>
<p>html += &#8220;&lt;h1&gt;&lt;center&gt;NOSSO PRIMEIRO MENU&lt;/center&gt;&lt;/h1&gt;&#8221;;</p>
<p><strong>//============================================================== BOTAO DO RELE 1 =====================================================================//</strong></p>
<p><strong>// Neste if-else definimos se vamos carregar na pagina o botao &#8220;LIGAR RELE&#8221; ou o botao &#8220;DESLIGAR RELE&#8221; baseado no estado atual do rele. Uma simples logica de inversao.</strong><br />
if(rele1 == false){<br />
<strong>// NA PROXIMA LINHA ABAIXO, LOGO DEPOIS DE &#8220;href=&#8221; colocamos o nome de chama da funcao server.on(&#8220;/ATIVA_R1&#8221;, assim o sistema quando receber</strong><br />
<strong>// esse dado do browser do nosso celular ativara a funcao ATIVA_R1 que criamos aqui, ligando o rele.</strong><br />
html += &#8220;&lt;p&gt;&lt;a href=/ATIVA_R1&gt;&lt;center&gt;&lt;button style=&#8217;background-color:#0000FF; height:100px; width:250px; type=&#8217;button&#8217;&gt;&lt;b&gt;&lt;h1&gt;ATIVAR RELE 1&lt;/h1&gt;&lt;/b&gt;&lt;/button&gt;&lt;/center&gt;&lt;/a&gt;&lt;/p&gt;&#8221;;<br />
}<br />
else<br />
{<br />
<strong>// NA PROXIMA LINHA ABAIXO, LOGO DEPOIS DE &#8220;href=&#8221; colocamos o nome de chama da funcao</strong> server.on(&#8220;/ATIVA_R1&#8221;, assim o sistema quando receber<br />
<strong>// esse dado do browser do nosso celular ativara a funcao DESATIVA_R1 que criamos aqui, desligando o rele.</strong><br />
html += &#8220;&lt;p&gt;&lt;a href=/DESATIVA_R1&gt;&lt;center&gt;&lt;button style=&#8217;background-color:#0000FF; height:100px; width:250px; type=&#8217;button&#8217;&gt;&lt;b&gt;&lt;h1&gt;DESATIVAR RELE 1&lt;/h1&gt;&lt;/b&gt;&lt;/button&gt;&lt;/center&gt;&lt;/a&gt;&lt;/p&gt;&#8221;;<br />
}</p>
<p><strong>//============================================================== BOTAO DO RELE 2 =====================================================================//</strong></p>
<p><strong>// Neste if-else definimos se vamos carregar na pagina o botao &#8220;LIGAR RELE&#8221; ou o botao &#8220;DESLIGAR RELE&#8221; baseado no estado atual do rele. Uma simples logica de inversao.</strong><br />
if(rele2 == false){<br />
<strong>// NA PROXIMA LINHA ABAIXO, LOGO DEPOIS DE &#8220;href=&#8221; colocamos o nome de chama da funcao server.on(&#8220;/ATIVA_R2&#8221;, assim o sistema quando receber</strong><br />
<strong>// esse dado do browser do nosso celular ativara a funcao ATIVA_R2 que criamos aqui, ligando o rele.</strong><br />
html += &#8220;&lt;p&gt;&lt;a href=/ATIVA_R2&gt;&lt;center&gt;&lt;button style=&#8217;background-color:#0000FF; height:100px; width:250px; type=&#8217;button&#8217;&gt;&lt;b&gt;&lt;h1&gt;ATIVAR RELE 2&lt;/h1&gt;&lt;/b&gt;&lt;/button&gt;&lt;/center&gt;&lt;/a&gt;&lt;/p&gt;&#8221;;<br />
}<br />
else<br />
{<br />
<strong>// NA PROXIMA LINHA ABAIXO, LOGO DEPOIS DE &#8220;href=&#8221; colocamos o nome de chama da funcao</strong> <strong>server.on(&#8220;/DESATIVA_R2&#8221;, assim o sistema quando receber</strong><br />
<strong>// esse dado do browser do nosso celular ativara a funcao DESATIVA_R2 que criamos aqui, desligando o rele.</strong><br />
html += &#8220;&lt;p&gt;&lt;a href=/DESATIVA_R2&gt;&lt;center&gt;&lt;button style=&#8217;background-color:#0000FF; height:100px; width:250px; type=&#8217;button&#8217;&gt;&lt;b&gt;&lt;h1&gt;DESATIVAR RELE 2&lt;/h1&gt;&lt;/b&gt;&lt;/button&gt;&lt;/center&gt;&lt;/a&gt;&lt;/p&gt;&#8221;;<br />
}<br />
html += &#8220;&lt;p&gt;&lt;center&gt;&lt;b&gt;&#8221;;</p>
<p>html += &#8220;&lt;/body&gt;&lt;/html&gt;&#8221;;<br />
<strong>// Enviando HTML para o cliente</strong><br />
server.send(200, &#8220;text/html&#8221;, html); <strong>// Esta funcao server.send eh a responsavel em enviar para o browser do celular o arquivo de texto gerado acima</strong><br />
<strong>// com as informacoes para criar a pagina no navegador do nosso celular.</strong></p>
<p>}</p>
<p>void ATIVA_R1(){<br />
<strong>// HTML para formar a pagina de confirmacao do rele ativado no navegador do nosso celular</strong><br />
String html = &#8220;&lt;meta name=&#8217;viewport&#8217; content=&#8217;width=device-width, initial-scale=1.0&#8242;&gt;&lt;html&gt;&lt;head&gt;&lt;title&gt;MENU WIFI NTRONICS&lt;/title&gt;&#8221;;<br />
html += &#8220;&lt;style&gt;body { background-color: #cccccc; &#8220;;<br />
html += &#8220;font-family: Arial, Helvetica, Sans-Serif; &#8220;;<br />
html += &#8220;Color: #000088; }&lt;/style&gt;&#8221;;<br />
html += &#8220;&lt;/head&gt;&lt;body&gt;&#8221;;</p>
<p>html += &#8220;&lt;h1&gt;&lt;center&gt;O RELE 1 FOI ATIVADO COM SUCESSO!&lt;/center&gt;&lt;/h1&gt;&#8221;;<br />
rele1 = true; <strong>// Finalmente ativando o RELE 1</strong></p>
<p><strong>// ESTE SETOR DO CODIGO ABAIXO CRIA UM BOTAO DE VOLTAR NA NOSSA TELA</strong></p>
<p>html += &#8220;&lt;center&gt;&lt;form method=&#8217;GET&#8217; action=&#8217;/&#8217;&gt;&#8221;;<br />
html += &#8220;&lt;p&gt;&lt;input name=button2 type=submit value=Voltar /&gt;&lt;/p&gt;&#8221;;<br />
html += &#8220;&lt;/form&gt;&lt;/center&gt;&#8221;;<br />
html += &#8220;&lt;/body&gt;&lt;/html&gt;&#8221;;<br />
<strong>// Enviando HTML para o servidor</strong><br />
server.send(200, &#8220;text/html&#8221;, html);</p>
<p>}</p>
<p>void ATIVA_R2(){<br />
<strong>// HTML para formar a pagina de confirmacao do rele ativado no navegador do nosso celular</strong><br />
String html = &#8220;&lt;meta name=&#8217;viewport&#8217; content=&#8217;width=device-width, initial-scale=1.0&#8242;&gt;&lt;html&gt;&lt;head&gt;&lt;title&gt;MENU WIFI NTRONICS&lt;/title&gt;&#8221;;<br />
html += &#8220;&lt;style&gt;body { background-color: #cccccc; &#8220;;<br />
html += &#8220;font-family: Arial, Helvetica, Sans-Serif; &#8220;;<br />
html += &#8220;Color: #000088; }&lt;/style&gt;&#8221;;<br />
html += &#8220;&lt;/head&gt;&lt;body&gt;&#8221;;</p>
<p>html += &#8220;&lt;h1&gt;&lt;center&gt;O RELE 2 FOI ATIVADO COM SUCESSO!&lt;/center&gt;&lt;/h1&gt;&#8221;;<br />
rele2 = true; <strong>// Finalmente ativando o RELE 2</strong></p>
<p><strong>// ESTE SETOR DO CODIGO ABAIXO CRIA UM BOTAO DE VOLTAR NA NOSSA TELA</strong></p>
<p>html += &#8220;&lt;center&gt;&lt;form method=&#8217;GET&#8217; action=&#8217;/&#8217;&gt;&#8221;;<br />
html += &#8220;&lt;p&gt;&lt;input name=button2 type=submit value=Voltar /&gt;&lt;/p&gt;&#8221;;<br />
html += &#8220;&lt;/form&gt;&lt;/center&gt;&#8221;;<br />
html += &#8220;&lt;/body&gt;&lt;/html&gt;&#8221;;<br />
<strong>// Enviando HTML para o servidor</strong><br />
server.send(200, &#8220;text/html&#8221;, html);<br />
}</p>
<p>void DESATIVA_R1(){<br />
<strong>// HTML para formar a pagina de confirmacao do rele desativado no navegador do nosso celular</strong><br />
String html = &#8220;&lt;meta name=&#8217;viewport&#8217; content=&#8217;width=device-width, initial-scale=1.0&#8242;&gt;&lt;html&gt;&lt;head&gt;&lt;title&gt;MENU WIFI NTRONICS&lt;/title&gt;&#8221;;<br />
html += &#8220;&lt;style&gt;body { background-color: #cccccc; &#8220;;<br />
html += &#8220;font-family: Arial, Helvetica, Sans-Serif; &#8220;;<br />
html += &#8220;Color: #000088; }&lt;/style&gt;&#8221;;<br />
html += &#8220;&lt;/head&gt;&lt;body&gt;&#8221;;</p>
<p>html += &#8220;&lt;h1&gt;&lt;center&gt;O RELE 1 FOI DESATIVADO COM SUCESSO!&lt;/center&gt;&lt;/h1&gt;&#8221;;<br />
rele1 = false; <strong>// Finalmente desativando o RELE 1</strong></p>
<p><strong>// ESTE SETOR DO CODIGO ABAIXO CRIA UM BOTAO DE VOLTAR NA NOSSA TELA</strong></p>
<p>html += &#8220;&lt;center&gt;&lt;form method=&#8217;GET&#8217; action=&#8217;/&#8217;&gt;&#8221;;<br />
html += &#8220;&lt;p&gt;&lt;input name=button2 type=submit value=Voltar /&gt;&lt;/p&gt;&#8221;;<br />
html += &#8220;&lt;/form&gt;&lt;/center&gt;&#8221;;<br />
html += &#8220;&lt;/body&gt;&lt;/html&gt;&#8221;;<br />
<strong>// Enviando HTML para o servidor</strong><br />
server.send(200, &#8220;text/html&#8221;, html);<br />
}</p>
<p>void DESATIVA_R2(){<br />
<strong>// HTML para formar a pagina de confirmacao do rele desativado no navegador do nosso celular</strong><br />
String html = &#8220;&lt;meta name=&#8217;viewport&#8217; content=&#8217;width=device-width, initial-scale=1.0&#8242;&gt;&lt;html&gt;&lt;head&gt;&lt;title&gt;MENU WIFI NTRONICS&lt;/title&gt;&#8221;;<br />
html += &#8220;&lt;style&gt;body { background-color: #cccccc; &#8220;;<br />
html += &#8220;font-family: Arial, Helvetica, Sans-Serif; &#8220;;<br />
html += &#8220;Color: #000088; }&lt;/style&gt;&#8221;;<br />
html += &#8220;&lt;/head&gt;&lt;body&gt;&#8221;;</p>
<p>html += &#8220;&lt;h1&gt;&lt;center&gt;O RELE 2 FOI DESATIVADO COM SUCESSO!&lt;/center&gt;&lt;/h1&gt;&#8221;;<br />
rele2 = false; <strong>// Finalmente desativando o RELE 2</strong></p>
<p><strong>// ESTE SETOR DO CODIGO ABAIXO CRIA UM BOTAO DE VOLTAR NA NOSSA TELA</strong></p>
<p>html += &#8220;&lt;center&gt;&lt;form method=&#8217;GET&#8217; action=&#8217;/&#8217;&gt;&#8221;;<br />
html += &#8220;&lt;p&gt;&lt;input name=button2 type=submit value=Voltar /&gt;&lt;/p&gt;&#8221;;<br />
html += &#8220;&lt;/form&gt;&lt;/center&gt;&#8221;;<br />
html += &#8220;&lt;/body&gt;&lt;/html&gt;&#8221;;<br />
<strong>// Enviando HTML para o servidor</strong><br />
server.send(200, &#8220;text/html&#8221;, html);<br />
}</p></blockquote>
<p>Agora seguem imagens de cada tela formada pelo programa acima:</p>
<p>&nbsp;</p>
<figure id="attachment_380" aria-describedby="caption-attachment-380" style="width: 285px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" data-attachment-id="380" data-permalink="https://www.ntronics.com.br/sem-categoria/tutorial-para-criar-um-menu-wifi-no-nodemcu/attachment/screenshot_2018-07-21-16-07-02/" data-orig-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-07-02.png?fit=720%2C1280&amp;ssl=1" data-orig-size="720,1280" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Screenshot_2018-07-21-16-07-02" data-image-description="" data-medium-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-07-02.png?fit=169%2C300&amp;ssl=1" data-large-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-07-02.png?fit=576%2C1024&amp;ssl=1" class="wp-image-380" src="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-07-02.png?resize=285%2C507&#038;ssl=1" alt="" width="285" height="507" srcset="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-07-02.png?w=720&amp;ssl=1 720w, https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-07-02.png?resize=169%2C300&amp;ssl=1 169w, https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-07-02.png?resize=576%2C1024&amp;ssl=1 576w, https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-07-02.png?resize=600%2C1067&amp;ssl=1 600w" sizes="auto, (max-width: 285px) 100vw, 285px" data-recalc-dims="1" /><figcaption id="caption-attachment-380" class="wp-caption-text">Tela gerada inicialmente quando os dois reles estão desligados.</figcaption></figure>
<figure id="attachment_382" aria-describedby="caption-attachment-382" style="width: 286px" class="wp-caption aligncenter"><a href="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-08-52.png?ssl=1"><img loading="lazy" decoding="async" data-attachment-id="382" data-permalink="https://www.ntronics.com.br/sem-categoria/tutorial-para-criar-um-menu-wifi-no-nodemcu/attachment/screenshot_2018-07-21-16-08-52/" data-orig-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-08-52.png?fit=720%2C1280&amp;ssl=1" data-orig-size="720,1280" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Screenshot_2018-07-21-16-08-52" data-image-description="" data-medium-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-08-52.png?fit=169%2C300&amp;ssl=1" data-large-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-08-52.png?fit=576%2C1024&amp;ssl=1" class="wp-image-382" src="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-08-52.png?resize=286%2C509&#038;ssl=1" alt="" width="286" height="509" srcset="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-08-52.png?w=720&amp;ssl=1 720w, https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-08-52.png?resize=169%2C300&amp;ssl=1 169w, https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-08-52.png?resize=576%2C1024&amp;ssl=1 576w, https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-08-52.png?resize=600%2C1067&amp;ssl=1 600w" sizes="auto, (max-width: 286px) 100vw, 286px" data-recalc-dims="1" /></a><figcaption id="caption-attachment-382" class="wp-caption-text">Tela exibida ao clicar no botão LIGAR RELE 2.</figcaption></figure>
<figure id="attachment_383" aria-describedby="caption-attachment-383" style="width: 291px" class="wp-caption aligncenter"><a href="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-09-12.png?ssl=1"><img loading="lazy" decoding="async" data-attachment-id="383" data-permalink="https://www.ntronics.com.br/sem-categoria/tutorial-para-criar-um-menu-wifi-no-nodemcu/attachment/screenshot_2018-07-21-16-09-12/" data-orig-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-09-12.png?fit=720%2C1280&amp;ssl=1" data-orig-size="720,1280" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Screenshot_2018-07-21-16-09-12" data-image-description="" data-medium-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-09-12.png?fit=169%2C300&amp;ssl=1" data-large-file="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-09-12.png?fit=576%2C1024&amp;ssl=1" class="wp-image-383" src="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-09-12.png?resize=291%2C518&#038;ssl=1" alt="" width="291" height="518" srcset="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-09-12.png?w=720&amp;ssl=1 720w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-09-12.png?resize=169%2C300&amp;ssl=1 169w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-09-12.png?resize=576%2C1024&amp;ssl=1 576w, https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/07/Screenshot_2018-07-21-16-09-12.png?resize=600%2C1067&amp;ssl=1 600w" sizes="auto, (max-width: 291px) 100vw, 291px" data-recalc-dims="1" /></a><figcaption id="caption-attachment-383" class="wp-caption-text">Quando acionamos um rele, os botoes passam para o estado de ligados e Exibem a mensagem Desativar Rele*</figcaption></figure>
<p>Existem muitas  formas de configurar o html da pagina gerada nesse método de programação utilizado. Podemos fazer com que os botoes troque de cor ao serem pressionados, podemos exibir mensagens de alerta, carregar diferentes modelos depois de cliques, gerar um texto em uma caixa de texto na tela informando as acoes, enfim, praticamente tudo que se pode fazer em HTML pode ser criado nesse menu WiFi.</p>
<p>&nbsp;</p>
<p>Espero que este tutorial venha a lhes ajudar, duvidas, elogios e criticas??? Deixe um comentario!</p>
<p>&nbsp;</p>
<p>Autor: Nelson Bordin Junior &#8211; CEO Ntronics</p>
<p>&nbsp;</p>
<p>O post <a rel="nofollow" href="https://www.ntronics.com.br/sem-categoria/tutorial-para-criar-um-menu-wifi-no-nodemcu/">Tutorial para criar um menu wifi no NodeMCU</a> apareceu primeiro em <a rel="nofollow" href="https://www.ntronics.com.br">NTRONICS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.ntronics.com.br/sem-categoria/tutorial-para-criar-um-menu-wifi-no-nodemcu/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">370</post-id>	</item>
		<item>
		<title>SOLUÇAO IOT &#8211; O QUE É IOT E PARA QUE SERVE?</title>
		<link>https://www.ntronics.com.br/sem-categoria/iot/</link>
					<comments>https://www.ntronics.com.br/sem-categoria/iot/#respond</comments>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Thu, 25 Jan 2018 02:59:47 +0000</pubDate>
				<category><![CDATA[Sem Categoria]]></category>
		<guid isPermaLink="false">https://www.ntronics.com.br/?p=237</guid>

					<description><![CDATA[<p>IOT é a classificação que damos a tecnologia em equipamentos eletrônicos, com sistemas microcontrolados que possuem a capacidade de dar conectividade a maquinas e equipamentos de forma remota através da rede mundial de computadores ou de uma rede privada, possibilitando a gestores ou pessoas comuns obter dados e realizar determinadas ações em dispositivos a distância.<a class="moretag" href="https://www.ntronics.com.br/sem-categoria/iot/"><span class="screen-reader-text">Read more about SOLUÇAO IOT &#8211; O QUE É IOT E PARA QUE SERVE?</span>[...]</a></p>
<p>O post <a rel="nofollow" href="https://www.ntronics.com.br/sem-categoria/iot/">SOLUÇAO IOT &#8211; O QUE É IOT E PARA QUE SERVE?</a> apareceu primeiro em <a rel="nofollow" href="https://www.ntronics.com.br">NTRONICS</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>IOT é a classificação que damos a tecnologia em equipamentos eletrônicos, com sistemas microcontrolados que possuem a capacidade de dar conectividade a maquinas e equipamentos de forma remota através da rede mundial de computadores ou de uma rede privada, possibilitando a gestores ou pessoas comuns obter dados e realizar determinadas ações em dispositivos a distância.</p>
<figure id="attachment_238" aria-describedby="caption-attachment-238" style="width: 396px" class="wp-caption aligncenter"><a href="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/iot.png?ssl=1"><img loading="lazy" decoding="async" data-attachment-id="238" data-permalink="https://www.ntronics.com.br/sem-categoria/iot/attachment/iot/" data-orig-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/iot.png?fit=920%2C550&amp;ssl=1" data-orig-size="920,550" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="iot" data-image-description="" data-medium-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/iot.png?fit=300%2C179&amp;ssl=1" data-large-file="https://i1.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/iot.png?fit=730%2C436&amp;ssl=1" class="wp-image-238" title="Rede IOT" src="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/iot-300x179.png?resize=396%2C236&#038;ssl=1" alt="" width="396" height="236" data-recalc-dims="1" /></a><figcaption id="caption-attachment-238" class="wp-caption-text">Rede de informações na nuvem.</figcaption></figure>
<p>Exemplo de sistemas IOT em industrias são sensores de temperatura que captam dados e os retransmitem através de um sistema cabeado ou wirelless.</p>
<p>Esses dados são normalmente transmitidos a um servidor na &#8220;nuvem&#8221; que retem os dados e o disponibilizam ao administrador da rede, com esse dados pode-se por exemplo melhorar a eficiência de uma linha de produção.</p>
<h3>EXEMPLOS DE IOT</h3>
<p>Exemplo de sistemas IOT em nossa vida cotidiana são por exemplo sensores de presença em residencias que, ao detectar a presença de uma pessoa não autorizada disparam um alerta que é transmitido ao proprietário através de um aplicativo no celular.</p>
<figure id="attachment_239" aria-describedby="caption-attachment-239" style="width: 529px" class="wp-caption aligncenter"><a href="https://i2.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/Geekstips.png?ssl=1"><img loading="lazy" decoding="async" data-attachment-id="239" data-permalink="https://www.ntronics.com.br/sem-categoria/iot/attachment/geekstips/" data-orig-file="https://i2.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/Geekstips.png?fit=763%2C346&amp;ssl=1" data-orig-size="763,346" data-comments-opened="1" data-image-meta="{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}" data-image-title="Geekstips.com" data-image-description="" data-medium-file="https://i2.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/Geekstips.png?fit=300%2C136&amp;ssl=1" data-large-file="https://i2.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/Geekstips.png?fit=730%2C331&amp;ssl=1" class=" wp-image-239" src="https://i0.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/Geekstips-300x136.png?resize=529%2C240&#038;ssl=1" alt="" width="529" height="240" srcset="https://i2.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/Geekstips.png?resize=300%2C136&amp;ssl=1 300w, https://i2.wp.com/www.ntronics.com.br/wp-content/uploads/2018/01/Geekstips.png?w=763&amp;ssl=1 763w" sizes="auto, (max-width: 529px) 100vw, 529px" data-recalc-dims="1" /></a><figcaption id="caption-attachment-239" class="wp-caption-text">fonte: Geekstips.com</figcaption></figure>
<p>Outro exemplo são sensores de umidade em plantas que nos enviam a umidade de período em período a um servidor, onde podemos consultar se nossa plantinha em casa está com água o suficiente!</p>
<p>Enfim, exemplos são infinitos e as possibilidades também.</p>
<p>Em breve estaremos postando exemplos de sistemas IOT com códigos em C para plataformas de programação como a IDE Arduino, MikroC, Mplab e muitos outros.</p>
<p>Este post é uma apresentação do que virá!</p>
<p>Aguardem.</p>
<p>&nbsp;</p>
<p>Obrigado por ler esse post e espero que gostem de nossos artigos que serão postados em breve!</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Nelson Bordin Junior</p>
<p>CEO &#8211; Ntronics</p>
<p>O post <a rel="nofollow" href="https://www.ntronics.com.br/sem-categoria/iot/">SOLUÇAO IOT &#8211; O QUE É IOT E PARA QUE SERVE?</a> apareceu primeiro em <a rel="nofollow" href="https://www.ntronics.com.br">NTRONICS</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.ntronics.com.br/sem-categoria/iot/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">237</post-id>	</item>
	</channel>
</rss>
