|     Inicio    |   |         |  |   FOROS      |  |      |      
   Elastix - VoIP B4A (Basic4Android) App inventor 2 PHP - MySQL
  Estación meteorológica B4J (Basic4Java) ADB Shell - Android Arduino
  Raspberry Pi Visual Basic Script (VBS) FireBase (BD autoactualizable) NodeMCU como Arduino
  AutoIt (Programación) Visual Basic Cosas de Windows Webs interesantes
Translate:
Búsqueda en este sitio:


.

Tutorial del Internet de las Cosas y Bluetooth con el ESP32
Juan Antonio Villalpando

Volver al índice del tutorial

____________________________

300.- ESP8266. Instalación. IDE Arduino.

- Características de la Tarjeta. 

  • Utiliza una CPU Tensilica L106 32-bit
  • CPU: Tensilica Xtensa LX3 (32 bit)
  • Voltaje de operación entre 3V y 3,6V
  • Corriente de operación 80 mA
  • Niveles de los terminales: 3,3 V
  •     Protocolos soportados: 802.11 b/g/n (2,4 GHz)
  •     Potencia de salida: 0,15 (W);  +19.5dBm en modo 802.11b
  •     Admite tres modos de funcionamiento: AP, STA, STA + Soft-AP
  •     Comunicación tipo de interfaz: SPI, Serial, dos UART (115200 bps)
  • Frecuencia de Reloj: 80MHz/160MHz
  • Instruction RAM: 32KB
  • Data RAM: 96KB
  • Memoria Flash Externa: 4MB
  • Pines Digitales GPIO: 17  (pueden configurarse como PWM  a 3.3V)
  • Pin Analógico ADC: 1 (0-1V)
  • El diodo de la placa corresponde a la salida D4.
  • Entrada analógica 10-bit (1024 valores posibles)
  • Entrada  ADC (Análogico Digital Convertidor)
  • digital I/O Pines: 11 x GPIO

    - ESP: lo fabrica la empresa China Espressif https://www.espressif.com/en/products/hardware/esp-wroom-32/overview

    All digital IO pins are protected from over-voltage with a snap-back circuit connected between the pad and ground. The snap back voltage is typically about 6V, and the holding voltage is 5.8V. This provides protection from over-voltages and ESD. The output devices are also protected from reversed voltages with diodes.

    http://www.esp8266.com/viewtopic.php?f=5&t=5556&start=5#sthash.GUIiDzaX.dpuf

    - Esquema de la tarjeta Wemos D1 R2

    - Documentación del ESP8266 en inglés.

    - Documentación ESP8266-12E

    - 0A-ESP8266-Datasheet-EN-v4.3.pdf

    - Ejemplos de la librería.

    ___________________________
    - Instalación.

    1.- Instalamos el driver:

    ch341ser_win.zip

    2.- En el IDE de Arduino vamos a Archivo / Preferencias. Pestaña de Ajustes y pegamos esta dirección en Gestor de URLs Adicionales de Tarjetas:

    http://arduino.esp8266.com/versions/2.3.0/package_esp8266com_index.json,

    http://arduino.esp8266.com/stable/package_esp8266com_index.json (esta es la última que he puesto)

    - [Antes estaban aquí: http://downloads.arduino.cc/packages/package_index.json]

    3.- Vamos a Herramientas / Placa: / Gestor de tarjetas...

    4.- Aparecerá esp8266 by ESP8266 Community

    - Pulsamos en More info y luego en el botón de Instalar

    - Tardará unos minutos en Descargar definiciones de tarjetas...

    6.- Cuando esté descargado, volvemos a Herramientas / Placa y localizamos NodeMCU 1.0 (ESP-12E Module)

    - Ya tenemos nuestra tarjeta Wemos D1 R32 preparada para funcionar.

    _________________________________
    1.- Parpadeo del LED_BUILTIN (D4).

    ________________________________
    - Código.

    - En la tarjeta podemos encontrar dos LED azules con los que podemos realizar pruebas, uno es el D4 y está junto al ESP8266, otro es el D5 y está en el centro de la tarjeta nombrado como SCK.

    - Observa en esta aplicación que tienen lógica contraria, es decir en LOW uno enciende y el otro apaga.

    parpadeo.ino
    
    // Juan Antonio Villalpando
    // kio4.com
    // Dos LED en la tarjeta.
    
    #define LED4 D4 // Es el cercano al 8266.
    #define LED5 D5 // Es el SCK en la tarjeta.
    
    void setup() {
    pinMode(LED4, OUTPUT);
    pinMode(LED5, OUTPUT);
    }
    
    void loop() {
    digitalWrite(LED4, LOW);
    digitalWrite(LED5, LOW);
    delay(1000);
    digitalWrite(LED4, HIGH);
    digitalWrite(LED5, HIGH);
    delay(500);
    }
    

    _________________________________
    2.- Definir terminales.

    - Otra manera de establecer los terminales. mediante #define y mediante int.

    parpadeo_2.ino
    			
    #define LED4 D4
    // int LED4 = D4;			
    
    void setup() {
      pinMode(pin5, OUTPUT);
    }
    
    void loop() {
     digitalWrite(LED4, HIGH); 
     delay(500);
     digitalWrite(LED4, LOW); 
     delay(500);
    }
    

    _________________________________
    2.- Escanea WiFi cercanos.

    - Debe salir un listado de los WiFi cercanos.

    - Consulta el Monitor Serie.

    scanwifi.ino
    
    #include "ESP8266WiFi.h"
    
    void setup()
    {
        Serial.begin(115200);
    
        // Desconecta si por si estuviera como Punto de Acceso.
        // WiFi.mode(WIFI_STA);
        WiFi.disconnect();
        delay(100);
    }
    
    void loop()
    {
        Serial.println("Comienzo de escaneo.");
    
        // WiFi.scanNetworks indicará el número de redes captadas.
        int n = WiFi.scanNetworks();
        Serial.println("Fin de escaneo.");
        if (n == 0) {
            Serial.println("No se ha encontrado ninguna red.");
        } else {
            Serial.print(n);
            Serial.println(" redes encontradas.");
            for (int i = 0; i < n; ++i) {
                // Nombre de red (SSID) y potencia (RSSI).
                Serial.print(i + 1);
                Serial.print(": ");
                Serial.print(WiFi.SSID(i));
                Serial.print(" (");
                Serial.print(WiFi.RSSI(i));
                Serial.println(" dBm)");
                delay(10);
            }
        }
        Serial.println("");
    
        // Espera 5 segundos y comienza otro escaneo.
        delay(5000);
    }
    

    ___________________________________________________
    3
    .- ¿Qué es RSSI?

    - Es el indicador de fuerza de la señal recibida (RSSI por las siglas del inglés Received Signal Strength Indicator ). RSSI en la Wikipedia.

    - Si una señal tiene un RSSI de -50 dBm, qué potencia tiene.

    - El dBm indica la potencia en decibelios referido a 1 mW.

    - Para pasarlo a Watios sería

    10^(-50/10) * 10^(-3) = 10 nW

    - En España la máxima potencia de WiFi permitida con 2,4 GHz es de 100 mW, esto es 20 dBm.

    - La sensibilidad de las estaciones receptoras suele estar por los -100 dBm.

    _______________________________________________

    - Incluir librerías.

    Se puede poner con doble comillas o con < >, según estos criterios:

    #include "archivo.h" buscará la librería primero en el directorio donde esté el código .ino de tu aplicación, si no lo encuentra buscará en la carpeta libraríes de Arduino
    #include <archivo.h> solo buscará la librería en la carpeta libraríes de Arduino.

    - Las librerías suelen estar en: C:\Archivos de Programa(86)\Arduino\libraries

    ________________________________

    - Tutorial sobre ESP8266

    https://iotmakervn.github.io/iot-starter-book/

    Bit coin

    https://min-api.cryptocompare.com/data/price?fsym=BTC&tsyms=EUR

    _______________________________

    - Mi correo:
    juana1991@yahoo.com
    - KIO4.COM - Política de cookies. Textos e imágenes propiedad del autor:
    © Juan A. Villalpando
    No se permite la copia de información ni imágenes.
    Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación y realizan análisis de uso de nuestro sitio.
    Si continúa navegando consideramos que acepta su uso. Acepto    Más información