Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
ESP8266EX
Version 4.3
Equipo Espressif Systems IOT
http://bbs.espressif.com/
Copyright © 2015
Descargo de responsabilidad y aviso de copyright
La información en este documento, incluidas las referencias de URL, está sujeta a cambios sin
previo aviso.
ESTE DOCUMENTO SE PROPORCIONA "TAL CUAL" SIN GARANTÍAS DE NINGÚN TIPO, INCLUYENDO
CUALQUIER GARANTÍA DE COMERCIABILIDAD, NO INFRACCIÓN, APTITUD PARA CUALQUIER
PROPÓSITO EN PARTICULAR O CUALQUIER GARANTÍA DE OTRA MANERA DERIVADA DE
CUALQUIER PROPUESTA, ESPECIFICACIÓN O MUESTRA. Toda responsabilidad, incluida la
responsabilidad por la infracción de cualquier derecho de propiedad, en relación con el uso de la
información en este documento queda excluida. En este documento no se otorgan licencias
expresas o implícitas, por impedimento legal o de otro tipo, a ningún derecho de propiedad
intelectual.
1.1. Introducción
La plataforma de conectividad inteligente (ESCP) de Espressif Systems es un conjunto de alto
rendimiento, alta integración SOC inalámbricos, diseñados para diseñadores de plataformas
móviles con limitaciones de espacio y energía. Proporciona Capacidad insuperable para incorporar
capacidades WiFi dentro de otros sistemas, o para funcionar de manera independiente aplicación,
con el costo más bajo y el mínimo requerimiento de espacio.
ESP8266EX ofrece una solución de red WiFi completa y autónoma; se puede usar para alojar el
aplicación o para descargar funciones de red WiFi de otro procesador de aplicaciones.
ESP8266EX es uno de los chips WiFi más integrados en la industria; integra los interruptores de
antena, balun de RF, amplificador de potencia, amplificador de recepción de bajo ruido, filtros,
módulos de administración de energía, requiere circuitos externos mínimos, y toda la solución,
incluido el módulo frontal, está diseñada para ocupar un área mínima de PCB.
ESP8266EX también integra una versión mejorada del procesador de 32 bits de la serie L106
Diamond de Tensilica, con SRAM en chip, además de las funcionalidades WiFi. ESP8266EX a
menudo se integra con sensores externos y otros dispositivos específicos de la aplicación a través
de sus GPIO; códigos de muestra para tales aplicaciones se proporcionan en el kit de desarrollo de
software (SDK).
1.2. Caracteristicas
• 802.11 b / g / n
• SDIO 2.0, (H) SPI, UART, I2C, I2S, control remoto IR, PWM, GPIO
1.3. Parámetros
1.4. Tecnología de ultra baja potencia
ESP8266EX ha sido diseñado para aplicaciones móviles, de electrónica portátil y de Internet de las
cosas con el objetivo de lograr el menor consumo de energía con una combinación de varias
técnicas patentadas. La arquitectura de ahorro de energía opera principalmente en 3 modos:
modo activo, modo de suspensión y modo de suspensión profunda.
Mediante el uso de técnicas y lógica avanzadas de administración de energía para apagar las
funciones que no se requieren y para controlar la conmutación entre los modos inactivo y activo,
ESP8266EX consume aproximadamente 60 uA en modo de reposo profundo (con el reloj RTC aún
en funcionamiento) y menos de 1.0 mA (DTIM = 3) o menos de 0.5mA (DTIM = 10) para
permanecer conectado al punto de acceso.
Cuando está en modo de reposo, solo el reloj calibrado en tiempo real y el perro guardián
permanecen activos. El reloj de tiempo real se puede programar para activar el ESP8266EX en
cualquier intervalo requerido.
El ESP8266EX se puede programar para que se active cuando se detecta una condición específica.
Esta característica de tiempo mínimo de activación del ESP8266EX puede ser utilizada por los SOC
de dispositivos móviles, lo que les permite permanecer en el modo de espera de baja potencia
hasta que se necesite WiFi.
Para satisfacer la demanda de energía de la electrónica móvil y portátil, ESP8266EX puede ser
programado para reducir la potencia de salida del PA para adaptarse a varios perfiles de
aplicación, cambiando el rango por consumo de energía.
• Electrodomésticos
• Red de malla
• Cámaras IP
• Redes de sensores
• Electrónica portátil
Nota: GPIO2, GPIO0, MTDO pueden configurarse como modo SDIO de 3 bits.
reguladores Las mediciones se realizan en el puerto de antena sin filtro SAW. Todos los
transmisores
Las mediciones se basan en un ciclo de trabajo del 90%, modo de transmisión continua.
②: Durante Light-Sleep, la CPU puede estar suspendida en aplicaciones como el interruptor WiFi.
Sin transmisión de datos, el circuito del módem WiFi se puede apagar y la CPU se puede suspender
para ahorrar energía de acuerdo con el estándar 802.11 (U-APSD). P.ej. en DTIM3, para mantener
un ciclo de reposo de 300ms-wake de 3ms para recibir los paquetes Beacon de AP, la corriente es
de aproximadamente 0.9mA.
③: Deep-Sleep no requiere conexión WiFi para mantenerse. Para aplicaciones con largos retrasos
entre la transmisión de datos, p. un sensor de temperatura que verifica la temperatura cada 100 s,
duerme 300 s y se despierta para conectarse al AP (toma aproximadamente 0.3 ~ 1 s), la corriente
promedio general es inferior a 1 mA.
2.5. MCU
ESP8266EX está integrado con el microcontrolador Tensilica L106 de 32 bits (MCU), que presenta
un consumo de energía extra bajo y RSIC de 16 bits. La velocidad del reloj de la CPU es de 80MHz.
También puede alcanzar un máximo
valor de 160MHz. El sistema de operación en tiempo real (RTOS) está habilitado. Actualmente,
solo el 20% de MIPS ha sido ocupado por la pila WiFi, el resto se puede usar para la programación
y desarrollo de aplicaciones de usuario. Las siguientes interfaces se pueden utilizar para
conectarse a la MCU integrada en ESP8266EX:
• Interfaces de RAM / ROM programables (iBus), que pueden conectarse con el controlador de
memoria y también pueden usarse para visitar flash externo;
• Interfaz RAM de datos (dBus), que puede conectarse con el controlador de memoria;
ESP8266EX WiFi SoC está integrado con un controlador de memoria, que incluye SRAM y ROM.
MCU puede visitar las unidades de memoria a través de las interfaces iBus, dBus y AHB. Todas las
unidades de memoria se pueden visitar a pedido, mientras que un árbitro de memoria decidirá la
secuencia de ejecución según el momento en que el procesador reciba estas solicitudes.
Según nuestra versión actual del SDK proporcionada, el espacio SRAM que está disponible para los
usuarios se asigna de la siguiente manera:
• Tamaño de RAM <36kB, es decir, cuando ESP8266EX está funcionando en el modo de estación y
está conectado al enrutador, el espacio programable accesible para el usuario en la sección de
datos y almacenamiento dinámico es de alrededor de 36kB).
• No hay ROM programable en el SoC, por lo tanto, el programa de usuario debe almacenarse en
un flash SPI externo.
2.6.2. Flash SPI externo
Se utiliza un flash SPI externo junto con ESP8266EX para almacenar programas de usuario.
Teóricamente hablando, se pueden admitir hasta 16 Mbytes de capacidad de memoria. Capacidad
de memoria flash SPI sugerida:
• OTA está deshabilitado: la memoria flash mínima que puede admitirse es 512 kByte;
• OTA está habilitado: la memoria flash mínima que puede admitirse es de 1 Mbyte.
Se pueden admitir varios modos SPI, incluidos SPI estándar, SPI dual, DIO SPI, QIO SPI y Quad SPI.
Por lo tanto, elija el modo SPI correcto cuando realice la descarga en la memoria flash; de lo
contrario
Los bloques AHB realizan la función de un árbitro, controlan las interfaces AHB desde el MAC, SDIO
(host) y la CPU. Dependiendo de la dirección, las solicitudes de datos de AHB pueden ir a uno de
los dos esclavos:
Las solicitudes de datos al controlador de memoria suelen ser solicitudes de alta velocidad, y las
solicitudes al bloque APB suelen ser registros de acceso.
El bloque APB actúa como decodificador. Está destinado solo para el acceso a registros
programables dentro de los bloques principales de ESP8266. Dependiendo de la dirección, la
solicitud APB puede ir a la radio, SI / SPI, SDIO (host), GPIO, UART, reloj en tiempo real (RTC), MAC
o banda base digital.
3. Pines y definiciones
3.1. GPIO
Hay hasta 17 pines GPIO. Pueden ser asignados a varias funciones por el firmware. Cada GPIO se
puede configurar con pull-up interno (excepto XPD_DCDC, que está configurado con pulldown
interno), entrada disponible para muestreo por un registro de software, entrada que activa una
interrupción de CPU de borde o nivel, entrada que activa una interrupción de activación de nivel,
drenaje abierto o controlador de salida push-pull, o salida
Estos pines se multiplexan con otras funciones, como I2C, I2S, UART, PWM, control remoto IR, etc.
El panel de soldadura de E / S de datos es bidireccional y tri-estado que incluye entrada de datos y
buffer de control de salida. Además, la E / S se puede configurar como un estado específico y
permanece así. Por ejemplo, si tiene la intención de reducir el consumo de energía del chip, todas
las señales de habilitación de entrada y salida de datos se pueden configurar como estado de baja
potencia restante. Puede transportar algún estado específico a la E / S. Cuando la E / S no está
alimentada por circuitos externos, la E / S permanecerá en el estado en que se utilizó la última vez.
Algunos
La retroalimentación positiva es generada por la función de estado restante de los pines, por lo
tanto, si la potencia de accionamiento externa debe ser más fuerte que la retroalimentación
positiva. Aun así, la potencia de conducción que se necesita está dentro de 5uA.
Todos los pines de E / S digitales están protegidos contra sobretensiones con un circuito de
retorno conectado entre la almohadilla y la tierra. El voltaje de retorno es típicamente de
aproximadamente 6V, y el voltaje de retención es de 5.8V. Esta
Proporciona protección contra sobretensiones y ESD. Los dispositivos de salida también están
protegidos contra voltajes invertidos con diodos.
3.2. Interfaz de entrada / salida digital segura (SDIO) ESP8266EX ha definido un SDIO esclavo,
cuyas definiciones se describen en la Tabla 7 a continuación. 4bit 25MHz SDIO v1.1 y 4bit 50MHz
SDIO v2.0 son compatibles.
Actualmente, ESP8266EX ha definido un SPI esclavo / maestro general, un SDID / SPI esclavo y un
HSPI esclavo / maestro general. Las funciones de todos estos pines se pueden implementar a
través del hardware. los
Nota:
• La función de la interfaz Slave SDIO / SPI se puede implementar a través del hardware, y la lista
vinculada DMA (Acceso directo a memoria) es compatible, los gastos generales de software son
más pequeños. Sin embargo, no hay una lista vinculada DMA en general SPI y HSPI, y los gastos
generales de software son mayores, por lo tanto, la velocidad de transmisión de datos estará
restringida por la velocidad de procesamiento del software.
Un I2C, que se utiliza principalmente para conectarse con un microcontrolador y otros equipos
periféricos como
como sensores, se define por ESP8266EX. La definición actual del pin de I2C es como se define a
continuación:
3.5. I2S
Actualmente se definen una interfaz de entrada de datos I2S y una interfaz de salida de datos I2S.
La interfaz I2S se utiliza principalmente en aplicaciones como la recopilación, el procesamiento y la
transmisión de datos de audio, como
así como la entrada y salida de datos en serie. Por ejemplo, se admiten luces LED (serie WS2812).
La funcionalidad I2S se puede realizar a través de la programación de software, los GPIO que se
utilizarán son
ESP8266EX ha definido dos interfaces UART, UART0 y UART1, las definiciones son como
abajo:
Tabla 13 Definiciones de pines de las interfaces UART
Las transferencias de datos a / desde las interfaces UART se pueden implementar a través del
hardware. La velocidad de transmisión de datos a través de las interfaces UART puede alcanzar
115200 * 40 (4.5Mbps).
UART0 puede ser para comunicación. Es compatible con el control de fluidos. Como UART1 solo
presenta una señal de transmisión de datos (Tx), generalmente se usa para imprimir el registro.
ESP8266EX ha definido cuatro interfaces de salida PWM. Pueden ser extendidos por los propios
usuarios. Las definiciones de pin actuales de las interfaces PWM se definen a continuación:
Tabla 14 Definiciones de pines de las interfaces PWM
1/22727, y se logrará una resolución de más de 14 bits a una frecuencia de actualización de 1KHz.
Actualmente, solo se define una interfaz de control remoto por infrarrojos, la definición del pin es
la siguiente:
ESP8266EX está integrado con un SARADC de precisión de 10 bits. Actualmente, TOUT (Pin6) se
define como una interfaz ADC, cuya definición se describe a continuación:
Las siguientes dos aplicaciones se pueden implementar usando ADC (Pin6). Sin embargo, estos dos
La función utilizada para probar el voltaje de la fuente de alimentación en el pin PA_VDD es:
uint16 system_get_vdd33 (void)
La función utilizada para probar el voltaje de entrada de TOUT es: uint16 system_adc_read (void)
El parámetro RF-init en el siguiente pasaje se refiere a esp_init_data_default.bin
Aplicación uno: Pruebe el voltaje de la fuente de alimentación de VDD3P3 (Pin 3 y Pin 4).
Proceso:
Optimice las condiciones del circuito de RF en función de los resultados de las pruebas de VDD3P3
(Pin 3
y Pin 4).
Diseño de hardware: el rango de voltaje de entrada es de 0 a 1.0 V cuando TOUT está conectado a
una fuente externa
circuito.
byte), "vdd33_const", debe configurarse para que sea la tensión de alimentación real de Pin
3 y Pin 4.
mientras que la unidad de "vdd33_const" es 0.1V, por lo tanto, el rango de valor efectivo
de "vdd33_const" es de 18 a 36.
Calibración RF
Proceso:
Nota dos:
(1) Pin Tout debe estar colgado. El byte 107 de esp_init_data_default.bin (0-127 bytes),
0xff, el valor devuelto de la función system_get_vdd33 será un valor efectivo, de lo contrario 0xffff
Será devuelto.
Nota tres:
La función system_adc_read está definida para probar el voltaje de entrada del Pin TOUT (Pin 6).
Detalles sobre esto
debe configurarse para que sea el voltaje de la fuente de alimentación real del Pin 3 y el Pin 4.
(2) Si el byte 107 de esp_init_data_default.bin (0-127 bytes), "vdd33_const", NO es
igual a 0xff, el valor devuelto de system_adc_read será un valor efectivo del voltaje de entrada
ESP8266EX presenta hasta 17 GPIO, todos los cuales se pueden asignar para realizar diversas
funciones de luces y botones LED. Definiciones de algunos GPIO que se asignan con ciertas
funciones en nuestra demostración
En total, se han definido tres interfaces, una para el botón y las otras dos para la luz LED. En
general, MTCK se usa para controlar el botón de reinicio, GPIO0 se usa como una señal para
indicar el estado de funcionamiento de WiFi, MTDI se usa como una luz de señal para indicar la
comunicación entre el dispositivo y el servidor.
Nota: Entre las nueve interfaces mencionadas anteriormente, la mayoría de ellas se pueden
multiplexar. Las definiciones de pines que se pueden definir no se limitan a las ocho mencionadas
aquí, los clientes pueden personalizar las funciones de los pines según sus escenarios de aplicación
específicos. Las funciones de estos pines pueden implementarse mediante programación de
software y hardware.
4. Kit de desarrollo de firmware y software
La aplicación y el firmware se ejecutan en ROM y SRAM en chip, que carga las instrucciones
durante la activación, a través de la interfaz SDIO, desde el flash externo.
• RTS / CTS
• Reconocimiento
• fragmentación y desfragmentación
• agregación
El escaneo pasivo o activo, así como el procedimiento de descubrimiento P2P se realiza de forma
autónoma una vez iniciado por el comando apropiado. La administración de energía se maneja con
una interacción mínima del host para minimizar el período de servicio activo.
4.1. Caracteristicas
• Soporte 802.11 b / g / n / d / e / i / k / r;
• Aceleradores de hardware para CCMP (CBC-MAC, modo contador), TKIP (MIC, RC4), WAPI
(SMS4), WEP (RC4), CRC;
• Interfaz abierta para varios esquemas de autenticación de capa superior sobre EAP, como TLS,
PEAP,
• Gestión de múltiples colas para utilizar completamente la priorización del tráfico definida por el
estándar 802.11e;
• DMA disperso para una CPU óptima sin carga en las operaciones de transferencia de datos Zero
Copy;
• Compuerta de reloj / energía combinada con administración de energía compatible con 802.11
adaptada dinámicamente a la condición de conexión actual proporcionando un consumo de
energía mínimo;
• El algoritmo de recuperación de velocidad adaptable establece la velocidad de transmisión
óptima y la potencia de transmisión en función de
ambiente;
• OFF: el pin CHIP_PD está bajo. El RTC está deshabilitado. Todos los registros se borran.
• DEEP_SLEEP: solo el RTC está encendido; el resto del chip está apagado. La memoria de
recuperación de RTC puede mantener la información básica de conexión WiFi.
• SLEEP: solo está funcionando el RTC. El oscilador de cristal está desactivado. Cualquier evento de
activación (MAC, host, temporizador RTC, interrupciones externas) pondrá el chip en el estado de
DESPERTAR.
• WAKEUP: en este estado, el sistema pasa de los estados de suspensión al estado PWR. El
oscilador de cristal y los PLL están habilitados.
• ON: el reloj de alta velocidad está operativo y se envía a cada bloque habilitado por el registro de
control del reloj. La activación de reloj de nivel inferior se implementa a nivel de bloque, incluida la
CPU, que se puede activar mediante la instrucción WAITI, mientras el sistema está encendido.
Figura 3 Ilustración de administración de energía
Si bien la calibración interna del oscilador de cristal garantiza que se pueda utilizar una amplia
gama de cristales, en general, la calidad del cristal sigue siendo un factor a tener en cuenta para
tener un ruido de fase razonable.
Para un reloj generado externamente, la frecuencia puede variar de 26MHz a 52MHz. Para un
buen rendimiento de la radio, se esperan las siguientes características del reloj:
• receptor de 2.4GHz
• transmisor de 2.4GHz
• Sesgos y reguladores.
• Administración de energía
El transceptor RF admite los siguientes canales de acuerdo con los estándares IEEE802.11b / g / n.
El transmisor de 2.4GHz convierte las señales de banda base en cuadratura a 2.4GHz y acciona la
antena con un amplificador de potencia CMOS de alta potencia. El uso de la calibración digital
mejora aún más la linealidad del amplificador de potencia, lo que permite un rendimiento de
vanguardia de entregar una potencia promedio de + 19.5dBm para la transmisión 802.11b y +
16dBm para la transmisión 802.11n.
▪ Concordancia de fase I / Q, y
Esto reduce la cantidad de tiempo requerido y el equipo de prueba requerido para las pruebas de
producción.
El generador de reloj genera señales de reloj en cuadratura de 2,4 GHz para el receptor y el
transmisor. Todas
▪ inductor,
▪ varactor, y
▪ filtro de bucle
El generador de reloj tiene circuitos de calibración y autocomprobación incorporados. Las fases del
reloj en cuadratura y el ruido de fase están optimizados en el chip con algoritmos de calibración
patentados para garantizar el mejor rendimiento del receptor y el transmisor.