Índice:
- Etapa 1: Principais recursos
- Etapa 2: comparação entre ESP32, ESP8266 e Arduino R3
- Etapa 3: Tipos de ESP32
- Etapa 4: WiFi NodeMCU-32S ESP-WROOM-32
- Etapa 5: configurar o Arduino IDE (Windows)
- Etapa 6: varredura de WiFi
- Etapa 7: Código
- Etapa 8: configuração
- Etapa 9: Loop
- Etapa 10: Arquivos
Vídeo: Introdução ao ESP32: 10 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:38
Neste artigo, vamos falar sobre ESP32, que considero ser um irmão mais velho de ESP8266. Gosto muito deste microcontrolador porque tem wi-fi. Só para você ter uma ideia, antes do ESP existir, se você precisasse de um Arduino para ter WiFi, teria que gastar entre US $ 200 e US $ 300 para comprar um adaptador Wifi. O adaptador para cabo de rede não é tão caro, mas para WiFi sempre foi e ainda é caro. Mas, felizmente, a Espressif Systems lançou o ESP e está resolvendo nossas vidas.
Gosto do ESP32 com este formato que possui uma porta USB. Este esquema NodeMCU é fácil de manipular porque não precisa de nenhum sistema eletrônico. Basta conectar o cabo, ligar o dispositivo e programá-lo. Ele funciona exatamente como um Arduino.
De qualquer forma, hoje falaremos sobre os aspectos gerais do ESP32 e como configurar o IDE do Arduino para programar mais dispositivos do tipo. Também faremos um programa que pesquisa as redes e mostra qual delas é mais potente.
Etapa 1: Principais recursos
Chip com WiFi integrado: padrão 802.11 B / G / N, operando na faixa de 2,4 a 2,5 GHz
Modos de operação: Cliente, Ponto de Acesso, Estação + Ponto de Acesso
Microprocessador Dual Core Tensilica Xtensa 32 bits LX6
Relógio ajustável de 80 MHz a 240 MHz
Tensão operacional: 3,3 VDC
Possui SRAM de 512 KB
Possui ROM de 448 KB
Possui memória flash externa de 32Mb (4 megabytes)
A corrente máxima por pino é de 12mA (recomenda-se o uso de 6mA)
Tem 36 GPIOs
GPIOs com funções PWM / I2C e SPI
Possui Bluetooth v4.2 BR / EDR e BLE (Bluetooth Low Energy)
Etapa 2: comparação entre ESP32, ESP8266 e Arduino R3
Etapa 3: Tipos de ESP32
ESP32 nasceu com muitos irmãos. Hoje estou usando o primeiro da esquerda, o Espressif, mas existem várias marcas e tipos, incluindo display Oled integrado. No entanto, as diferenças são todas no mesmo chip: o Tensilica LX6, 2 Core.
Etapa 4: WiFi NodeMCU-32S ESP-WROOM-32
Este é o diagrama de ESP que estamos usando em nossa montagem. É um chip que tem muito apelo e poder. São vários pinos que você escolhe se querem funcionar como analógico digital, digital analógico ou ainda se que funcionam a porta como digital.
Etapa 5: configurar o Arduino IDE (Windows)
Veja como configurar o IDE do Arduino para que possamos compilar para ESP32:
1. Baixe os arquivos através do link:
2. Descompacte o arquivo e copie o conteúdo para o seguinte caminho:
C: / Users / [YOUR_USER_NAME] / Documents / Arduino / hardware / espressif / esp32
Nota: Se não houver nenhum diretório "espressif" e "esp32", basta criá-los normalmente.
3. Abra o diretório
C: / Users / [YOUR_USER_NAME] / Documents / Arduino / hardware / espressif / esp32 / tools
Execute o arquivo "get.exe".
4. Após a conclusão do "get.exe", conecte o ESP32, aguarde a instalação dos drivers (ou instale manualmente).
Pronto, agora é só escolher a placa ESP32 em "ferramentas >> placa" e compilar seu código.
Etapa 6: varredura de WiFi
Aqui está um exemplo de como procurar redes WiFi disponíveis perto do ESP-32, bem como a força do sinal de cada uma delas. A cada varredura, também descobriremos qual rede tem a melhor intensidade de sinal.
Etapa 7: Código
Primeiro vamos incluir a biblioteca "WiFi.h", será necessário que possamos trabalhar com a placa de rede do nosso dispositivo.
#include "WiFi.h"
Aqui estão duas variáveis que serão usadas para armazenar o SSID (nome) da rede e a força do sinal.
String networkSSID = ""; int StrengthSignal = -9999;
Etapa 8: configuração
Na função setup (), definiremos o modo de comportamento WiFi do nosso dispositivo. Neste caso, como o objetivo é pesquisar as redes disponíveis, configuraremos nosso dispositivo para funcionar como uma "estação".
void setup () {// Inicializar Serial para fazer logon Serial Monitor Serial.begin (115200);
// configurando o modo de operação de WiFi como estação WiFi.mode (WIFI_STA); // WIFI_STA é uma constante que indica o modo de estação
// desconectar do ponto de acesso se já estiver conectado WiFi.disconnect (); atraso (100);
// Serial.println ("Configuração concluída");}
Etapa 9: Loop
Na função loop () buscaremos as redes disponíveis e imprimiremos o log das redes encontradas. Para cada uma dessas redes, faremos a comparação para encontrar aquela com a maior intensidade de sinal.
void loop () {// Serial.println ("scan start"); // realiza a varredura das redes disponíveis
int n = WiFi.scanNetworks ();
Serial.println ("Digitalização realizada");
// verifique se você encontrou alguma rede if (n == 0) {Serial.println ("Nenhuma rede encontrada"); } outro {networkSSID = ""; StrengthSignal = -9999; Serial.print (n); Serial.println ("redes encontradas / n"); for (int i = 0; i <n; ++ i) {// imprimir no monitor serial cada uma das redes encontradas Serial.print ("SSID:"); Serial.println (WiFi. SSID (i)); // nome da rede (ssid) Serial.print ("SIGNAL:"); Serial.print (WiFi. RSSI (i)); // intensidade do sinal Serial.print ("\ t / tCHANNEL:"); Serial.print ((int) WiFi.channel (i)); Serial.print ("\ t / tMAC:"); Serial.print (WiFi. BSSIDstr (i)); Serial.println ("\ n / n"); if (abs (WiFi. RSSI (i)) <abs (StrengthSignal)) {StrengthSignal = WiFi. RSSI (i); networkSSID = WiFi. SSID (i); Serial.print ("REDE COM O MELHOR SINAL ENCONTRADO: ("); Serial.print (networkSSID); Serial.print (") - SINAL: ("); Serial.print (StrengthSignal); Serial.println (")"); } atraso (10); }} Serial.println ("\ n ----------------------------------------- ------------------------------------------- / n ");
// intervalo de 5 segundos para realizar um novo retardo de varredura (5000); }
"If (abs (WiFi. RSSI (i))"
Observe que na declaração acima usamos abs (), esta função assume o valor absoluto (ou seja, não negativo) do número. No nosso caso, fizemos isso para encontrar o menor dos valores na comparação, porque a intensidade do sinal é dada como um número negativo e quanto mais próximo de zero melhor é o sinal.
Etapa 10: Arquivos
Baixe todos os meus arquivos em: www.fernandok.com
Recomendado:
Capacete de segurança Covid Parte 1: uma introdução aos circuitos do Tinkercad !: 20 etapas (com fotos)
Capacete de segurança Covid Parte 1: uma introdução aos circuitos do Tinkercad !: Olá, amigo! Nesta série de duas partes, aprenderemos como usar os circuitos do Tinkercad - uma ferramenta divertida, poderosa e educacional para aprender como os circuitos funcionam! Uma das melhores maneiras de aprender é fazendo. Então, vamos primeiro criar nosso próprio projeto: o
Introdução ao ESP32 - Instalando placas ESP32 no IDE Arduino - Código ESP32 Blink: 3 etapas
Introdução ao ESP32 | Instalando placas ESP32 no IDE Arduino | ESP32 Blink Code: Neste instructables veremos como começar a trabalhar com esp32 e como instalar placas esp32 no IDE do Arduino e iremos programar esp 32 para executar o código blink usando arduino ide
LoRa ESP32 Radios Tutorial de introdução fácil - Sem fiação: 6 etapas
LoRa ESP32 Radios Tutorial de introdução fácil | Sem fiação: Ei, tudo bem, pessoal? Akarsh aqui da CETech. Hoje vamos fazer um projeto que é basicamente sobre como configurar rádios LoRa para se comunicarem da maneira mais fácil possível. Aqui o microcontrolador que usei é o ESP32, que é c
Introdução Display OLED ESP32 Lora: 8 etapas
Introdução Display OLED ESP32 Lora: Este é outro vídeo sobre a introdução ao ESP32 LoRa. Desta vez, falaremos especificamente sobre uma tela gráfica (de 128x64 pixels). Usaremos a biblioteca SSD1306 para exibir informações neste display OLED e apresentar um exemplo de
ESP32 com OLED integrado (WEMOS / Lolin) - Introdução ao estilo Arduino: 4 etapas
ESP32 com OLED integrado (WEMOS / Lolin) - Introdução ao estilo Arduino: Se você é como eu, aproveite a chance de colocar as mãos no melhor e mais recente ESP8266 / etc … e colocá-lo à prova. O ESP32 não é diferente, mas descobri que ainda não há muito por aí no que diz respeito à documentação. O