Оглавление:

Радио LoRa Ra-01 с STM32 и ESP32: 11 шагов
Радио LoRa Ra-01 с STM32 и ESP32: 11 шагов

Видео: Радио LoRa Ra-01 с STM32 и ESP32: 11 шагов

Видео: Радио LoRa Ra-01 с STM32 и ESP32: 11 шагов
Видео: LoRa на RYLR896. Обзор и тест дальности 2024, Ноябрь
Anonim
Image
Image
Демонстрация
Демонстрация

Поскольку это популярная тема среди тех, кто следит за моими постами, я решил сегодня поговорить о LoRa. Однако я собираюсь обсудить эту тему с некоторыми новыми элементами: на этот раз без использования ESP32, а вместо этого STM32. Я всегда хотел рассказать о STM32, поскольку он составляет целое семейство 32-битных микроконтроллеров, производимых STMicroelectronics. У меня есть несколько друзей, которые используют этот чип за пределами Бразилии. Они могут подтвердить успехи этого европейского производственного устройства. Сначала я собираюсь представить STM32, а также обсудить модуль LoRa Ra-01. Кроме того, я расскажу о программировании STM32 в среде Arduino IDE.

Это видео покажет вам комплект разработчика STM32, не предназначенный для программирования в Arduino, а вместо этого с языком C или языком, который является родным для STMicroelectronics. Если я не ошибаюсь, есть восемь компаний, которые производят компиляторы для STM32, что показывает нам, что существует значительная глобальная культура в отношении этого чипа.

Я хочу вам здесь объяснить, что STMicroelectronics как минимум в четыре раза больше, чем Microchip, и производит семейство STM32. Он состоит из архитектур от очень маленьких чипов до STM32 F7, который я считаю «сверхмощным».

В нашей сборке мы используем STM32 Maple Mini, который выглядит как Arduino Nano. Однако он намного мощнее. Мы также воспользуемся Ai-Thinker Ra-01. Он отделен от радиомодуля LoRa, который будет связываться с STM32 через SPI (связь микросхемы Semtech LoRa).

Шаг 1: демонстрация

В нашем видео вы можете увидеть в сборке, что у нас есть STM32 Maple Mini, подключенный через SPI к модулю Ra-01. Эта сборка передает данные нашему «любимому» ESP32, в котором есть встроенный дисплей i2c, отображающий пакеты. Вы можете видеть, что для подготовки, отправки и получения пакета ESP32, а также для отображения на экране требуется всего 81 миллисекунда. Если расстояние увеличивается и в программном обеспечении происходят изменения, это время имеет тенденцию к увеличению.

Наша цель в этой сборке - показать STM32, который представляет собой другой чип, отправляющий данные в стандартном радиомодуле Lora. Важно помнить, что есть два разных аппаратных компонента, которые обмениваются данными по радиопротоколу LoRa.

Шаг 2: Модуль LoRa Ra-01

Модуль LoRa Ра-01
Модуль LoRa Ра-01

По сути, у нас есть микросхема Semtech LoRa с некоторыми дискретными компонентами на плате, включая антенный выход. Интерфейс - SPI. Сейчас мы должны поднять вопрос о скорости чипа, которая превышает 300 Кбит / с. Мы знаем, что LoRa не работает на этой скорости, поскольку он вращается только на 37K или меньше. Почему? Чтобы уйти далеко, нужно снизить битрейт. Важно помнить, что LoRa заботится не о скорости, а о ее возможностях. Частота этого устройства составляет 433 МГц, а мощность передачи составляет около 18 дБмВт при мощности 3v3.

Шаг 3: Maple Mini

Клен Мини
Клен Мини

Считаю это особенностью STM32. В чем разница между этим и комплектом разработки STMicroelectronics (серия STM32 L4 со сверхнизким энергопотреблением)? Комплект более мощный, но Maple Mini работает в среде Arduino IDE, что значительно упрощает задачу для тех, кто не так хорошо разбирается в программировании. Можно сказать, что Maple Mini работает как некое подобие Arduino с объемом флэш-памяти 128 КБ. Maple Mini также имеет 20 КБ оперативной памяти, USB-вход, светодиоды, кнопки, выделение для 34 входов-выходов, а также 12 16-битных ШИМ и 9 12-битных аналоговых входов.

Шаг 4: закрепление

Закрепление
Закрепление

Здесь показана распиновка Maple Mini.

Шаг 5: Установите поддержку 32-битных карт ARM

Установить поддержку 32-битных карт ARM
Установить поддержку 32-битных карт ARM

В среде Arduino IDE перейдите в Инструменты-> Плата-> Менеджер доски…

В открывшемся окне найдите Arduino SAM Boards и установите Arduino SAM Boards (32-бит ARM Cortex-M3).

Шаг 6: Библиотека Лоры

Библиотека Лоры
Библиотека Лоры

Теперь перейдите в Sketch-> Include Library-> Manage Libraries…

Найдите LoRa и установите LoRa от Sandeep Mistry

Шаг 7: SMT32 Arduino

SMT32 Arduino
SMT32 Arduino

Загрузите zip-архив с

Разархивируйте и скопируйте папку в Documents / Arduino / hardware.

Шаг 8: Сборка

сборка
сборка

Здесь вы можете увидеть, насколько проста наша схема. Подключаю через SPI модуль Ai-Thinker (LoRa) к STM32.

Шаг 9: Настройки

Настройки
Настройки

После скачивания исходников

код, доступный в конце этой статьи, вы затем переходите к сборке. Затем следуйте инструкциям на этой картинке.

Шаг 10: Код на основе ESP32 LoRa отправки и получения видео

Код на основе ESP32 LoRa отправки и получения видео
Код на основе ESP32 LoRa отправки и получения видео

Исходный код, который мы используем в этом проекте, тот же, что мы уже использовали в сборке с ESP32, на видео: ESP32 LoRa с Arduino IDE: отправка и получение TX RX, за одним исключением: у него нет дисплея. Эта часть i2C уже удалена из кода, который я скачал ниже. Чтобы узнать, как работает этот код, просто посмотрите видео.

Шаг 11: файлы

Загрузите файлы:

PDF

Я НЕТ

Рекомендуемые: