Generator radijskog koda STMicroelectronics UM3399 STM32Cube WiSE
Upute za uporabu proizvoda
- Aplikacija STM32CubeWiSE-RadioCodeGenerator zahtijeva najmanje 2 Gbajta RAM-a, USB priključke i Adobe Acrobat reader 6.0.
- Ekstrahirajte sadržaj datoteke stm32wise-cgwin.zip file u privremeni direktorij.
- Pokrenite STM32CubeWiSE-RadioCodeGenerator_Vx.xxexe file i slijedite upute na zaslonu.
- SW paket STM32CubeWiSE-RadioCodeGenerator filesu organizirani u mape uključujući 'app' i 'examples'.
- Za izradu dijagrama toka u STM32CubeWiSE-RadioCodeGenerator:
- Dodajte SeqActions dijagramu toka pomoću alatne trake ili globalnog izbornika.
- Povežite SeqActions s ulaznom točkom i međusobno crtanjem strelica prijelaza radnji.
- Krećite se grafikonom toka povlačenjem radnji i dodavanjem prijelaza radnji prema potrebi.
Uvod
- Ovaj dokument opisuje softverski paket STM32CubeWiSE-RadioCodeGenerator (STM32CubeWiSEcg) s generatorom koda sekvencera STM32WL3x MRSUBG.
- STM32CubeWiSE-RadioCodeGenerator je PC aplikacija koja se koristi za izradu dijagrama toka koji definira koje radnje primopredajnika treba izvršiti pod kojim uvjetima, koristeći MRSUBG upravljački program sekvencera.
- Sub-GHz radio STM32WL3x sadrži ovaj sekvencer, koji je mehanizam nalik državnom stroju koji omogućuje autonomno upravljanje RF prijenosima, bez potrebe za CPU intervencijom.
- Ako je potrebna CPU intervencija, mogu se definirati prekidi. Radnje primopredajnika mogu se rasporediti u dijagram toka. U ovom dokumentu pojedinačne radnje primopredajnika nazivaju se SeqActions.
- Međutim, izvorni kod nije najbolji prikaz za dijagrame toka, budući da skriva njihovu logičku i vremensku strukturu.
- STM32CubeWiSE-RadioCodeGenerator rješava ovaj problem pružanjem grafičke metode za izradu dijagrama toka i zatim izvozom generiranih dijagrama toka kao C izvornog koda za integraciju u korisničke aplikacije.
- Definicija dijagrama toka pohranjuje se u RAM mikrokontrolera u obliku:
- Skup ActionConfiguration RAM tablica, međusobno povezanih pomoću pokazivača. Ovi pokazivači definiraju SeqActions, odnosno vrstu akcije (nprample, prijenos, prijem, prekid), kao i radijske parametre specifične za SeqAction i uvjete za radnje prijenosa.
- Jedinstvena tablica GlobalConfiguration RAM. Ovo definira ulaznu točku dijagrama toka (prva SeqAction koja se izvršava), kao i neke zadane vrijednosti zastavica i uobičajene radio parametre.
- Radio parametri, koji se mogu konfigurirati pojedinačno za svaku SeqAction, pohranjuju se u jedan od dinamičkih registara, čiji je sadržaj dio ActionConfiguration RAM tablice. Radio parametri koji su fiksni tijekom cijelog izvođenja dijagrama toka (osim ako nisu modificirani tijekom CPU prekida), pohranjuju se u statičke registre, čiji je sadržaj dio globalne konfiguracijske RAM tablice.
Opće informacije
Licenciranje
Ovaj dokument opisuje softver koji radi na STM32WL3x Arm® Cortex ® -M0+ mikrokontroleru.
Bilješka: Arm je registrirani zaštitni znak tvrtke Arm Limited (ili njenih podružnica) u SAD -u i/ili drugdje.
Povezani dokumenti
Tablica 1. Reference dokumenata
Broj | Referenca | Titula |
[1] | RM0511 | STM32WL30xx/31xx/33xx Arm® pod-GHz MCU-ovi |
Početak rada
- Ovaj odjeljak opisuje sve sistemske zahtjeve za pokretanje STM32CubeWiSE-RadioCodeGenerator.
- Također opisuje postupak instalacije softverskog paketa.
Zahtjevi sustava
Aplikacija STM32CubeWiSE-RadioCodeGenerator ima sljedeće minimalne zahtjeve:
- Računalo s Intel® ili AMD® procesorom s operativnim sustavom Microsoft® Windows 10
- Najmanje 2 Gbajta RAM-a
- USB priključci
- Adobe Acrobat reader 6.0
Postavljanje SW paketa STM32CubeWiSE-RadioCodeGenerator
Izvršite sljedeće korake:
- Ekstrahirajte sadržaj datoteke stm32wise-cgwin.zip file u privremeni direktorij.
- Ekstrahirajte i pokrenite STM32CubeWiSE-RadioCodeGenerator_Vx.xxexe file i slijedite upute na zaslonu.
STM32CubeWiSE-RadioCodeGenerator SW paket files
SW paket STM32CubeWiSE-RadioCodeGenerator fileorganizirani su u sljedeće mape:
- aplikacija: sadrži STM32CubeWiSE-RadioCodeGenerator.exe
- exampdatoteke: ova je mapa organizirana u sljedeće podmape:
- kod: ova mapa sadrži dijagrame toka nprampveć izvezen kao C kod, spreman za ubacivanje u projekt aplikacije
- flowgraphs: ova mapa pohranjuje neke examples scenariji autonomnih operacija sekvencera MRSUBG
Bilješke o izdanju i licenca files nalaze se u korijenskoj mapi.
Opis softvera STM32CubeWiSE-RadioCodeGenerator
- Ovaj odjeljak opisuje glavne funkcije aplikacije STM32CubeWiSE-RadioCodeGenerator. Za pokretanje ovog uslužnog programa kliknite na ikonu STM32CubeWiSE-RadioCodeGenerator.
Nakon pokretanja STM32CubeWiSE-RadioCodeGenerator, pojavljuje se glavni prozor aplikacije. Sastoji se od:
- Globalni izbornik i alatna traka
- Vizualni povuci i ispusti prikaz dijagrama toka
- Konfiguracijski odjeljak SeqAction (vidljiv samo ako se SeqAction trenutno uređuje)
Izgradnja dijagrama toka
Osnove
Dijagrami toka izrađuju se u dva koraka:
- Dodajte SeqActions dijagramu toka. To se može učiniti pomoću gumba "Dodaj radnju" na alatnoj traci, korištenjem globalnog izbornika (Uredi → Dodaj radnju) ili prečacem "Ctrl+A".
- Povežite SeqActions s ulaznom točkom i međusobno crtanjem strelica prijelaza radnji.
Uvjeti pod kojima se ti prijelazi događaju definirani su kasnije (vidi Odjeljak 3.2.1: Upravljački tok).
Navigacija dijagramom toka, akcije povlačenja
Povlačenjem pozadine šahovnice dijagrama toka pokazivačem miša (lijevi klik), viewpriključak na dijagramu toka može se prilagoditi. Kotačić miša može se koristiti za povećavanje i smanjivanje. Klikom bilo gdje na radnju (osim izlaznih priključaka, gumba za brisanje i gumba za uređivanje) za odabir radnje. Akcije se mogu organizirati u dijagramu toka povlačenjem lijevom tipkom miša.
Dodavanje prijelaza radnji
- Kao što je prikazano na slici 2, svaka akcija ima dva "izlazna priključka", nazvana NextAction1 (NA1) i NextAction2 (NA2), koji se mogu povezati sa SeqActions koje se izvršavaju nakon što je radnja dovršena. Na primjerample, NextAction1 bi se mogla koristiti za izvršenje neke radnje ako je trenutna radnja bila uspješna, a NextAction2 bi se mogla pokrenuti u slučaju neuspjeha.
- Za stvaranje prijelaza radnje, postavite pokazivač miša iznad jednog od izlaznih priključaka, pritisnite lijevu tipku miša i pomaknite pokazivač miša da povučete strelicu prijelaza. Pomaknite pokazivač miša preko ulaznog priključka s lijeve strane neke druge SeqAction i otpustite lijevu tipku miša kako bi veza postala trajna. Da biste uklonili prijelaz radnje, samo ponovite korake za stvaranje prijelaza radnje, ali otpustite lijevu tipku miša negdje iznad pozadine šahovnice.
- Ako izlaz (NextAction1, NextAction2) ostane nepovezan, sekvencer se prekida ako se ova sljedeća radnja pokrene.
- Obavezno također spojite “Entry Point” na ulazni priključak nekog SeqAction-a. Ova SeqAction je prva koja se izvršava čim se sekvencer pokrene.
Radnje uređivanja i brisanja
- SeqAction se može uređivati klikom na gumb olovke u gornjem lijevom kutu SeqActiona. Može se izbrisati klikom na crveni križ u gornjem desnom kutu (vidi sliku 3). Brisanjem SeqAction također se uklanjaju svi dolazni i odlazni prijelazi radnji.
SeqAction konfiguracija
SeqActions se mogu konfigurirati putem konfiguracijskog sučelja s karticama dostupnog putem gumba olovke u gornjem lijevom kutu svake akcije u dijagramu toka. Ovo sučelje u biti konfigurira sadržaj ActionConfiguration RAM tablice za određenu akciju, koja se sastoji od opcija konfiguracije vezanih uz kontrolni tok kao i dinamičkog sadržaja registra. Sadržaj dinamičkog registra može se konfigurirati ručno uz potpunu kontrolu nad svakom vrijednošću registra (vidi Odjeljak 3.2.3: Napredna konfiguracija radija) ili putem pojednostavljenog sučelja (vidi Odjeljak 3.2.2: Osnovna konfiguracija radija). Pojednostavljeno sučelje trebalo bi biti dovoljno za gotovo sve slučajeve upotrebe.
Kontrola protoka
Kartica tijeka kontrole (vidi sliku 4) sadrži neke osnovne opcije konfiguracije kao što su naziv radnje i interval isteka radnje. Naziv radnje ne koristi se samo za prikaz u dijagramu toka, već se također prenosi na generirani izvorni kod.
- Kartica tijeka kontrole (vidi sliku 4) sadrži neke osnovne opcije konfiguracije kao što su naziv radnje i interval isteka radnje. Naziv radnje ne koristi se samo za prikaz u dijagramu toka, već se prenosi i na generirani izvorni kod.
- Ono što je najvažnije, kartica toka kontrole konfigurira uvjet o kojem ovisi prijelaz na NextAction1 / NextAction2, kao i interval prijelaza i oznake. Uvjet prijelaza može se konfigurirati klikom na gumb s oznakom “…”, čime se pojavljuje dijaloški okvir za odabir maske prikazan na slici 5. Interval prijelaza promijenio je svojstvo NextAction1Interval / NextAction2Interval RAM tablice. Više informacija o značenju ovog intervala i važnosti oznaka SleepEn / ForceReload / ForceClear potražite u referentnom priručniku STM32WL3x [1].
- Nadalje, na ovoj kartici može se dodati kratki opis bloka SeqAction. Ovaj opis se koristi samo u svrhu dokumentacije i prenosi se na generirani izvorni kod kao komentar izvornog koda.
Osnovna radijska konfiguracija
Kartica osnovne konfiguracije radija može se podijeliti u tri dijela:
- Odjeljak na vrhu gdje su konfigurirana dva najvažnija parametra bilo koje radnje: naredba za izvršenje (TX, RX, NOP, SABORT itd.) i, ako je primjenjivo, duljina paketa za prijenos.
- Odjeljak s lijeve strane u kojem se konfiguriraju stvarni radijski parametri kao što su: frekvencija nositelja, brzina prijenosa podataka, svojstva modulacije, pragovi međuspremnika podataka i mjerači vremena.
- Odjeljak s desne strane gdje se CPU prekidi mogu pojedinačno omogućiti. Rukovatelj prekida generira se za svaki od označenih prekida. Ovo u osnovi konfigurira sadržaj registra RFSEQ_IRQ_ENABLE.
Pogledajte referentni priručnik STM32WL3x [1] za značenje različitih radijskih parametara.
Napredna radijska konfiguracija
- Ako mogućnosti konfiguracije izložene kroz karticu osnovne radijske konfiguracije (odjeljak 3.2.2: Osnovna konfiguracija radija) nisu dovoljne, kartica napredne konfiguracije radija STM32WL3x omogućuje postavljanje proizvoljnog dinamičkog sadržaja registra. Kartica napredne konfiguracije je omogućena označavanjem potvrdnog okvira Napredna konfiguracija u gornjem desnom kutu konfiguracijskog sučelja s karticama.
- Nije moguće koristiti osnovnu i naprednu konfiguraciju u isto vrijeme, korisnik mora odabrati jednu ili drugu. Međutim, moguće je naknadno ručno urediti generirani izvorni kod i dodati konfiguracijske opcije koje potencijalno nedostaju.
Dijalog globalne konfiguracije
- Dijaloškom okviru "Globalne postavke projekta" može se pristupiti putem gumba na alatnoj traci "Globalne postavke". Dijaloški okvir sadrži opcije konfiguracije za sadržaj statičkog registra kao i dodatne postavke projekta. Imajte na umu da se samo mali dio opcija konfiguracije statičkih registara može konfigurirati kroz ovaj dijalog. Ove su opcije dostupne samo za ubrzavanje aplikacija za izradu prototipova aplikacija pomoću STM32CubeWiSE-RadioCodeGenerator.
- Obično se očekuje da je sadržaj statičkog registra postavljen u ručno napisanom izvornom kodu aplikacije.
- Značenje ostalih postavki projekta objašnjeno je u samom dijaloškom okviru.
- Dodatni C kod koji je umetnut neposredno prije kreiranja RAM tablice globalne konfiguracije iz sadržaja statičkog registra također se može osigurati. Ovo polje se može koristiti za postavljanje vrijednosti statičkih registara kojima se ne može pristupiti kroz danu konfiguracijsku masku statičkih registara.
Generiranje koda
Grafikon toka može se prevesti u potpuni izvorni kod projekta C pritiskom na gumb Generiraj kod na alatnoj traci. Generirana mapa projekta ne sadrži projekt files za IAR, Keil® ili GCC. ove filemoraju se dodati ručno u STMWL3x projekt.
Ovo je generirana struktura mape projekta:
Mapa projekta
- inc
- SequencerFlowgraph.h: zaglavlje file za SequencerFlowgraph.c, statički. Nemojte ovo uređivati.
- stm32wl3x_hal_conf.h: STM32WL3x HAL konfiguracija file, statičan.
- src
- SequencerFlowgraph.c: definicija grafa toka. Ovo je važno file koji koristi upravljački program sekvencera za definiranje RAM tablica globalne konfiguracije i konfiguracije radnji. Automatski generirano, nemojte uređivati.
- glavni.c: Glavni projekt file koji pokazuje kako učitati i primijeniti definiciju grafa toka. Statično, izmijenite ovo prema potrebi.
- Za uređivanje main.c ili stm32wl3x_hal_conf.h odaberite ponašanje prepisivanja Zadrži u postavkama projekta. Na ovaj način samo SequencerFlowgraph.c biva prebrisan.
Kako uvesti generirani kod u CubeMX example
Za uvoz projekta koji je generirao STM32CubeWiSE-RadioCodeGenerator u CubeMX example (MRSUBG_Skeleton), potrebno je slijediti sljedeće korake:
- Otvorite mapu koja sadrži filegenerira STM32CubeWiSE-RadioCodeGenerator i kopirajte mape “Inc” i “Src”.
- Zalijepite dvije mape u mapu “MRSUBG_Skeleton” prepisujući dvije koje već postoje.
- Otvorite projekt “MRSUBG_Skeleton” u jednom od sljedećih IDE-a:
- EWARM
- MDK-ARM
- STM32CubeIDE
- Unutar projekta “MRSUBG_Skeleton” dodajte “SequencerFlowghraph.c” file:
- Za EWARM projekt, staza za dodavanje file je sljedeće: MRSUBG_Skeleton\Application\User
- Za MDK-ARM projekt, staza za dodavanje file je sljedeće: MRSUBG_Skeleton\Application/User
- Za STM32CubeIDE projekt, staza za dodavanje file je isto:
MRSUBG_Skeleton\Application\User
- Za EWARM projekt, staza za dodavanje file je sljedeće: MRSUBG_Skeleton\Application\User
- Unutar projekta MRSUBG_Skeleton dodajte stm32wl3x_hal_uart.c i stm32wl3x_hal_uart_ex.c files na sljedeću stazu: MRSUBG_Skeleton\Drivers\STM32WL3x_HAL_Driver. Put je isti za sve IDE. Dva filenalaze se na Firmware\Drivers\STM32WL3x_HAL_Driver\Src.
- Za korištenje COM značajki, stm32wl3x_nucleo_conf.h file, koji se nalazi na Firmware\Projects\NUCLEOWL33CC\ Examples\MRSUBG\MRSUBG_Skeleton\Inc, mora se modificirati postavljanjem USE_BSP_COM_FEATURE i USE_COM_LOG na 1U:
- Kopirajte sljedeći kod u “stm32wl3x_it.c”, koji se nalazi u MRSUBG_Skeleton\Application\User.
Dijagram toka pramples
- Četiri exampdijagrami toka dani su uz izvorni kod. Ovi bivšiampdatoteke se mogu učitati u STM32CubeWiSE-RadioCodeGenerator klikom na gumb "Učitaj" na alatnoj traci.
AutoACK_RX
- Auto-ACK demonstracija ilustrira kako dva STM32WL3x uređaja mogu automatski komunicirati jedan s drugim uz minimalnu CPU intervenciju, uz pomoć hardvera sekvencera.
- Ovaj dijagram toka implementira ponašanje (Auto-Transmit-ACK) uređaja A. U uređaju A, sekvencer se inicijalizira u stanju primanja (WaitForMessage), u kojem čeka da poruka stigne.
- Nakon što stigne važeća poruka, sekvencer automatski prelazi u stanje prijenosa (TransmitACK), u kojem se ACK paket šalje kao odgovor, bez CPU intervencije. Kada se ovo završi, sekvencer se vraća u početno stanje WaitForMessage.
- Ovaj dijagram toka implementira isto ponašanje kao MRSUBG_SequencerAutoAck_Rx example iz Exampmapa les\MRSUBG softverskog paketa STM32Cube WL3. Ako je AutoACK_RX flashiran na jednom uređaju
A, i AutoACK_TX se bljesne na nekom uređaju, B, dva uređaja šalju poruke naprijed-natrag, kao u igrici stolnog tenisa.
AutoACK_TX
- Demonstracija "Auto-ACK" ilustrira kako dva STM32WL3x uređaja mogu automatski komunicirati jedan s drugim uz minimalnu CPU intervenciju uz pomoć hardvera sekvencera.
- Ovaj dijagram toka implementira ponašanje ("Auto-Wait-for-ACK") uređaja B. U uređaju B, sekvencer se inicijalizira u stanju prijenosa (TransmitMessage), u kojem prenosi poruku. Nakon što je prijenos završen, automatski prelazi u stanje primanja u kojem čeka potvrdu od uređaja A (WaitForACK). Nakon što stigne valjana potvrda, sekvencer se vraća u početno stanje TransmitMessage i cijeli proces počinje iznova. U slučaju da se ACK ne primi unutar 4 sekunde, pokreće se vremensko ograničenje i sekvencer se svejedno vraća u stanje TransmitMessage.
- Ovaj dijagram toka implementira isto ponašanje kao "MRSUBG_SequencerAutoAck_Tx" example iz Exampmapa les\MRSUBG softverskog paketa STM32Cube WL3. Ako je AutoACK_RX bljesnut na jednom uređaju, A, a AutoACK_TX je bljesnut na nekom drugom uređaju, B, dva uređaja šalju poruke naprijed-natrag, kao u igri stolnog tenisa.
Slušajte prije razgovora (LBT)
- Ovaj bivšiampdatoteka je preuzeta iz referentnog priručnika STM32WL3x [1]. Pogledajte taj priručnik za daljnje pojedinosti o ovom prample.
Način njuškanja
- Ovaj bivšiampdatoteka je preuzeta iz referentnog priručnika STM32WL3x [1]. Pogledajte taj priručnik za daljnje pojedinosti o ovom prample.
Povijest revizija
Tablica 2. Povijest revizija dokumenta
Datum | Verzija | Promjene |
21. studenoga 2024 | 1 | Početno izdanje. |
10. veljače 2025 | 2 | Ažuriran naziv uređaja za opseg STM32WL3x. |
VAŽNA OBAVIJEST – PAŽLJIVO PROČITAJTE
- STMicroelectronics NV i njegove podružnice ("ST") zadržavaju pravo izmjene, ispravke, poboljšanja, preinake i poboljšanja ST proizvoda i/ili ovog dokumenta u bilo koje vrijeme bez prethodne najave. Kupci bi trebali dobiti najnovije relevantne informacije o ST proizvodima prije narudžbe. Proizvodi ST-a prodaju se u skladu s odredbama i uvjetima prodaje ST-a koji su na snazi u trenutku potvrde narudžbe.
- Kupci su isključivo odgovorni za izbor, izbor i korištenje ST proizvoda i ST ne preuzima nikakvu odgovornost za pomoć pri primjeni ili dizajn proizvoda kupaca.
- ST ovdje ne daje nikakvu licencu, izričitu ili implicitnu, za bilo koje pravo intelektualnog vlasništva.
- Preprodaja ST proizvoda s odredbama različitim od ovdje navedenih informacija poništit će svako jamstvo koje je ST dao za takav proizvod.
- ST i ST logo su zaštitni znakovi tvrtke ST. Dodatne informacije o zaštitnim znakovima ST potražite na www.st.com/trademarks. Svi ostali nazivi proizvoda ili usluga vlasništvo su njihovih vlasnika.
- Informacije u ovom dokumentu nadziru i zamjenjuju informacije prethodno navedene u bilo kojoj od prethodnih verzija ovog dokumenta.
- © 2025 STMicroelectronics – Sva prava pridržana
FAQ
- P: Koji su minimalni sistemski zahtjevi za STM32CubeWiSE-RadioCodeGenerator?
- A: Minimalni sistemski zahtjevi uključuju najmanje 2 Gbajta RAM-a, USB priključke i Adobe Acrobat Reader 6.0.
- P: Kako mogu postaviti softverski paket STM32CubeWiSE-RadioCodeGenerator?
- A: Za postavljanje softverskog paketa, izdvojite sadržaj priloženog zip-a file u privremeni direktorij i pokrenite izvršnu datoteku file slijedeći upute na zaslonu.
Dokumenti / Resursi
![]() |
Generator radijskog koda STMicroelectronics UM3399 STM32Cube WiSE [pdf] Korisnički priručnik UM3399, UM3399 STM32 Cube WiSE Radio Generator koda, UM3399, STM32, Cube WiSE Radio Generator koda, Radio Generator koda, Generator koda, Generator |