Innehållsförteckning:

Radio LoRa Ra-01 Med STM32 och ESP32: 11 steg
Radio LoRa Ra-01 Med STM32 och ESP32: 11 steg

Video: Radio LoRa Ra-01 Med STM32 och ESP32: 11 steg

Video: Radio LoRa Ra-01 Med STM32 och ESP32: 11 steg
Video: LoRa Module Ra-01 ( SX1278 ) interfacing with STM32 2024, November
Anonim
Image
Image
Demonstration
Demonstration

Eftersom detta är ett populärt ämne bland dem som följer mina inlägg, bestämde jag mig för att prata om LoRa idag. Jag kommer dock att diskutera ämnet med några nya element: den här gången utan att använda ESP32, utan STM32 istället. Jag har alltid velat skriva ett inlägg om STM32, eftersom det består av en hel familj av 32-bitars mikrokontroller producerade av STMicroelectronics. Jag har flera vänner som använder detta chip utanför Brasilien. De kan intyga framgångarna med denna europeiska tillverkningsanordning. Först ska jag introducera STM32 och även diskutera LoRa Ra-01-modulen. Dessutom kommer jag att diskutera programmering av STM32 i Arduino IDE.

Denna video visar dig ett STM32 -utvecklingssats som inte är avsett för programmering i Arduino, utan istället med C -språk eller de som är infödda i STMicroelectronics. Om jag inte har fel finns det åtta företag som producerar kompilatorer för STM32, vilket visar oss att det finns en stor global kultur kring detta chip.

Jag vill förklara för dig här att STMicroelectronics är minst fyra gånger större än Microchip, och det producerar STM32 -familjen. Den består av arkitekturer som sträcker sig från mycket små chips till STM32 F7, som jag anser vara "superkraftfull".

I vår samling använder vi en STM32 Maple Mini, som ser ut som en Arduino Nano. Det är dock mycket kraftfullare. Vi kommer också att använda Ai-Thinker Ra-01. Den är separat från LoRa -radion, som kommer att kommunicera med STM32 via SPI (kommunikationen från Semtech LoRa -chipet).

Steg 1: Demonstration

I vår video kan du se i sammansättningen att vi har STM32 Maple Mini ansluten via SPI till Ra-01-modulen. Denna enhet överför data till vår "älskade" ESP32, som har en inbäddad i2c -display som visar paketen. Du kan se att det bara tar 81 millisekunder för förberedelse, sändning och mottagning av paketet från ESP32, samt för skärmdisplayen. Om avståndet ökas och det sker en förändring i programvaran tenderar den här tiden att öka.

Vårt mål med denna samling är att visa STM32, som är ett annat chip, som skickar data i standard Lora -radio. Det är viktigt att komma ihåg att det finns två olika hårdvarustycken som pratar via LoRa -radioprotokoll.

Steg 2: LoRa-modul Ra-01

LoRa-modul Ra-01
LoRa-modul Ra-01

I grund och botten har vi här Semtech LoRa -chipet, med några diskreta komponenter på kortet, inklusive en antennutgång. Gränssnittet är SPI. För närvarande måste vi ta upp frågan om chiphastighet, som är över 300Kbps. Vi vet att LoRa inte fungerar med denna hastighet, eftersom den bara roterar med 37K eller mindre. Varför? För att gå långt måste du sänka bithastigheten. Det är viktigt att komma ihåg att hastighet inte är ett problem för LoRa, utan snarare dess omfattning. Frekvensen för denna enhet är 433MHz och överföringseffekten är cirka 18 dBm, med 3v3 effekt.

Steg 3: Maple Mini

Maple Mini
Maple Mini

Jag anser detta speciellt gällande STM32. Vad är skillnaden mellan detta och utvecklingssatsen STMicroelectronics (STM32 L4 Series ultra low power)? Satsen är kraftfullare, men Maple Mini fungerar i Arduino IDE, vilket gör det mycket lättare för dem som inte är lika kunniga när det gäller programmeringen. Vi kan säga att Maple Mini fungerar som ett slags Arduino, med en blixt på 128 KB. Maple Mini har också 20 KB RAM, USB-ingång, lysdioder, knappar, en höjdpunkt för sina 34 IO, plus 12 16-bitars PWM och 9 12-bitars analoga ingångar.

Steg 4: Fästning

Fästning
Fästning

Här visas Maple Mini Pinout.

Steg 5: Installera stöd för ARM 32bit -kort

Installera support för ARM 32bit -kort
Installera support för ARM 32bit -kort

I Arduino IDE, gå till Verktygs-> Board-> Board Manager …

I fönstret som öppnas söker du efter Arduino SAM-kort och installerar Arduino SAM-kort (32-bitars ARM Cortex-M3)

Steg 6: Lora bibliotek

Lora bibliotek
Lora bibliotek

Gå nu till Sketch-> Inkludera bibliotek-> Hantera bibliotek …

Leta efter LoRa och installera LoRa av Sandeep Mistry

Steg 7: SMT32 Arduino

SMT32 Arduino
SMT32 Arduino

Ladda ner zip -filen på

Packa upp och kopiera mappen till Documents / Arduino / hardware

Steg 8: Montering

hopsättning
hopsättning

Här kan du se hur enkelt vårt schema är. Jag ansluter via SPI Ai-Thinker-modulen (LoRa) till STM32.

Steg 9: Inställningar

inställningar
inställningar

Efter nedladdning av källan

kod, tillgänglig i slutet av denna artikel, går du sedan till byggnaden. Följ sedan stegen i den här bilden.

Steg 10: Kod baserad på ESP32 LoRa Skicka och ta emot video

Kod Baserad på ESP32 LoRa Skicka och ta emot video
Kod Baserad på ESP32 LoRa Skicka och ta emot video

Källkoden vi använder i detta projekt är densamma som vi redan har använt i en sammansättning med en ESP32, i videon: ESP32 LoRa med Arduino IDE: Send and Receive TX RX, med ett undantag: den har inte displayen. Denna del av i2C har redan tagits bort från koden som jag laddade ner nedan. För att ta reda på hur den här koden fungerar, titta helt enkelt på videon.

Steg 11: Filer

Ladda ner filerna:

PDF

INO

Rekommenderad: