Cuprins:

Radio LoRa Ra-01 Cu STM32 și ESP32: 11 pași
Radio LoRa Ra-01 Cu STM32 și ESP32: 11 pași

Video: Radio LoRa Ra-01 Cu STM32 și ESP32: 11 pași

Video: Radio LoRa Ra-01 Cu STM32 și ESP32: 11 pași
Video: Ra-02 LoRa module (SX1278) driver with STM32 using HAL 2024, Noiembrie
Anonim
Image
Image
Demonstrație
Demonstrație

Deoarece acesta este un subiect popular printre cei care urmăresc postările mele, am decis să vorbesc despre LoRa astăzi. Cu toate acestea, voi discuta subiectul cu câteva elemente noi: de data aceasta fără a folosi ESP32, ci STM32 în schimb. Întotdeauna am vrut să postez despre STM32, deoarece compune o întreagă familie de microcontrolere pe 32 de biți produse de STMicroelectronics. Am câțiva prieteni care folosesc acest cip în afara Braziliei. Ele pot atesta succesele acestui dispozitiv de fabricație european. În primul rând, voi introduce STM32 și voi discuta despre modulul LoRa Ra-01. În plus, voi discuta despre programarea STM32 în Arduino IDE.

Acest videoclip vă va arăta un kit de dezvoltare STM32 care nu este destinat programării în Arduino, ci în schimb cu limbajul C sau cele care sunt native pentru STMicroelectronics. Dacă nu mă înșel, există opt companii care produc compilatoare pentru STM32, ceea ce ne arată că există o cultură globală considerabilă în ceea ce privește acest cip.

Vreau să vă explic aici că STMicroelectronics este de cel puțin patru ori mai mare decât Microchip și produce familia STM32. Se compune din arhitecturi care variază de la cipuri foarte mici până la STM32 F7, pe care le consider a fi „super puternic”.

În ansamblul nostru, folosim un STM32 Maple Mini, care arată ca un Arduino Nano. Cu toate acestea, este mult mai puternic. De asemenea, vom folosi Ai-Thinker Ra-01. Este separat de radioul LoRa, care va comunica cu STM32 prin SPI (comunicarea cipului Semtech LoRa).

Pasul 1: demonstrație

În videoclipul nostru, puteți vedea în ansamblu că avem STM32 Maple Mini conectat prin SPI la modulul Ra-01. Acest ansamblu transmite datele către „iubitul” nostru ESP32, care are un afișaj i2c încorporat care afișează pachetele. Puteți vedea că durează doar 81 de milisecunde pentru pregătirea, trimiterea și primirea pachetului de către ESP32, precum și pentru afișarea pe ecran. Dacă distanța este mărită și există o modificare a software-ului, acest timp tinde să crească.

Scopul nostru cu acest ansamblu este de a arăta STM32, care este un cip diferit, care trimite date în radioul standard Lora. Este important să ne amintim că există două piese hardware diferite care vorbesc prin protocolul radio LoRa.

Pasul 2: Modulul LoRa Ra-01

Modulul LoRa Ra-01
Modulul LoRa Ra-01

Practic, avem aici cipul Semtech LoRa, cu câteva componente discrete pe placă, inclusiv o ieșire de antenă. Interfața este SPI. În acest moment, trebuie să punem problema vitezei cipului, care este peste 300Kbps. Știm că LoRa nu funcționează la această viteză, deoarece se rotește doar la 37K sau mai puțin. De ce? Pentru a merge departe, trebuie să reduceți rata de biți. Este important să ne amintim că viteza nu este o preocupare a LoRa, ci mai degrabă scopul său. Frecvența acestui dispozitiv este de 433MHz, iar puterea de transmisie este de aproximativ 18 dBm, cu o putere de 3v3.

Pasul 3: Maple Mini

Maple Mini
Maple Mini

Consider acest lucru special în ceea ce privește STM32. Care este diferența dintre acest lucru și kitul de dezvoltare STMicroelectronics (puterea ultra scăzută a seriei STM32 L4)? Kitul este mai puternic, dar Maple Mini funcționează în Arduino IDE, ceea ce îl face mult mai ușor pentru cei care nu sunt la fel de cunoscuți în ceea ce privește programarea. Putem spune că Maple Mini funcționează ca un fel de Arduino, cu un Flash de 128 KB. Maple Mini are, de asemenea, 20 KB de memorie RAM, intrare USB, LED-uri, butoane, un punct culminant pentru cele 34 IO-uri, plus 12 PWM-uri pe 16 biți și 9 intrări analogice pe 12 biți.

Pasul 4: fixare

Fixare
Fixare

Aici este prezentat Maple Mini Pinout.

Pasul 5: Instalați suportul pentru cardurile ARM pe 32 de biți

Instalați asistență pentru carduri ARM pe 32 de biți
Instalați asistență pentru carduri ARM pe 32 de biți

În IDE-ul Arduino, accesați Instrumente-> Board-> Board Manager …

În fereastra care se deschide, căutați plăcile Arduino SAM și instalați plăcile Arduino SAM (32-bit ARM Cortex-M3)

Pasul 6: Biblioteca Lora

Biblioteca Lora
Biblioteca Lora

Acum accesați Schiță-> Includeți bibliotecă-> Gestionați bibliotecile …

Căutați LoRa și instalați LoRa de Sandeep Mistry

Pasul 7: SMT32 Arduino

SMT32 Arduino
SMT32 Arduino

Descărcați fișierul zip la

Dezarhivați și copiați folderul în Documente / Arduino / hardware

Pasul 8: Asamblare

Asamblare
Asamblare

Aici puteți vedea cât de simplă este schema noastră. Conectez prin SPI modulul Ai-Thinker (LoRa) la STM32.

Pasul 9: Setări

Setări
Setări

După descărcarea sursei

cod, disponibil la sfârșitul acestui articol, apoi accesați versiunea de construire. Apoi, urmați pașii din această imagine.

Pasul 10: Cod pe baza ESP32 LoRa Trimite și primește video

Cod bazat pe ESP32 LoRa Send and Receive Video
Cod bazat pe ESP32 LoRa Send and Receive Video

Codul sursă pe care îl folosim în acest proiect este același pe care l-am folosit deja într-un ansamblu cu un ESP32, în videoclip: ESP32 LoRa cu Arduino IDE: Trimiteți și primiți TX RX, cu o singură excepție: nu are afișajul. Această parte a i2C a fost deja eliminată din codul pe care l-am descărcat mai jos. Pentru a afla cum funcționează acest cod, pur și simplu urmăriți videoclipul.

Pasul 11: Fișiere

Descărcați fișierele:

PDF

EU NU

Recomandat: