Está é a plataforma mais famosa pra uso em Internet das Coisas (Internet of Things ou IoT) pois ele não necessita de nenhum modulo adicional para ter conexão com a internet pois ele já vem com Bluetooth e Wi-fi integrado, já no caso do Arduíno Uno, Mega, Nano e etc, necessitam que seja conectado um Shield ou modulo para que haja essa conexão e que ele possa ser usado para a Internet das Coisas. O conjunto inteiro do ESP-32 é chamado de NodeMCU-32S, mas também há outras variantes para a plataforma completa.
Após a explosão no mercado com a plataforma Arduíno muitas outras empresas e organizações começaram a seguir o modelo da plataforma do Arduíno porem nem todas essas plataformas conseguiram ter a integração com a IDE (Integrated Development Environment ou Ambiente de Desenvolvimento Integrado) do Arduíno, porem em 2016 a Espressif Systems criou a plataforma ESP32 (ESP-WROOM-32) que utiliza o SoC (System on Chip) ESP32-D0WDQ6 e através de sua comunidade desenvolveram um plugin que consegue fazer a integração do ESP32 com a IDE de programação do Arduíno, o que tornou este chip uma grande alternativa em relação ao Arduíno já que ele possui Bluetooth e Wi-fi integrado.
A grande diferencia em si da plataforma Arduíno não era o Arduíno Uno, Arduíno Mega e etc, mas sim a sua IDE de programação que faz um trabalho maravilho em simplificar gigantescamente a programação do usuário e tudo isso graças as grandes quantidades de bibliotecas disponíveis na internet, onde por ser uma plataforma gratuita torna o acesso mais fácil e o desenvolvimento pelos os usuários algo contínuo.
A IDE é muito simples sem muitos botões para confundir usuários iniciantes, o que torna a adesão grande em escolas e por pessoas que nunca tiveram contato com uma IDE de programação,
Especificações:
O datasheet do ESP32 que a Espressif fornece possui muitos dados que são importantíssimos para a conservação e o bom uso do ESP32, organizei em forma de tabela:
Alimentação:
2,2V ~ 3,3V DC
Corrente de Consumo:
Média de 80mA
Temperatura de Operação:
-40°C ~ +85°C
Processador:
Xtensa® Dual-Core 32-bit LX6
Processador secundário:
ULP (Ultra Low Power coprocessor) 8MHz com consumo de 150uA.
Frequência de Operação:
80MHz ~ 240MHz
Memoria FLASH:
4MB
Memoria RAM:
520KB
Memoria ROM:
448KB
GPIOs (Entradas e Saídas):
34 GPIOS de 3.3V e 12mA.
Conversores ADC (Analógico para Digital):
18 ADC com 12-bit de resolução (4096 bits)
Conversores DAC (Digital para Analógico):
2 ADC com 8-bit de resolução (256 bits)
WiFi:
2,4 GHz,
802.11 b/g/n/e/i (802.11n até 150 Mbps)
Bluetooth:
Bluetooth Low Energy v4.2 (BLE)
Criptografia:
AES, RSA, SHA e ECC
Segurança:
WPA/WPA2/WPA2-Enterprise/WPS
Protocolos de Rede:
IPv4, IPv6, SSL, TCP/UDP/HTTP/FTP/MQTT
Temporizadores:
4 Timers de 64-bit.
Interfaces de Módulos:
Cartão SD, UART, SPI, SDIO, I2C, LED PWM, Motor PWM, I2S, I2C, IR
Sensores:
1 Sensor de temperatura interno.
1 Sensor de efeito Hall.
10 Sensores de Toque Capacitivo.
Recursos:
4 Watchdogs
Deep Sleep
Pré-amplificador analógico de baixo ruído
Três canais de temporizadores de 16 bits geram formas de onda PWM
Entrada e saída estéreo de/para o codec de áudio e saída de dados paralela do LCD
Oito canais de transmissor e receptor Infravermelho para várias formas de onda
4 interfaces virtuais de Wi-Fi
São muitos os recursos que estão disponíveis no ESP32, se comparado com o Arduino, o ESP é ideal para projetos profissionais onde necessitam vários recursos com poucos módulos, seu poder de processamento é muito maior que o Arduíno.
Atenção: A alimentação máxima do ESP32 é de 3,3V o que faz que 5V para alimentação ou para sinal lógico em seus GPIOs seja fatal, podendo levar a queima do ESP32, caso necessite entrar um sinal lógico de 5V em seus GPIOs utilize um divisor de tensão com dois resistores um de 1K e outro de 2K.
A alimentação é um dos contras do ESP32 pois a tensão máxima de trabalho é de 3,3V fazendo com que seja necessário adaptações para alimentar algum sensor ou conectar algum periférico nos pinos de GPIO do ESP32, mas dependendo dos sensores nem é necessário adaptações com resistores ou transistores já que uma gama de sensores funcionam a 3,3V.
Pinos de GPIOs:
O esp32 possui 34 GPIOs programáveis e estes mesmos GPIOs possuem diversas funções onde:
18 GPIOs possuem conversor ADC
2 possuem DAC,
10 possuem Sensores de Toque Capacitivo.
34 possuem interrupção
4 possuem I2C
16 possuem Ethernet EMAC
Abaixo está uma ilustração feita pelo identificando cada pino dos ESP32:
Pinout do ESP32 DevKitC, fonte: https://gojimmypi.blogspot.com/2017/03/jtag-debugging-for-esp32.html
Pinout do ESP32 DevKit1, fonte: https://microcontrollerslab.com/
Outra informação importante é que nem todos os GPIO’s possuem resistores de pull-up e pull-down, fui descobrir desta característica depois de desenvolver o XPboard percebi que o pino 34 do LCD não estava funcionando normalmente não exibindo nada no LCD, fui descobrir que alguns pinos não possuem esses resistores internamente. São os GPIO’s do 34 ao 39:
GPIO 34 – Não possui resistor de Pull-up ou Pull-down GPIO 35 – Não possui resistor de Pull-up ou Pull-down GPIO 36 – Não possui resistor de Pull-up ou Pull-down GPIO 39 – Não possui resistor de Pull-up ou Pull-down
Em algumas placas de ESP32 o GPIO 6 até o GPIO 11 Estão disponíveis para o uso para o programador. No entanto, esses pinos estão conectados ao chip flash SPI integrado no chip ESP-WROOM-32 e não são recomendados para outros usos. Portanto, evite usar esses pinos em seus projetos:
Alguns GPIOs alteram seu estado para nivel HIGH (3,3V) ou emitem sinais PWM na inicialização ou reset da placa. Isso significa que, se você tiver saídas conectadas a esses GPIOs, poderá obter resultados inesperados quando o ESP32 for reiniciado ou inicializado, evite usa-los para acionamento de coisas que possam comprometer a segurança de pessoas. Abaxo segue a lista de GPIO’s
GPIO 1
GPIO 3
GPIO 5
GPIO 6 a GPIO 11 (conectado à memória flash SPI integrada do ESP32 – não recomendado para uso).
GPIO 14
GPIO 15
Você deve estar atento aos GPIO’s que você irá utilizar pois não é todos que possuem as funções que você deseja, algumas GPIO’s são imprevisíveis, segue uma tabela com a maioria dos GPIO’s:
GPIO
Entrada
Saída
Comentários:
0
Sempre em ALTO
OK
Emite sinal PWM na inicialização
1
Pino TX
OK
Saída de depuração na inicialização
2
OK
OK
Conectado ao LED da placa
3
OK
Pino RX
Durante o boot fica HIGH(3,3V)
4
OK
OK
5
OK
OK
Emite sinal PWM na inicialização
6
x
x
Conectado ao SPI flash integrado
7
x
x
Conectado ao SPI flash integrado
8
x
x
Conectado ao SPI flash integrado
9
x
x
Conectado ao SPI flash integrado
10
x
x
Conectado ao SPI flash integrado
11
x
x
Conectado ao SPI flash integrado
12
OK
OK
Inicialização falha se colocado em Alto
13
OK
OK
14
OK
OK
Emite sinal PWM na inicialização
15
OK
OK
Emite sinal PWM na inicialização
16
OK
OK
17
OK
OK
18
OK
OK
19
OK
OK
21
OK
OK
22
OK
OK
23
OK
OK
25
OK
OK
26
OK
OK
27
OK
OK
32
OK
OK
33
OK
OK
34
OK
Sem Pull-Up e Pull-Down Recomendável: Somente Entrada
35
OK
Sem Pull-Up e Pull-Down Recomendável: Somente Entrada
36
OK
Sem Pull-Up e Pull-Down Recomendável: Somente Entrada
39
OK
Sem Pull-Up e Pull-Down Recomendável: Somente Entrada
Energia:
Embora o ESP32 seja muito mais potente e robusto para projetos do que o Arduino Uno ou Mega ele consome uma elevada corrente de 80mA se comparado com o Arduíno que consome em torno de 2mA. Isto é devido ao Wi-fi, bluetooth e o processamento o que é horrível para aplicações que utilize bateria, nessas aplicações o uso da energia é crucial quanto menor é a corrente maior é a duração do funcionamento do circuito sem ter que recarregar a bateria, há maneiras de diminuir a corrente de uso do ESP32 como o Deep Sleep, desligar o Wi-Fi quando não houver uso e etc.
Estas praticas exigem que o programador conheça bem o hardware e quando é necessário ligar e desligar os recursos que consomem energia e que não são necessários ficarem ativos constantemente.
Hardware:
A construção do ESP-32 é protegida por um shield de ferro para evitar interferências eletromagnéticas, o ESP-32 em sí é o modulo ESP-WROOM-32 que é bem pequeno se comparado com o restante do NodeMCU-32S no modulo ESP-WROOM-32 possui o chip principal ESP32-D0WDQ6 um cristal oscilador normalmente de 40MHz e um chip de memória Flash GD25Q32 de 4Mb a 16Mb. A seguir está uma galeria de imagens dos componentes do hardware e também o esquemático fornecido pelo datasheet:
Sou Engenheiro Eletricista com Enfase em Eletrônica e Técnico em Eletrônica, gosto de estar praticando montagens de circuitos e também programar sistemas embarcados. Acredito que compartilhar informações gratuita gera mais informações novas por parte de outras pessoas.
We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies. Usamos cookies em nosso site para fornecer a experiência mais relevante, lembrando suas preferências e visitas repetidas. Ao clicar em “Aceitar”, concorda com a utilização de TODOS os cookies.
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
Muito legal o conteúdo, bem esclarecedor o texto.