STMicroelectronics UM3399 STM32Cube WiSE Радио генератор на код
Упатство за употреба на производот
- Апликацијата STM32CubeWiSE-RadioCodeGenerator бара најмалку 2 Gbytes RAM меморија, USB порти и Adobe Acrobat reader 6.0.
- Извлечете ја содржината на stm32wise-cgwin.zip file во привремен директориум.
- Стартувајте го STM32CubeWiSE-RadioCodeGenerator_Vx.xxexe file и следете ги упатствата на екранот.
- Пакетот STM32CubeWiSE-RadioCodeGenerator SW files се организирани во папки вклучувајќи „app“ и „examples'.
- За да изградите график на тек во STM32CubeWiSE-RadioCodeGenerator:
- Додадете SeqActions на графикот на текови користејќи ја лентата со алатки или глобалното мени.
- Поврзете ги SeqActions со влезната точка и едни со други со цртање стрелки за транзиција на акција.
- Навигирајте го графикот на проток со влечење дејства и додавање транзиции на дејства по потреба.
Вовед
- Овој документ го опишува пакетот SW STM32CubeWiSE-RadioCodeGenerator (STM32CubeWiSEcg) со генератор на код за секвенционер STM32WL3x MRSUBG.
- STM32CubeWiSE-RadioCodeGenerator е апликација за компјутер што се користи за да се изгради графикон на тек кој дефинира кои дејства на трансиверот да се извршат под кои услови, користејќи го двигателот на секвенционерот MRSUBG.
- STM32WL3x Sub-GHz радиото го содржи овој секвенсер, кој е механизам сличен на машината што овозможува автономно управување со преносите на RF, без никаква потреба од интервенција на процесорот.
- Доколку е потребна интервенција на процесорот, може да се дефинираат прекини. Дејствата на трансиверот може да се подредат во графикон на проток. Во овој документ, поединечните дејства на трансиверот се нарекуваат SeqActions.
- Сепак, изворниот код не е најдоброто претставување за текови, бидејќи ја прикрива нивната логичка и временска структура.
- STM32CubeWiSE-RadioCodeGenerator го решава ова прашање со обезбедување графички метод за градење текови и потоа извезување на генерираните графикони на текови како изворен код C за интеграција во кориснички апликации.
- Дефиницијата на протокот е зачувана во RAM меморијата на микроконтролерот во форма на:
- Збир на табели за RAM меморија ActionConfiguration, поврзани една со друга со помош на покажувачи. Овие покажувачи ги дефинираат SeqActions, односно типот на дејство (на прample, пренос, прием, прекин), како и радио параметри и услови специфични за SeqAction за акциски преноси.
- Единствена табела за глобална конфигурација на RAM меморија. Ова ја дефинира влезната точка на графикот на проток (првиот SeqAction што треба да се изврши), како и некои стандардни вредности на знаменцето и вообичаените радио параметри.
- Радио параметрите, кои може да се конфигурираат поединечно за секоја SeqAction, се зачувуваат во еден од динамичките регистри, чија содржина е дел од табелата ActionConfiguration RAM меморија. Радио параметрите кои се фиксирани во текот на целото извршување на графикот на проток (освен ако не се изменети за време на прекин на процесорот), се зачувуваат во статички регистри, чија содржина е дел од глобалната конфигурациска табела RAM меморија.
Општи информации
Лиценцирање
Овој документ го опишува софтверот што работи на микроконтролерот базиран на STM32WL3x Arm® Cortex® -M0+.
Забелешка: Arm е регистрирана трговска марка на Arm Limited (или нејзините подружници) во САД и/или на друго место.
Поврзани документи
Табела 1. Референци за документи
Број | Референца | Наслов |
[1] | RM0511 | STM32WL30xx/31xx/33xx Arm® базирани на под-GHz MCU |
Почеток
- Овој дел ги опишува сите системски барања за извршување на STM32CubeWiSE-RadioCodeGenerator.
- Таа, исто така, ја детализира процедурата за инсталирање на софтверски пакет.
Системски барања
Апликацијата STM32CubeWiSE-RadioCodeGenerator ги има следните минимални барања:
- Компјутер со Intel® или AMD® процесор кој работи на оперативниот систем Microsoft® Windows 10
- Најмалку 2 Gbytes RAM меморија
- USB порти
- Adobe Acrobat reader 6.0
Поставување пакет STM32CubeWiSE-RadioCodeGenerator SW
Направете ги следните чекори:
- Извлечете ја содржината на stm32wise-cgwin.zip file во привремен директориум.
- Извадете и стартувајте го STM32CubeWiSE-RadioCodeGenerator_Vx.xxexe file и следете ги упатствата на екранот.
STM32CubeWiSE-RadioCodeGenerator SW пакет files
Пакетот STM32CubeWiSE-RadioCodeGenerator SW files се организирани во следните папки:
- апликација: содржи STM32CubeWiSE-RadioCodeGenerator.exe
- examples: оваа папка е организирана во следните подпапки:
- код: оваа папка ги содржи графиконите на текови на прampВеќе е извезен како C код, подготвен за инјектирање во проект за апликација
- flowgraphs: оваа папка складира некои прamples сценарија на автономни операции на секвенсер на MRSUBG
Белешки за издавање и лиценца files се наоѓаат во root фолдерот.
Опис на софтверот STM32CubeWiSE-RadioCodeGenerator
- Овој дел ги опишува главните функции на апликацијата STM32CubeWiSE-RadioCodeGenerator. За да ја извршите оваа алатка, кликнете на иконата STM32CubeWiSE-RadioCodeGenerator.
По стартувањето на STM32CubeWiSE-RadioCodeGenerator, се појавува главниот прозорец на апликацијата. Се состои од:
- Глобално мени и лента со алатки
- Визуелното влечење и спуштање на графикот на текови
- Делот за конфигурација на SeqAction (видлив само ако SeqAction моментално се уредува)
Изградба на флуограф
Основи
Тековните графикони се изградени во два чекори:
- Додадете SeqActions на графикот на текови. Ова може да се направи со помош на копчето „Додај дејство“ во лентата со алатки, со користење на глобалното мени (Уреди → Додај дејство) или со кратенката „Ctrl+A“.
- Поврзете ги SeqActions со влезната точка и едни со други со цртање стрелки за транзиција на акција.
Условите под кои се случуваат овие транзиции се дефинирани подоцна (види Дел 3.2.1: Контролен проток).
Навигација низ графикот на проток, влечење дејства
Со влечење на позадината на шаховска табла на флографот со покажувачот на глувчето (лев клик), viewможе да се прилагоди пристаништето на флуографот. Тркалото за лизгање на глувчето може да се користи за да зумирате и одзумирате. Со кликнување каде било на дејство (освен за излезните порти, копчето за бришење и копчето за уредување) за да изберете дејство. Дејствата може да се подредат во графикот на тек со влечење со левото копче на глувчето.
Додавање акциски транзиции
- Како што е прикажано на слика 2, секое дејство има две „излезни порти“, наречени NextAction1 (NA1) и NextAction2 (NA2), кои можат да се поврзат со SeqActions што се извршуваат по завршувањето на дејството. За прample, NextAction1 може да се користи за извршување на некоја акција ако тековното дејство е успешно и NextAction2 може да се активира во случај на неуспех.
- За да креирате акциона транзиција, поставете го покажувачот на глувчето над една од излезните порти, притиснете го левото копче на глувчето и поместете го покажувачот на глувчето за да влечете стрелка за транзиција. Поместете го покажувачот на глувчето над влезната порта лево од некое друго SeqAction и отпуштете го левото копче на глувчето за да ја направите врската трајна. За да отстраните акциона транзиција, само повторете ги чекорите за создавање акциона транзиција, но отпуштете го левото копче на глувчето некаде над позадината на шаховска табла.
- Ако излезот (NextAction1, NextAction2) остане неповрзан, секвенционерот завршува ако се активира следното дејство.
- Погрижете се да ја поврзете и „Влезната точка“ со влезната порта на некоја SeqAction. Овој SeqAction е првиот што се извршува веднаш штом се активира секвенционерот.
Уредување и бришење дејства
- SeqActions може да се уредуваат со кликнување на копчето со молив во горниот лев агол на SeqAction. Може да се избрише со кликнување на црвениот крст во горниот десен агол (види слика 3). Бришењето на SeqAction ги отстранува и сите дојдовни и појдовни транзиции на дејства.
Конфигурација на SeqAction
SeqActions може да се конфигурираат преку конфигурациски интерфејс со јазичиња достапен преку копчето со молив горе лево од секое дејство во графикот на текови. Овој интерфејс во суштина ја конфигурира содржината на табелата ActionConfiguration RAM за одредена акција, која се состои од опции за конфигурација поврзани со контролниот тек, како и од содржината на динамичкиот регистар. Содржината на динамичкиот регистер може да се конфигурира рачно со целосна контрола врз секоја вредност на регистерот (види Дел 3.2.3: Напредна конфигурација на радио) или преку поедноставен интерфејс (види Дел 3.2.2: Основна радио конфигурација ). Поедноставениот интерфејс треба да биде доволен за речиси сите случаи на употреба.
Контролирајте го протокот
Јазичето за контролен тек (види Слика 4) содржи некои основни опции за конфигурација како што се име на дејство и интервал на истек на дејство. Името на дејството не се користи само за прикажување во графикот на проток, туку исто така се пренесува на генерираниот изворен код.
- Јазичето за контролен тек (види Слика 4) содржи некои основни опции за конфигурација како што се име на дејство и интервал на истек на дејство. Името на дејството не се користи само за прикажување во графикот на текови, туку и се пренесува на генерираниот изворен код.
- Што е најважно, јазичето за контролен тек ја конфигурира состојбата од која зависи преминот кон NextAction1 / NextAction2, како и интервалот на транзиција и знаменцата. Состојбата на транзиција може да се конфигурира со кликнување на копчето означено со „…“, со што се појавува дијалогот за избор на маска прикажан на Слика 5. Преодниот интервал го измени својството NextAction1Interval / NextAction2Interval на табелата RAM. Погледнете во упатството за референци STM32WL3x [1] за повеќе информации за значењето на овој интервал и значењето на знаменцата SleepEn / ForceReload / ForceClear.
- Понатаму, на овој таб може да се додаде краток опис на блокот SeqAction. Овој опис се користи само за цели на документација и се пренесува на генерираниот изворен код како коментар на изворниот код.
Основна радио конфигурација
Основното јазиче за конфигурација на радио може да се подели на три дела:
- Дел на врвот каде што се конфигурирани два од најважните параметри на кое било дејство: командата за извршување (TX, RX, NOP, SABORT и така натаму) и, доколку е применливо, должината на пакетот што треба да се пренесе.
- Дел од левата страна каде што се конфигурирани вистинските радио параметри како што се: фреквенција на носител, брзина на податоци, својства на модулација, прагови на баферот за податоци и тајмери.
- Поединечно може да се овозможи дел од десната страна каде што прекинува процесорот. За секој од штиклираните прекини се генерира управувач со прекини. Ова во основа ја конфигурира содржината на регистарот RFSEQ_IRQ_ENABLE.
Видете во упатството за референци STM32WL3x [1] за значењето на различните радио параметри.
Напредна конфигурација на радио
- Ако опциите за конфигурација изложени преку основната картичка за конфигурација на радио (Дел 3.2.2: Основна конфигурација на радио) се недоволни, напредната картичка за конфигурација на радио STM32WL3x дозволува поставување на произволна содржина на динамички регистер. Јазичето за напредна конфигурација е овозможено со штиклирање на полето за избор Напредна конфигурација во горниот десен агол на интерфејсот за конфигурација со јазичиња.
- Не е можно истовремено да се користат и основните и напредните конфигурации, корисникот мора да избере една или друга. Сепак, се разбира, исто така е можно рачно да се уреди генерираниот изворен код потоа и да се додадат опции за конфигурација кои потенцијално недостасуваат.
Глобален дијалог за конфигурација
- До дијалогот „Глобални поставки на проектот“ може да се пристапи преку копчето „Глобални поставки“ на лентата со алатки. Дијалогот ги содржи и опциите за конфигурација за содржината на статичниот регистар, како и дополнителни поставки за проектот. Забележете дека само мал дел од опциите за конфигурација на статички регистар може да се конфигурираат преку овој дијалог. Овие опции се обезбедени само за да се забрзаат апликациите за прототипирање на апликации со STM32CubeWiSE-RadioCodeGenerator.
- Обично се очекува содржината на статичниот регистар да биде поставена во рачно напишаниот изворен код на апликацијата.
- Значењето на другите поставки на проектот е објаснето во самиот дијалог.
- Може да се обезбеди и дополнителен C-код што е вметнат непосредно пред креирањето на табелата за RAM за глобална конфигурација од содржината на статичниот регистар. Ова поле може да се користи за поставување вредности на статички регистри кои се недостапни преку обезбедената маска за конфигурација на статички регистар.
Генерирање кодови
Графикот на тек може да се преведе во комплетен изворен код на проектот C со притискање на копчето Генерирај код во лентата со алатки. Генерираната проектна папка не содржи проект files за IAR, Keil® или GCC. Овие files мора да се додадат рачно во проектот STMWL3x.
Ова е генерирана структура на папката на проектот:
Проект папка
- вк
- SequencerFlowgraph.h: заглавие file за SequencerFlowgraph.c, статичен. Не го уредувајте ова.
- stm32wl3x_hal_conf.h: STM32WL3x HAL конфигурација file, статични.
- src
- SequencerFlowgraph.c: дефиниција на flowgraph. Ова е важно file кој го користи двигателот на секвенционерот за да ги дефинира табелите за глобална конфигурација и акциона конфигурација на RAM меморијата. Автоматско генерирање, не уредувајте.
- главен.в: Главен проект file што демонстрира како да се вчита и примени дефиницијата на графикот на проток. Статично, модифицирајте го по потреба.
- За да го уредите main.c или stm32wl3x_hal_conf.h, изберете однесување за презапишување Keep во поставките на проектот. На овој начин, само SequencerFlowgraph.c се препишува.
Како да увезете генериран код во CubeMX example
За увоз на проект генериран од STM32CubeWiSE-RadioCodeGenerator во CubeMX example (MRSUBG_Skeleton), потребно е да ги следите следните чекори:
- Отворете ја папката што ја содржи fileгенерирани од STM32CubeWiSE-RadioCodeGenerator и копирајте ги папките „Inc“ и „Src“.
- Залепете ги двете папки во папката „MRSUBG_Skeleton“ препишувајќи ги двете веќе присутни.
- Отворете го проектот „MRSUBG_Skeleton“ во еден од следниве IDE:
- ТОПЛО
- МДК-АРМ
- STM32CubeIDE
- Во проектот „MRSUBG_Skeleton“, додајте го „SequencerFlowghraph.c“ file:
- За проект EWARM, патеката за додавање на file е следново: MRSUBG_Skeleton\Application\User
- За проект MDK-ARM, патеката за додавање на file е следново: MRSUBG_Skeleton\Application/User
- За проект STM32CubeIDE, патеката за додавање file е исто:
MRSUBG_Skeleton\Application\User
- За проект EWARM, патеката за додавање на file е следново: MRSUBG_Skeleton\Application\User
- Внатре во проектот MRSUBG_Skeleton, додајте stm32wl3x_hal_uart.c и stm32wl3x_hal_uart_ex.c files до следната патека: MRSUBG_Skeleton\Drivers\STM32WL3x_HAL_Driver. Патеката е иста за сите IDE. Двајцата files се наоѓаат на Firmware\Drivers\STM32WL3x_HAL_Driver\Src.
- За да користите COM карактеристики, stm32wl3x_nucleo_conf.h file, лоциран на Firmware\Projects\NUCLEOWL33CC\ Examples\MRSUBG\MRSUBG_Skeleton\Inc, мора да се измени поставката USE_BSP_COM_FEATURE и USE_COM_LOG на 1U:
- Копирајте го следниов код во „stm32wl3x_it.c“, кој се наоѓа во MRSUBG_Skeleton\Application\User.
Флограф на прampлес
- Четири бившиampтековните графикони се обезбедени заедно со изворниот код. Овие ексampможе да се вчитаат во STM32CubeWiSE-RadioCodeGenerator со кликнување на копчето „Load“ во лентата со алатки.
AutoACK_RX
- Демонстрацијата Auto-ACK илустрира како два уреди STM32WL3x можат автоматски да разговараат меѓу себе со минимална интервенција на процесорот, со помош на хардверот за секвенционер.
- Овој протокограф го имплементира однесувањето (Auto-Transmit-ACK) на уредот A. Во уредот A, секвенционерот е иницијализиран во состојба на примање (WaitForMessage), во која чека да пристигне порака.
- Откако ќе пристигне валидна порака, секвенционерот автоматски преминува во состојба на пренос (TransmitACK), во која ACK пакет се испраќа како одговор, без интервенција на процесорот. Откако ова ќе заврши, секвенционерот се ресетира во неговата почетна состојба на WaitForMessage.
- Овој графикон го имплементира истото однесување како MRSUBG_SequencerAutoAck_Rx exampле од Прamples\MRSUBG папката од софтверскиот пакет STM32Cube WL3. Ако AutoACK_RX трепка на еден уред
A, а AutoACK_TX се трепка на некој уред, B, двата уреди испраќаат пораки напред-назад, како во игра со пинг-понг.
AutoACK_TX
- Демото „Auto-ACK“ илустрира како два уреди STM32WL3x можат автоматски да разговараат меѓу себе со минимална интервенција на процесорот со помош на хардверот за секвенционер.
- Овој протокограф го имплементира однесувањето („Автоматско чекање-за-ACK“) на уредот Б. Во уредот Б, секвенционерот е иницијализиран во состојба на предавање (TransmitMessage), во која тој пренесува порака. Откако ќе заврши преносот, тој автоматски преминува во состојба на примање каде што чека потврда од уредот А (WaitForACK). Откако ќе пристигне валидна потврда, секвенционерот се ресетира во неговата почетна состојба TransmitMessage и целиот процес започнува повторно. Во случај да не се прими ACK во рок од 4 секунди, се активира тајмаут и секвенционерот сепак се враќа во состојбата TransmitMessage.
- Овој графикон го имплементира истото однесување како „MRSUBG_SequencerAutoAck_Tx“ пр.ampле од прamples\MRSUBG папката од софтверскиот пакет STM32Cube WL3. Ако AutoACK_RX трепка на еден уред, A и AutoACK_TX се трепка на некој друг уред, B, двата уреди испраќаат пораки напред-назад, како во игра со пинг-понг.
Слушајте пред разговор (LBT)
- Овој ексample е преземено од референтниот прирачник STM32WL3x [1]. Погледнете го тој прирачник за повеќе детали за овој прampле.
Режим на шмркање
- Овој ексample е преземено од референтниот прирачник STM32WL3x [1]. Погледнете го тој прирачник за повеќе детали за овој прampле.
Историја на ревизии
Табела 2. Историја на ревизија на документ
Датум | Верзија | Промени |
21-ноември-2024 | 1 | Почетно ослободување. |
10-февруари 2025 година | 2 | Ажурирано името на уредот до опсегот STM32WL3x. |
ВАЖНО НАПОМЕНА – ПРОЧИТАЈТЕ ВНИМАТЕЛНО
- STMicroelectronics NV и нејзините подружници („ST“) го задржуваат правото да прават промени, корекции, подобрувања, модификации и подобрувања на производите на ST и/или на овој документ во секое време без најава. Купувачите треба да ги добијат најновите релевантни информации за производите на ST пред да направат нарачки. Производите на ST се продаваат во согласност со одредбите и условите за продажба на ST кои се на сила во моментот на потврдата на нарачката.
- Набавувачите се единствено одговорни за изборот, изборот и употребата на производите на ST и ST не презема никаква одговорност за помош при апликација или дизајнирање на производите на купувачите.
- Ниту една лиценца, експлицитна или имплицитна, за кое било право на интелектуална сопственост не е дадена од страна на ST овде.
- Препродажбата на производите на ST со одредби различни од информациите наведени овде ќе ја поништи секоја гаранција дадена од ST за таков производ.
- ST и логото ST се заштитни знаци на ST. За дополнителни информации за ST заштитните знаци, погледнете на www.st.com/trademarks. Сите други имиња на производи или услуги се сопственост на нивните соодветни сопственици.
- Информациите во овој документ ги заменуваат и заменуваат информациите претходно доставени во која било претходна верзија на овој документ.
- © 2025 STMicroelectronics – Сите права се задржани
Најчесто поставувани прашања
- П: Кои се минималните системски барања за STM32CubeWiSE-RadioCodeGenerator?
- A: Минималните системски барања вклучуваат најмалку 2 Gbytes RAM меморија, USB порти и Adobe Acrobat reader 6.0.
- П: Како можам да го поставам софтверскиот пакет STM32CubeWiSE-RadioCodeGenerator?
- A: За да го поставите софтверскиот пакет, извадете ја содржината од дадениот zip file во привремен директориум и стартувајте ја извршната датотека file следејќи ги упатствата на екранот.
Документи / ресурси
![]() |
STMicroelectronics UM3399 STM32Cube WiSE Радио генератор на код [pdf] Упатство за користење UM3399, UM3399 STM32 Cube WiSE Radio Code Generator, UM3399, STM32, Cube WiSE Radio Code Generator, Radio Code Generator, Code Generator, Generator |