Tabla de contenido:
- Paso 1: características clave
- Paso 2: Comparación entre ESP32, ESP8266 y Arduino R3
- Paso 3: Tipos de ESP32
- Paso 4: Nodo WiFi MCU-32S ESP-WROOM-32
- Paso 5: Configuración de Arduino IDE (Windows)
- Paso 6: Escaneo WiFi
- Paso 7: Código
- Paso 8: configuración
- Paso 9: bucle
- Paso 10: archivos
Video: Introducción a ESP32: 10 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
En este artículo vamos a hablar sobre ESP32, que considero un hermano mayor del ESP8266. Me gusta mucho este microcontrolador porque tiene WiFi. Solo para que tengas una idea, antes de que exista ESP, si necesitas un Arduino para tener WiFi, tendrías que gastar entre $ 200 y $ 300 para comprar un adaptador Wifi. El adaptador para cable de red no es tan caro, pero para WiFi siempre lo ha sido y sigue siendo caro. Pero, afortunadamente, Espressif Systems ha lanzado ESP y está resolviendo nuestras vidas.
Me gusta ESP32 con este formato que tiene un puerto USB. Este esquema NodeMCU es fácil de manipular porque no necesita ningún sistema electrónico. Simplemente conecte el cable, encienda el dispositivo y prográmelo. Funciona como un Arduino.
De todos modos, hoy hablaremos de los aspectos generales de ESP32 y cómo configurar el IDE de Arduino para programar más dispositivos del tipo. También haremos un programa que busque en las redes y muestre cuál es más potente.
Paso 1: características clave
Chip con WiFi incorporado: estándar 802.11 B / G / N, operando en el rango de 2.4 a 2.5GHz
Modos de funcionamiento: Cliente, Punto de acceso, Estación + Punto de acceso
Microprocesador de doble núcleo Tensilica Xtensa 32-bit LX6
Reloj ajustable desde 80MHz hasta 240MHz
Voltaje de funcionamiento: 3,3 V CC
Tiene SRAM de 512KB
Características 448KB ROM
Tiene memoria flash externa de 32Mb (4 megabytes)
La corriente máxima por pin es de 12 mA (se recomienda utilizar 6 mA)
Tiene 36 GPIO
GPIO con funciones PWM / I2C y SPI
Tiene Bluetooth v4.2 BR / EDR y BLE (Bluetooth Low Energy)
Paso 2: Comparación entre ESP32, ESP8266 y Arduino R3
Paso 3: Tipos de ESP32
ESP32 nació con muchos hermanos. Hoy estoy usando el primero de la izquierda, Espressif, pero hay varias marcas y tipos, incluida la pantalla Oled incorporada. Sin embargo, las diferencias son todas del mismo chip: el Tensilica LX6, 2 Core.
Paso 4: Nodo WiFi MCU-32S ESP-WROOM-32
Este es el diagrama de ESP que estamos usando en nuestro ensamblaje. Es un chip que tiene mucho atractivo y poder. Son varios pines que eliges si quieren funcionar como digital analógico, analógico digital o incluso si funcionan la puerta como digital.
Paso 5: Configuración de Arduino IDE (Windows)
A continuación, se explica cómo configurar el IDE de Arduino para que podamos compilar para ESP32:
1. Descarga los archivos a través del enlace:
2. Descomprima el archivo y copie el contenido en la siguiente ruta:
C: / Usuarios / [YOUR_USER_NAME] / Documentos / Arduino / hardware / espressif / esp32
Nota: Si no hay directorio "espressif" y "esp32", simplemente créelos normalmente.
3. Abra el directorio
C: / Usuarios / [YOUR_USER_NAME] / Documentos / Arduino / hardware / espressif / esp32 / tools
Ejecute el archivo "get.exe".
4. Una vez que finalice "get.exe", conecte el ESP32, espere a que se instalen los controladores (o instálelos manualmente).
Listo, ahora solo elija la placa ESP32 en "herramientas >> placa" y compile su código.
Paso 6: Escaneo WiFi
A continuación, se muestra un ejemplo de cómo buscar redes WiFi disponibles cerca del ESP-32, así como la intensidad de la señal de cada una de ellas. Con cada escaneo, también descubriremos qué red tiene la mejor intensidad de señal.
Paso 7: Código
Primero incluyamos la librería "WiFi.h", será necesario que nos permita trabajar con la tarjeta de red de nuestro dispositivo.
#include "WiFi.h"
Aquí hay dos variables que se utilizarán para almacenar el SSID (nombre) de la red y la intensidad de la señal.
String networkSSID = ""; int StrengthSignal = -9999;
Paso 8: configuración
En la función setup () definiremos el modo de comportamiento WiFi de nuestro dispositivo. En este caso, dado que el objetivo es buscar redes disponibles, configuraremos nuestro dispositivo para que funcione como una "estación".
void setup () {// Inicializar Serial para iniciar sesión en Serial Monitor Serial.begin (115200);
// configurando el modo de funcionamiento de WiFi como estación WiFi.mode (WIFI_STA); // WIFI_STA es una constante que indica el modo de la estación
// desconectarse del punto de acceso si ya está conectado WiFi.disconnect (); retraso (100);
// Serial.println ("Configuración realizada");}
Paso 9: bucle
En la función loop (), buscaremos las redes disponibles y luego imprimiremos el registro en las redes encontradas. Para cada una de estas redes haremos la comparación para encontrar la que tenga mayor intensidad de señal.
bucle vacío () {// Serial.println ("inicio de escaneo"); // realiza el escaneo de las redes disponibles
int n = WiFi.scanNetworks ();
Serial.println ("Escaneo realizado");
// compruebe si ha encontrado alguna red if (n == 0) {Serial.println ("No se encontró ninguna red"); } más {networkSSID = ""; StrengthSignal = -9999; Serial.print (n); Serial.println ("redes encontradas / n"); for (int i = 0; i <n; ++ i) {// imprime en el monitor serial cada una de las redes encontradas Serial.print ("SSID:"); Serial.println (WiFi. SSID (i)); // nombre de la red (ssid) Serial.print ("SIGNAL:"); Serial.print (WiFi. RSSI (i)); // intensidad de la señal 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 ("RED CON LA MEJOR SEÑAL ENCONTRADA: ("); Serial.print (networkSSID); Serial.print (") - SIGNAL: ("); Serial.print (StrengthSignal); Serial.println (")"); } retraso (10); }} Serial.println ("\ n ----------------------------------------- -------------------------------------------\norte");
// intervalo de 5 segundos para realizar un nuevo retardo de escaneo (5000); }
"Si (abs (WiFi. RSSI (i))"
Tenga en cuenta que en la declaración anterior usamos abs (), esta función toma el valor absoluto (es decir, no negativo) del número. En nuestro caso, hicimos esto para encontrar el más pequeño de los valores en la comparación, porque la intensidad de la señal se da como un número negativo y cuanto más cerca de cero, mejor es la señal.
Paso 10: archivos
Descarga todos mis archivos en: www.fernandok.com
Recomendado:
Introducción a Python para ESP8266 y ESP32: 6 pasos
Introducción a Python para ESP8266 y ESP32: Fundamento El ESP8266 y su hermano mayor menor ESP32 son microchips Wi-Fi de bajo costo con pila completa de TCP / IP y capacidad de microcontrolador. El chip ESP8266 llamó la atención de la comunidad de fabricantes por primera vez en 2014. Desde entonces, el bajo precio (
Introducción a ESP32 CAM - Transmisión de video usando ESP CAM a través de Wifi - Proyecto de cámara de seguridad ESP32: 8 pasos
Introducción a ESP32 CAM | Transmisión de video usando ESP CAM a través de Wifi | Proyecto de cámara de seguridad ESP32: hoy aprenderemos cómo usar esta nueva placa ESP32 CAM y cómo podemos codificarla y usarla como cámara de seguridad y obtener una transmisión de video a través de wifi
Introducción a ESP32 - Instalación de placas ESP32 en Arduino IDE - Código intermitente ESP32: 3 pasos
Introducción a ESP32 | Instalación de placas ESP32 en Arduino IDE | Código intermitente ESP32: en este instructables veremos cómo comenzar a trabajar con esp32 y cómo instalar placas esp32 en Arduino IDE y programaremos esp 32 para ejecutar código intermitente usando arduino ide
Tutorial de introducción fácil de radios LoRa ESP32 - Sin cableado: 6 pasos
Tutorial de introducción fácil de radios LoRa ESP32 | Sin cableado: Hey, ¿qué pasa, chicos? Akarsh aquí de CETech. Hoy vamos a hacer un proyecto que consiste básicamente en configurar radios LoRa para hablar entre ellos de la manera más fácil posible. Aquí el microcontrolador que he usado es el ESP32, que es c
Introducción Pantalla OLED ESP32 Lora: 8 pasos
Introducción Pantalla OLED ESP32 Lora: Este es otro video sobre la Introducción a ESP32 Lora. En esta ocasión, hablaremos específicamente de una pantalla gráfica (de 128x64 píxeles). Usaremos la biblioteca SSD1306 para mostrar información en esta pantalla OLED y presentar un ejemplo de