Tabla de contenido:

Radio LoRa Ra-01 con STM32 y ESP32: 11 pasos
Radio LoRa Ra-01 con STM32 y ESP32: 11 pasos

Video: Radio LoRa Ra-01 con STM32 y ESP32: 11 pasos

Video: Radio LoRa Ra-01 con STM32 y ESP32: 11 pasos
Video: Nodo LoRa con RFM95W y ESP32 | Añade comunicaciones de largo alcance a tus proyectos. 2024, Mes de julio
Anonim
Image
Image
Demostración
Demostración

Como este es un tema popular entre quienes siguen mis publicaciones, decidí hablar sobre LoRa hoy. Sin embargo, voy a discutir el tema con algunos elementos nuevos: esta vez sin usar el ESP32, sino el STM32. Siempre quise publicar sobre el STM32, ya que compone una familia completa de microcontroladores de 32 bits producidos por STMicroelectronics. Tengo varios amigos que están usando este chip fuera de Brasil. Pueden dar fe de los éxitos de este dispositivo de fabricación europeo. Primero, voy a presentar el STM32 y también discutir el Módulo LoRa Ra-01. Además, discutiré la programación del STM32 en el IDE de Arduino.

Este video le mostrará un kit de desarrollo STM32 no destinado a la programación en Arduino, sino con lenguaje C o aquellos que son nativos de STMicroelectronics. Si no me equivoco, hay ocho empresas que producen compiladores para STM32, lo que nos muestra que existe una cultura global considerable con respecto a este chip.

Quiero explicarles aquí que STMicroelectronics es al menos cuatro veces más grande que Microchip y produce la familia STM32. Consiste en arquitecturas que van desde chips muy pequeños hasta STM32 F7, que considero "superpoderosos".

En nuestro montaje, utilizamos un STM32 Maple Mini, que parece un Arduino Nano. Sin embargo, es mucho más poderoso. También usaremos el Ai-Thinker Ra-01. Está separado de la radio LoRa, que se comunicará con el STM32 a través de SPI (la comunicación del chip Semtech LoRa).

Paso 1: demostración

En nuestro video, puedes ver en el ensamblaje que tenemos el STM32 Maple Mini conectado vía SPI al módulo Ra-01. Este conjunto transmite los datos a nuestro "amado" ESP32, que tiene una pantalla i2c incorporada que muestra los paquetes. Puede ver que solo se necesitan 81 milisegundos para la preparación, envío y recepción del paquete por parte del ESP32, así como para la visualización en pantalla. Si se aumenta la distancia y hay un cambio en el software, este tiempo tiende a aumentar.

Nuestro objetivo con este montaje es mostrar el STM32, que es un chip diferente, enviando datos en la radio Lora estándar. Es importante recordar que hay dos piezas de hardware diferentes que se comunican a través del protocolo de radio LoRa.

Paso 2: Módulo LoRa Ra-01

Módulo LoRa Ra-01
Módulo LoRa Ra-01

Básicamente, tenemos aquí el chip Semtech LoRa, con algunos componentes discretos en la placa, incluida una salida de antena. La interfaz es SPI. En este momento, debemos plantear la cuestión de la velocidad del chip, que está por encima de los 300 Kbps. Sabemos que LoRa no funciona a esta velocidad, ya que gira solo a 37K o menos. ¿Por qué? Para llegar lejos, debe reducir la tasa de bits. Es importante recordar que la velocidad no es una preocupación de LoRa, sino su alcance. La frecuencia de este dispositivo es de 433 MHz y la potencia de transmisión es de aproximadamente 18 dBm, con una potencia de 3v3.

Paso 3: Maple Mini

Arce Mini
Arce Mini

Considero esto especial con respecto al STM32. ¿Cuál es la diferencia entre esto y el kit de desarrollo STMicroelectronics (la serie STM32 L4 de potencia ultrabaja)? El kit es más poderoso, pero el Maple Mini funciona en el IDE de Arduino, lo que lo hace mucho más fácil para aquellos que no están tan bien informados con respecto a la programación. Podemos decir que Maple Mini funciona como una especie de Arduino, con un Flash de 128 KB. El Maple Mini también tiene 20 KB de RAM, entrada USB, LED, botones, un punto culminante para sus 34 IO, más 12 PWM de 16 bits y 9 entradas analógicas de 12 bits.

Paso 4: Fijar

Fijación
Fijación

Aquí se muestra el Maple Mini Pinout.

Paso 5: Instale el soporte para tarjetas ARM de 32 bits

Instalar soporte para tarjetas ARM de 32 bits
Instalar soporte para tarjetas ARM de 32 bits

En el IDE de Arduino, vaya a Tools-> Board-> Board Manager…

En la ventana que se abre, busque las placas Arduino SAM e instale las placas Arduino SAM (ARM Cortex-M3 de 32 bits)

Paso 6: Biblioteca Lora

Biblioteca Lora
Biblioteca Lora

Ahora vaya a Sketch-> Incluir biblioteca-> Administrar bibliotecas …

Busque LoRa e instale LoRa de Sandeep Mistry

Paso 7: SMT32 Arduino

SMT32 Arduino
SMT32 Arduino

Descarga el zip en

Descomprima y copie la carpeta a Documentos / Arduino / hardware

Paso 8: Montaje

Montaje
Montaje

Aquí puede ver lo simple que es nuestro esquema. Me conecto a través de SPI el módulo Ai-Thinker (LoRa) a STM32.

Paso 9: Configuración

Ajustes
Ajustes

Después de descargar la fuente, disponible al final de este artículo, luego vaya al archivo build. Luego, siga los pasos de esta imagen.

Paso 10: Código basado en ESP32 LoRa Enviar y recibir video

Código basado en ESP32 LoRa Enviar y recibir video
Código basado en ESP32 LoRa Enviar y recibir video

El código fuente que usamos en este proyecto es el mismo que ya usamos en un ensamblaje con un ESP32, en el video: ESP32 LoRa con Arduino IDE: Send and Receive TX RX, con una excepción: no tiene la pantalla. Esta parte de i2C ya se ha eliminado del código que descargué a continuación. Para saber cómo funciona este código, simplemente mire el video.

Paso 11: Archivos

Descarga los archivos:

PDF

INO

Recomendado: