IoT

Guia NodeMCU – ESP12 – Introdução (Parte 1)

Eletrogate 1 de março de 201810 min

O que é o Módulo NodeMCU-ESP12?

Módulo NodeMCU é uma placa que foi criada para facilitar o desenvolvimento de aplicações para o módulo ESP8266 ESP-12.

Como é possível ver na foto, existe um módulo ESP-12 soldado na placa. Nessa placa já existem todos os circuitos necessários para fazer o ESP-12 funcionar – interface Serial-USB, regulador de tensão, leds indicadores, botões de controle (Reset e Flash) e barramentos de pinos para permitir o uso em Protoboards.

A grande vantagem dessa placa NodeMCU é que ela funciona como se fosse um Arduino. Você conecta o cabo USB, e com a IDE Arduino você carrega seus programas na placa. Nem precisa pressionar os botões !

Esse são os  modelos de NodeMCU-ESP12 mais comuns, atualmente:

Para a alimentação do ESP-12, existe um regulador de 3,3V AMS1117 (corrente max 1A).

Considerando que o consumo máximo de um ESP-12 é de aproximadamente 200 mA, sobra uma corrente disponível de 800 mA. Mas se for usar a tensão de 3,3V do próprio regulador para alimentar um outro dispositivo externo, recomendo que nunca ultrapasse os 500 mA.

    A alimentação dessa placa pode ser feita através do próprio conector USB (5,0V) ou então através do pino VIN (EXT) , com uma alimentação regulada de 5,0V .

    Apesar do Regulador AMS1117 aceitar tensões de até 9V na entrada, recomendo que se for alimentar a placa através desse pino, use sempre uma fonte  regulada de 5V, pois assim nunca sobre-aquecerá o regulador! Evitando um possível defeito no mesmo.

    Não recomendo que use  o pino 3,3V REG para a entrada de alimentação da placa. Esse pino é a saída do regulador e não a entrada. Mas no site da ESPRESSIF, tem a informação de que a alimentação possa ser também através do pino 3,3V REG.

    • Uma observação importante: as opções de alimentação são mutuamente exclusivas, isto é, somente poderá usar uma opção (USB, 5V ou 3,3V) . Não use mais de uma opção, pois poderá danificar algum componente da placa. Não se  esqueça de conectar o GND da fonte no GND da placa.

    O Chip da interface Serial-USB é o CP2102 da Silicon Labs. Ele suporta USB 2.0. (não suporta USB 3.0). Baud Rates até 1 MBps.  Na placa NodeMCU, a alimentação 3,3V do CP2102 é feita através do regulador AMS1117.

    O consumo máximo de corrente desse chip é de apenas 26 mA. O CP2102  possui um regulador interno de 3,3V, mas nessa placa NodeMCU, esse regulador não é usado.

    Para fazer a comunicação serial-USB com o seu computador é necessário que, antes de conectar o cabo USB, instale os drivers do CP2102.

    Para fazer o download desses drivers para Windows, Macintosh OSX, Linux e Android , use o link abaixo:


    A Pinagem do Módulo NodeMCU-ESP12

    Pinagem do Módulo NodeMCU-ESP12

    Pinagem do Módulo NodeMCU-ESP12 | Fonte: NodeMCU ESP-12 (www.arduining.com)

    • Led indicador Azul  – esta conectado no pino GPIO_16. Um pulso LOW(0V) acionará o led.
    • Led Indicador ESP-12 – pisca quando a memória Flash esta sendo gravada
    • Botão de RST – dá um pulso LOW (0V) no pino -RST (reset) reboot no módulo ESP-12.
    • Botão de FLASH – dá um pulso LOW (0V) no pino GPIO_0 – permite a gravação do programa no ESP-12.

    Observação interessante : Os pinos DTR e RTS do Chip CP2102, controlam o pino ENA (reset chip ESP-12) e o pino GPI_0 (Load program). Portanto, ao gravar um programa com a IDE Arduino, não é necessário pressionar o botão de BOOT (Load).

    Funções dos pinos

    Todos os pinos GPIOs, podem ser entradas ou saídas dependendo da configuração dos mesmos. Não ultrapasse a corrente de 12 mA em cada porta dessas, pois poderá danificar o chip.

    O recomendado é 6 mA. O nível de tensão a ser usado nessas portas não deverá ultrapassar os 3,3V. Se for necessário conectar o NodeMCU à outro dispositivo de tensão maior, como um Arduino ou módulos de 5V, use conversores bidirecionais de tensão como o do link abaixo ou use divisores resistivos de tensão.

    Essas são as dimensões do módulo NodeMCU ESP-12

    dimensões do módulo NodeMCU ESP-12

    Fonte: User Manual for ESP12 Kit

    O NodeMCU ESP12 tem duas fileiras de 15 pinos (total 30 pinos). A distância entre as duas fileiras é grande (2,30 cm), mas poderá inseri-lo em um Protoboard 830 Pontos. Os pinos RESERVED não deverão ser usados, como o nome já diz, são reservados.

    • VIN – Esse é o pino de alimentação externa ( recomendo 5,0V / 1A). Pode usar até 9V, mas o regulador da placa deverá esquentar. Não use-o se estiver usando a USB.
    • GND– Esse é o terra da placa. Não se esqueça de conectá-lo ao terra de outros dispositivos.
    • RST – Reset do módulo ESP-12. Nível LOW(0V) dá um reboot na placa.
    • EN – (Enable) ativa o módulo ESP-12 quando o nível for HIGH(3,3V).
    • 3.3V – saída do regulador interno 3,3V – Para alimentar outro dispositivo, não use mais do que 500 mA de corrente.
    • CLK – interface SPI (clock) – pino SCLK (GPIO_6)
    • SD0 – interface SPI (master in serial out) – pino MISO (GPIO_7)
    • CMD – interface SPI (chip select) – pino CS (GPIO_11)
    • SD1 –  interface SPI (master out serial in) – pino MOSI (GPIO_8)
    • SD2 – pino GPIO_9 pode ser usado também para comunicação com SD Card (SDD2)
    • SD3 – pino GIPO_10 – pode ser usado também para comunicação com SD Card (SDD3)
    • RSV – reservado (não use).
    • ADC0– pino de entrada do conversor analógico digital ADC de 10 bits. Tensão máxima de 1,1V (variação do valor digital – 0 a 1024).
    • D0 – pino GIPO_16 pode ser usado para acordar (WAKE UP) o ESP8266 em modo sono profundo (Deep sleep mode).
    • D1 – pino GPIO_5 – entrada ou saída.
    • D2 – pino GIPO_4 – entrada ou saída.
    • D3 – pino GPIO_0 é usado também para controlar o upload do programa na memória Flash. Esta conectado no botão FLASH.
    • D4 – pino GPIO_2 – UART_TXD1 quando carregando o programa na memória FLASH
    • D5 – pino GPIO_14  pode ser usado em SPI de alta velocidade (HSPI-SCLK)
    • D6 – pino GPIO_12  pode ser usado em SPI de alta velocidade (HSPI-MISO)
    • D7 – pino GPIO_13  pode ser usado em SPI de alta velocidade (HSPI-MOSI) ou UART0_CTS.
    • D8 – pino GPIO_15  pode ser usado em SPI de alta velocidade (HSPI-CS) ou UART0_RTS.
    • RX – pino GPIO_3 – U0RXD quando carregando o programa na memória FLASH.
    • TX – pino GIPO_1 – U0TXD quando carregando o programa na memória FLASH.

    Conectando o Módulo no seu Computador

    A Placa NodeMCU ESP12 deve ser conectada no seu computador, usando um cabo USB com conector micro-USB. Qualquer porta USB poderá ser usada, mas dê a preferência para uma porta USB que suporte a corrente de 500 mA ou mais.

    Antes de conectar o cabo, como eu já informei, instale os drivers do chip Serial-USB. Aguarde  o reconhecimento da placa pelo Windows.

    Para descobrir qual porta COM será usada pela Plataforma de Desenvolvimento (IDE)  do ESP8266, acesse o Gerenciador de dispositivos e identifique a COM configurada.

    Digite Gerenciador de dispositivos na caixa de pesquisa do Windows e selecione-o. No meu PC, a porta configurada foi a COM3.

    gerenciador de dispositivos PC

    O NodeMCU é configurado no gerenciador de dispositivos


    Informações Adicionais do NodeMCU ESP12

    Diagrama eletrônico (esquemático) da placa NodeMCU ESP-12:

    Diagrama eletrônico da placa NodeMCU ESP-12

    Diagrama esquemático da placa NodeMCU ESP-12 | Fonte: User Manual for ESP12 Kit

    Se tiver alguma dúvida,  deixe um comentário!

    Tutoriais sobre NodeMCU – ESP12:

    NodeMCU – ESP12 – Usando Arduino IDE (2)

    NodeMCU – ESP12 – Alarme Residencial IOT (3)

    Tenha a Metodologia Eletrogate na sua Escola! Conheça nosso Programa de Robótica Educacional.

    Sobre o Autor


    José Gustavo Abreu Murta

    Consultor e Projetista de Sistemas Embarcados. Técnico em eletrônica, formado em Curso superior de TPD, pós-graduado em Marketing. Trabalhou por muitos anos na IBM na área de manutenção de computadores de grande porte. Aposentou-se, podendo curtir o que mais gosta : estudar e ensinar Tecnologia. Hobista em eletrônica desde 1976. Gosta muito de Fotografia e Observação de aves.


    Eletrogate

    1 de março de 2018

    A Eletrogate é uma loja virtual de componentes eletrônicos do Brasil e possui diversos produtos relacionados à Arduino, Automação, Robótica e Eletrônica em geral.

    Conheça a Metodologia Eletrogate e Lecione um Curso de Robótica nas Escolas da sua Região!

    Eletrogate Robô

    Cadastre-se e fique por
    dentro de novidades!