STM32WL3x-loigo

Pecyn Meddalwedd STM32WL3x

STM32WL3x-Meddalwedd-Pecyn -CYNNYRCH

Manylebau

  • Enw'r Cynnyrch: Pecyn meddalwedd STM32CubeWL3
  • Cydnawsedd: microreolyddion STM32WL3x
  • Prif Nodweddion:
    • APIs haen isel (LL) a haen tynnu caledwedd (HAL).
    • Cydrannau canolwedd cnewyllyn SigfoxTM, FatFS, a FreeRTOSTM
    • Cymwysiadau ac arddangosiadau

Cyfarwyddiadau Defnydd Cynnyrch

Cychwyn Arni
I ddechrau defnyddio pecyn meddalwedd STM32CubeWL3, dilynwch y camau hyn:

  1. Dadlwythwch y pecyn meddalwedd o'r swyddogol websafle.
  2. Gosodwch yr amgylchedd datblygu angenrheidiol (ee, STM32CubeIDE, EWARM, MDK-ARM).
  3. Cyfeirier at y cynamples a cheisiadau wedi'u darparu fel arweiniad.

Pensaernïaeth STM32CubeWL3 Drosoddview
Mae pecyn meddalwedd STM32CubeWL3 wedi'i adeiladu o amgylch tair prif lefel

  • Lefel 0: Haen tynnu caledwedd (HAL) a gyrwyr BSP.
  • Lefel 1: Cymwysiadau, llyfrgelloedd, a chydrannau sy'n seiliedig ar brotocol.

Cwestiynau Cyffredin (FAQ)

C: Beth yw prif nodweddion pecyn meddalwedd STM32CubeWL3?
A: Mae'r prif nodweddion yn cynnwys APIs haen isel a HAL, cydrannau nwyddau canol fel SigfoxTM, FatFS, cnewyllyn FreeRTOSTM, cymwysiadau ac arddangosiadau.

Rhagymadrodd

Mae STM32Cube yn fenter wreiddiol STMicroelectronics i wella cynhyrchiant dylunwyr yn sylweddol trwy leihau ymdrech datblygu, amser a chost. Mae STM32Cube yn cwmpasu'r portffolio STM32 cyfan.

Mae STM32Cube yn cynnwys:

  • Set o offer datblygu meddalwedd hawdd eu defnyddio i gwmpasu datblygiad prosiect o'r cenhedlu i'w wireddu, ymhlith] sydd:
    • STM32CubeMX, offeryn cyfluniad meddalwedd graffigol sy'n caniatáu cynhyrchu cod cychwynnol C yn awtomatig gan ddefnyddio dewiniaid graffigol
    • STM32CubeIDE, offeryn datblygu popeth-mewn-un gyda chyfluniad ymylol, cynhyrchu cod, llunio cod, a nodweddion dadfygio
    • STM32CubeCLT, set offer datblygu llinell orchymyn popeth-mewn-un gyda chasglu cod, rhaglennu bwrdd, a nodweddion dadfygio
    • STM32CubeProgrammer (STM32CubeProg), offeryn rhaglennu sydd ar gael mewn fersiynau graffigol a llinell orchymyn
    • STM32CubeMonitor (STM32CubeMonitor, STM32CubeMonPwr, STM32CubeMonRF, STM32CubeMonUCPD), offer monitro pwerus i fireinio ymddygiad a pherfformiad cymwysiadau STM32 mewn amser real
  • Pecynnau MCU ac MPU STM32Cube, llwyfannau meddalwedd mewnol cynhwysfawr sy'n benodol i bob cyfres micro-reolwr a microbrosesydd (fel STM32CubeWL3 ar gyfer llinell gynnyrch STM32WL3x), sy'n cynnwys:
    • Haen tynnu caledwedd STM32Cube (HAL), gan sicrhau'r cludadwyedd mwyaf posibl ar draws portffolio STM32
    • APIs haen isel STM32Cube, gan sicrhau'r perfformiad a'r olion traed gorau gyda lefel uchel o reolaeth gan ddefnyddwyr dros] galedwedd
    • Set gyson o gydrannau nwyddau canol fel cnewyllyn FreeRTOS™, FatFS, a Sigfox™
    • Pob cyfleustodau meddalwedd wedi'i fewnosod gyda setiau llawn o ex ymylol a chymhwysolamples
  • Pecynnau Ehangu STM32Cube, sy'n cynnwys cydrannau meddalwedd wedi'u hymgorffori sy'n ategu swyddogaethau Pecynnau STM32Cube MCU ac MPU gyda:
    • Estyniadau Middleware a haenau cymhwysol
    • Examples yn rhedeg ar rai byrddau datblygu STMicroelectroneg penodol

Mae'r llawlyfr defnyddiwr hwn yn disgrifio sut i ddechrau gyda'r Pecyn MCU STM32CubeWL3.
Mae Adran 2 yn disgrifio prif nodweddion STM32CubeWL3 ac mae Adran 3 yn rhoi trosoddview ei bensaernïaeth ac o strwythur Pecyn MCU.

Gwybodaeth gyffredinol

Mae STM32CubeWL3 yn rhedeg cymwysiadau arddangos is-GHz, gan gynnwys deuaidd Sigfox™, ar ficroreolyddion llinell cynnyrch STM32WL3x yn seiliedig ar brosesydd Arm® Cortex®-M0+.
Mae'r microreolyddion STM32WL3x yn ymgorffori perifferol radio RF is-GHz o'r radd flaenaf sy'n cydymffurfio â STMicroelectronics, wedi'i optimeiddio ar gyfer defnydd pŵer isel iawn a pherfformiad radio rhagorol, ar gyfer oes batri heb ei ail.
Nodyn: Mae Arm yn nod masnach cofrestredig Arm Limited (neu ei is-gwmnïau) yn yr Unol Daleithiau a/neu mewn mannau eraill.

STM32CubeWL3 prif nodweddion

  • Mae Pecyn MCU STM32CubeWL3 yn rhedeg ar ficroreolyddion 32-did STM32 yn seiliedig ar brosesydd Arm® Cortex®-M0+. Mae'n casglu, mewn un pecyn, yr holl gydrannau meddalwedd gwreiddio generig sydd eu hangen i ddatblygu cymhwysiad ar gyfer microreolyddion llinell cynnyrch STM32WL3x.
  • Mae'r pecyn yn cynnwys APIs haen isel (LL) a haen tynnu caledwedd (HAL) sy'n cwmpasu'r caledwedd microreolydd, ynghyd â set helaeth o gyn-reolwyr.ampllai yn rhedeg ar fyrddau STMicroelectronics. Mae'r APIs HAL a LL ar gael mewn trwydded BSD ffynhonnell agored er hwylustod defnyddwyr. Mae hefyd yn cynnwys cydrannau cnewyllyn cnewyllyn Sigfox ™, FatFS, a FreeRTOS™.
  • Mae Pecyn MCU STM32CubeWL3 hefyd yn darparu nifer o gymwysiadau ac arddangosiadau sy'n gweithredu ei holl gydrannau nwyddau canol.
  • Dangosir cynllun cydrannau Pecyn MCU STM32CubeWL3 yn Ffigur 1.

Ffigur 1. Cydrannau Pecyn MCU STM32CubeWL3 

STM32WL3x-Pecyn-Meddalwedd (2)

Pensaernïaeth STM32CubeWL3 drosoddview

Mae datrysiad Pecyn MCU STM32CubeWL3 wedi'i adeiladu o amgylch tair lefel annibynnol sy'n rhyngweithio'n hawdd fel y disgrifir yn Ffigur 2. STM32WL3x-Pecyn-Meddalwedd (3)Lefel 0
Rhennir y lefel hon yn dri is-haen:

  • Pecyn cymorth Bwrdd (BSP).
  • Haen tynnu caledwedd (HAL):
    • Gyrwyr ymylol HAL
    • Gyrwyr haen isel
  • Defnydd ymylol sylfaenol cynamples.

Pecyn cymorth Bwrdd (BSP)
Mae'r haen hon yn cynnig set o APIs o'i gymharu â'r cydrannau caledwedd yn y byrddau caledwedd (fel LEDs, botymau, a gyrwyr COM). Mae'n cynnwys dwy ran:

  • Cydran:
    Dyma'r gyrrwr o'i gymharu â'r ddyfais allanol ar y bwrdd ac nid i'r STM32. Mae'r gyrrwr cydran yn darparu APIs penodol i gydrannau allanol gyrrwr BSP a gallai fod yn gludadwy ar unrhyw fwrdd arall.
  • Gyrrwr BSP:

Mae'n caniatáu cysylltu'r gyrwyr cydran â bwrdd penodol ac yn darparu set o APIs hawdd eu defnyddio. Rheol enwi'r API yw BSP_FUNCT_Action().
Exampgyda: BSP_LED_Init(), BSP_LED_On()
Mae BSP yn seiliedig ar bensaernïaeth fodiwlaidd sy'n caniatáu cludo unrhyw galedwedd yn hawdd trwy weithredu'r arferion lefel isel yn unig.

Haen tynnu caledwedd (HAL) a haen isel (LL)
Mae'r STM32CubeWL3 HAL a LL yn gyflenwol ac yn cwmpasu ystod eang o ofynion cymhwyso:

  • Mae'r gyrwyr HAL yn cynnig APIs cludadwy iawn sy'n canolbwyntio ar swyddogaethau lefel uchel. Maent yn cuddio'r MCU a'r cymhlethdod ymylol i'r defnyddiwr terfynol.
    Mae'r gyrwyr HAL yn darparu APIs aml-enghraifft generig sy'n canolbwyntio ar nodweddion, sy'n symleiddio gweithrediad cymwysiadau defnyddwyr trwy ddarparu prosesau parod i'w defnyddio. Am gynampLe, ar gyfer y perifferolion cyfathrebu (I2C, UART, ac eraill), mae'n darparu APIs sy'n caniatáu cychwyn a ffurfweddu'r ymylol, rheoli trosglwyddo data yn seiliedig ar bleidleisio, torri ar draws, neu broses DMA, a thrin gwallau cyfathrebu a allai godi yn ystod cyfathrebu. Rhennir yr API gyrrwr HAL yn ddau gategori:
  1. APIs generig, sy'n darparu swyddogaethau cyffredin a generig i holl ficroreolwyr cyfres STM32.
  2. APIs Estyniad, sy'n darparu swyddogaethau penodol ac wedi'u haddasu ar gyfer teulu penodol neu rif rhan penodol.
  • Mae'r APIs haen isel yn darparu APIs lefel isel ar lefel y gofrestr, gyda gwell optimeiddio ond llai o gludadwyedd. Mae angen gwybodaeth ddofn arnynt o'r MCU a'r manylebau ymylol.
    Mae'r gyrwyr LL wedi'u cynllunio i gynnig haen ysgafn gyflym sy'n canolbwyntio ar arbenigwyr sy'n agosach at y caledwedd na'r HAL. Yn groes i'r HAL, ni ddarperir APIs LL ar gyfer perifferolion lle nad yw mynediad wedi'i optimeiddio yn nodwedd allweddol, nac ar gyfer y rhai sydd angen cyfluniad meddalwedd trwm neu stac lefel uwch cymhleth.

Nodwedd gyrwyr LL:

  • Set o swyddogaethau i gychwyn prif nodweddion ymylol yn unol â'r paramedrau a bennir mewn strwythurau data.
  • Set o swyddogaethau i lenwi strwythurau data cychwynnol gyda'r gwerthoedd ailosod sy'n cyfateb i bob maes.
  • Swyddogaeth ar gyfer dad-gychwyn ymylol (cofrestrau ymylol wedi'u hadfer i'w gwerthoedd rhagosodedig).
  • Set o swyddogaethau mewnol ar gyfer mynediad uniongyrchol ac atomig i'r gofrestr.
  • Annibyniaeth lawn oddi wrth HAL a'r gallu i'w ddefnyddio yn y modd annibynnol (heb yrwyr HAL).
  • Sylw llawn i'r nodweddion ymylol a gefnogir.

Defnydd ymylol sylfaenol cynamples
Mae'r haen hon yn amgáu'r cynampadeiladu llai dros y perifferolion STM32 gan ddefnyddio adnoddau HAL a BSP yn unig.
Arddangosiad cynamples hefyd ar gael i ddangos mwy cymhleth exampsenarios gyda perifferolion penodol, megis yr MRSUBG a LPAWUR.

Lefel 1
Rhennir y lefel hon yn ddwy is-haen:

  • Cydrannau llestri canol
  • Exampllai yn seiliedig ar y cydrannau nwyddau canol

Cydrannau llestri canol
Mae'r nwyddau canol yn set o lyfrgelloedd sy'n cwmpasu cnewyllyn FreeRTOS™, FatFS, a llyfrgell protocol Sigfox™. Mae rhyngweithio llorweddol rhwng cydrannau'r haen hon yn cael ei wneud trwy ffonio'r APIs dan sylw.
Mae rhyngweithio fertigol â'r gyrwyr haen isel yn cael ei wneud trwy alwadau yn ôl penodol a macros statig a weithredir yn rhyngwyneb galwadau system y llyfrgell.
Mae prif nodweddion pob cydran nwyddau canol fel a ganlyn:

  • Cnewyllyn FreeRTOS™: yn gweithredu system weithredu amser real (RTOS), wedi'i chynllunio ar gyfer systemau sydd wedi'u mewnosod.
  • Sigfox™: yn gweithredu llyfrgell protocol Sigfox™ sy'n cydymffurfio â rhwydwaith protocol Sigfox™ ac yn cynnwys y llyfrgell protocol prawf RF i brofi yn erbyn offer RF Sigfox™.
  • FatFS: yn gweithredu'r FAT generig file modiwl system.

Exampllai yn seiliedig ar y cydrannau nwyddau canol
Mae pob cydran nwyddau canol yn dod ag un neu fwy o gynamples, a elwir hefyd yn geisiadau, yn dangos sut i'w ddefnyddio. Integreiddio cynampond mae hynny'n defnyddio sawl cydran nwyddau canol yn cael eu darparu hefyd.

Pecyn cadarnwedd STM32CubeWL3 drosoddview

Dyfeisiau a chaledwedd STM32WL3x â chymorth
Mae STM32Cube yn cynnig haen tynnu caledwedd hynod gludadwy (HAL) wedi'i hadeiladu o amgylch pensaernïaeth generig. Mae'n caniatáu egwyddor haenau adeiladu, megis defnyddio'r haen nwyddau canol i weithredu eu swyddogaethau heb wybod, yn fanwl, pa MCU a ddefnyddir. Mae hyn yn gwella'r gallu i ailddefnyddio cod y llyfrgell ac yn sicrhau hygludedd hawdd i ddyfeisiau eraill.

  • Yn ogystal, gyda'i bensaernïaeth haenog, mae STM32CubeWL3 yn cynnig cefnogaeth lawn i'r holl linell gynnyrch STM32WL3x.
  • Rhaid i'r defnyddiwr ddiffinio'r macro cywir yn unig yn stm32wl3x.h.

Mae Tabl 1 yn dangos y macro i'w ddiffinio yn dibynnu ar y ddyfais llinell cynnyrch STM32WL3x a ddefnyddir. Rhaid diffinio'r macro hwn hefyd yn y rhagbrosesydd casglwr.
Tabl 1. Macros ar gyfer llinell cynnyrch STM32WL3x

Macro wedi'i ddiffinio yn stm32wl3x.h Dyfeisiau llinell cynnyrch STM32WL3x
stm32wl33 Microreolyddion STM32WL33xx

Mae STM32CubeWL3 yn cynnwys set gyfoethog o gynamples a chymwysiadau ar bob lefel, gan ei gwneud hi'n hawdd deall a defnyddio unrhyw gydrannau gyrrwr HAL neu nwyddau canol. Mae'r rhain yn gynampMae les yn rhedeg ar y byrddau STMicroelectroneg a restrir yn Nhabl 2.

Bwrdd Dyfeisiau a gefnogir gan fwrdd STM32WL3x
NUCLEO-WL33CC1 STM32WL33CC
NUCLEO-WL33CC2 STM32WL33CC

Gall y Pecyn MCU STM32CubeWL3 redeg ar unrhyw galedwedd cydnaws. Yn syml, mae'r defnyddwyr yn diweddaru'r gyrwyr BSP i borthi'r cyn a ddarperirampllai ar eu byrddau, os oes gan y rhain yr un nodweddion caledwedd (fel LEDs neu fotymau).

Pecyn cadarnwedd drosoddview
Darperir datrysiad Pecyn MCU STM32CubeWL3 mewn un pecyn sip sengl gyda'r strwythur a ddangosir yn Ffigur 3.
Ffigur 3. Strwythur pecyn firmware STM32CubeWL3

STM32WL3x-Pecyn-Meddalwedd (4)

Rhybudd:

Ni ddylai'r defnyddiwr addasu'r cydrannau files. Gall y defnyddiwr olygu'r ffynonellau \Projects yn unig.
Ar gyfer pob bwrdd, set o exampdarperir les gyda phrosiectau wedi'u ffurfweddu ymlaen llaw ar gyfer cadwyni offer EWARM, MDK-ARM, a STM32CubeIDE.
Mae Ffigur 4 yn dangos strwythur y prosiect ar gyfer byrddau NUCLEO-WL33CCx. STM32WL3x-Pecyn-Meddalwedd (5)

Mae'r cynampmae les yn cael eu dosbarthu yn dibynnu ar y lefel STM32CubeWL3 y maent yn berthnasol iddi. Maent yn cael eu henwi fel a ganlyn:

  • Lefel 0 exampgelwir les yn Examples, Examples_LL, ac Examples_MIX. Maent yn defnyddio gyrwyr HAL, gyrwyr LL, a chymysgedd o yrwyr HAL a LL heb unrhyw gydran nwyddau canol. Arddangosiad cynamples ar gael hefyd.
  • Lefel 1 exampgelwir les yn Geisiadau. Maent yn darparu achosion defnydd nodweddiadol o bob cydran nwyddau canol.

Gellir adeiladu unrhyw raglen firmware ar gyfer bwrdd penodol yn gyflym gan ddefnyddio'r prosiectau templed sydd ar gael yn y cyfeirlyfrau Templ ates a Templates_LL.

Examples, Examples_LL, ac ExampMae gan les_MIX yr un strwythur:

  • \Inc ffolder yn cynnwys yr holl bennawd files.
  • \Src ffolder yn cynnwys y cod ffynhonnell.
  • \EWARM, \ MDK-ARM, a \STM32CubeIDE ffolderi sy'n cynnwys y prosiect rhag-ffurfweddu ar gyfer pob cadwyn offer.
  • readme.md a readme.html yn disgrifio'r cynampymddygiad ac amgylchedd sydd ei angen i wneud iddo weithio.

Dechrau arni gyda STM32CubeWL3

Rhedeg cyn cyntafample
Mae'r adran hon yn esbonio pa mor syml yw rhedeg ex cyntafample o fewn STM32CubeWL3. Mae'n defnyddio fel enghraifft gynhyrchu togl LED syml sy'n rhedeg ar fwrdd NUCLEO-WL33CC1:

  1. Lawrlwythwch y Pecyn MCU STM32CubeWL3.
  2. Dadsipio ef, neu redeg y gosodwr os caiff ei ddarparu, i mewn i gyfeiriadur o'ch dewis.
  3. Gwnewch yn siŵr peidio ag addasu'r strwythur pecyn a ddangosir yn Ffigur 3. Strwythur pecyn cadarnwedd STM32CubeWL3. Sylwch yr argymhellir hefyd i gopïo'r pecyn mewn lleoliad sy'n agos at y cyfaint gwraidd (sy'n golygu C: \ ST neu G: \ Profion), gan fod rhai IDEs yn dod ar draws problemau pan fydd y llwybr yn rhy hir.

Sut i redeg cyn HALample
Cyn llwytho a rhedeg example, argymhellir yn gryf i ddarllen yr example readme file ar gyfer unrhyw ffurfweddiad penodol.

  1. Pori i \Prosiectau\NUCLEO-WL33CC\Examples.
  2. Agorwch y ffolderi \GPIO, yna \GPIO_EXTI.
  3. Agorwch y prosiect gyda'r gadwyn offer a ffefrir. Trosodd cyflymview ar sut i agor, adeiladu, a rhedeg exampRhoddir isod gyda'r cadwyni offer a gefnogir.
  4. Ailadeiladu'r cyfan files a llwytho'r ddelwedd i'r cof targed.
  5. Rhedeg y cynample. Am ragor o fanylion, cyfeiriwch at yr example readme file.

I agor, adeiladu, a rhedeg exampGyda phob un o'r cadwyni offer a gefnogir, dilynwch y camau isod:

  • EWARM:
  1. O dan yr Examples folder, agorwch yr is-ffolder \ EWARM.
  2. Lansio man gwaith Project.eww (gallai enw'r man gwaith newid o un cynample i un arall).
  3. Ailadeiladu'r cyfan files: [Prosiect]>[Ailadeiladu pob].
  4. Llwythwch ddelwedd y prosiect: [Project]>[Debug].
  5. Rhedeg y rhaglen: [Debug]>[Ewch (F5)].
  • MDK-ARM:
  1. O dan yr Examples folder, agorwch yr is-ffolder \MDK-ARM.
  2. Agorwch y man gwaith Project.uvproj (gallai enw'r man gwaith newid o un cynample i un arall).
  3. Ailadeiladu'r cyfan files: [Prosiect]>[Ailadeiladu pob targed files].
  4. Llwythwch ddelwedd y prosiect: [Debug]>[Start/Stop Debug Sesion].
  5. Rhedeg y rhaglen: [Debug]>[Run (F5)].
  • STM32CubeIDE:
  1. Agorwch y gadwyn offer STM32CubeIDE.
  2. Cliciwch ar [File]>[Newid Workspace]>[Arall] a phori i gyfeiriadur gweithleoedd STM32CubeIDE.
  3. Cliciwch ar [File]>[Mewnforio], dewiswch [Cyffredinol]>[Prosiectau Presennol i'r Gweithle], ac yna cliciwch [Nesaf].
  4. Porwch i gyfeiriadur gweithleoedd STM32CubeIDE a dewiswch y prosiect.
  5. Ailadeiladu pob prosiect files: Dewiswch y prosiect yn y ffenestr Project Explorer yna cliciwch ar y
    [Prosiect]>[Prosiect adeiladu] ddewislen.
  6.  Rhedeg y rhaglen: [Rhedeg]>[Debug (F11)].

Datblygu cymhwysiad wedi'i deilwra

Defnyddio STM32CubeMX i ddatblygu neu ddiweddaru cymhwysiad
Yn y Pecyn MCU STM32Cube, mae bron pob un o'r prosiectau blaenorolampcynhyrchir les gyda'r offeryn STM32CubeMX i gychwyn y system, perifferolion, a nwyddau canol.

Defnydd uniongyrchol o brosiect presennol exampMae angen STM32CubeMX 32 neu uwch ar gyfer offeryn STM6.12.0CubeMX:

  • Ar ôl gosod STM32CubeMX, agorwch ac os oes angen diweddaru prosiect arfaethedig.
    Y ffordd symlaf o agor prosiect presennol yw clicio ddwywaith ar yr *.ioc file fel bod STM32CubeMX yn agor y prosiect a'i ffynhonnell yn awtomatig files. Mae STM32CubeMX yn cynhyrchu cod ffynhonnell cychwyn prosiectau o'r fath.
  • Mae prif god ffynhonnell y cymhwysiad wedi'i gynnwys yn y sylwadau “USER CODE START” a “USER CODE END”. Os yw'r dewis a'r gosodiadau ymylol yn cael eu haddasu, mae STM32CubeMX yn diweddaru rhan cychwyn y cod wrth gadw cod ffynhonnell y prif gais.

I ddatblygu prosiect wedi'i deilwra gyda STM32CubeMX, dilynwch y broses gam wrth gam:

  1. Ffurfweddwch yr holl feddalwedd mewnosodedig gofynnol gan ddefnyddio datryswr gwrthdaro pinout, cynorthwyydd gosod cloc-coed, cyfrifiannell defnydd pŵer, a'r cyfleustodau sy'n perfformio ffurfweddiad ymylol MCU (fel GPIO neu USART).
  2. Cynhyrchu'r cod cychwynnol C yn seiliedig ar y ffurfwedd a ddewiswyd. Mae'r cod hwn yn barod i'w ddefnyddio mewn sawl amgylchedd datblygu. Cedwir y cod defnyddiwr yn y genhedlaeth cod nesaf.
    Am ragor o wybodaeth am STM32CubeMX, cyfeiriwch at y llawlyfr defnyddiwr STM32CubeMX ar gyfer cyfluniad STM32 a chychwyn cynhyrchu cod C (UM1718).

Ceisiadau gyrrwr

cais HAL
Mae'r adran hon yn disgrifio'r camau sydd eu hangen i greu cymhwysiad HAL wedi'i deilwra gan ddefnyddio STM32CubeWL3:

  1. Creu prosiect
    I greu prosiect newydd, dechreuwch naill ai o'r prosiect Templed a ddarperir ar gyfer pob bwrdd o dan \Projects\<STM32xxx_yyy>\Templates neu o unrhyw brosiect sydd ar gael o dan \Projects\ \exampl es neu \Prosiectau\ \Ceisiadau (lle yn cyfeirio at enw'r bwrdd). Mae'r prosiect Templed yn darparu swyddogaeth prif ddolen wag. Fodd bynnag, mae'n fan cychwyn da deall gosodiadau prosiect STM32CubeWL32. Mae gan y templed y nodweddion canlynol:
    • Mae'n cynnwys cod ffynhonnell HAL, CMSIS, a gyrwyr BSP, sef y set leiaf o gydrannau sydd eu hangen i ddatblygu cod ar fwrdd penodol.
    • Mae'n cynnwys y llwybrau sydd wedi'u cynnwys ar gyfer yr holl gydrannau firmware.
    • Mae'n diffinio'r dyfeisiau llinell cynnyrch STM32WL3x a gefnogir, gan ganiatáu i'r gyrwyr CMSIS a HAL gael eu ffurfweddu'n gywir.
    • Mae'n darparu defnyddiwr parod i'w ddefnyddio files wedi'i ffurfweddu ymlaen llaw fel y dangosir isod:
    • Cychwynnodd HAL gyda'r sylfaen amser ddiofyn gyda'r craidd Arm® SysTick.
    • SysTick ISR ar waith at ddiben HAL_Delay().
      Nodyn: Wrth gopïo prosiect presennol i leoliad arall, gwnewch yn siŵr bod yr holl lwybrau sydd wedi'u cynnwys yn cael eu diweddaru.
  2. Ffurfweddu'r cydrannau firmware
    Mae'r cydrannau HAL a nwyddau canol yn cynnig set o opsiynau ffurfweddu amser adeiladu gan ddefnyddio macros #define wedi'i ddatgan mewn pennawd file. Ffurfweddiad templed file yn cael ei ddarparu o fewn pob cydran, y mae'n rhaid ei gopïo i'r ffolder prosiect (y ffurfweddiad fel arfer file wedi'i enwi xxx_conf_template.h, mae angen tynnu'r darn _template wrth ei gopïo i ffolder y prosiect). Y cyfluniad file yn darparu digon o wybodaeth i ddeall effaith pob opsiwn cyfluniad. Mae gwybodaeth fanylach ar gael yn y ddogfennaeth a ddarparwyd ar gyfer pob cydran.
  3. Dechreuwch y llyfrgell HAL
    Ar ôl neidio i'r brif raglen, rhaid i'r cod cais alw'r API HAL_Init() i gychwyn y llyfrgell HAL, sy'n cyflawni'r tasgau canlynol:
    • Ffurfweddiad y cof fflach prefetch a SysTick ymyrraeth flaenoriaeth (trwy macros a ddiffinnir yn stm3 2wl3x_hal_conf.h).
    •  Ffurfweddiad y SysTick i greu ymyriad pob milieiliad yn y flaenoriaeth ymyrraeth SysTick TICK_INT_PRIO a ddiffinnir yn stm32wl3x_hal_conf.h.
    • Gosod blaenoriaeth grŵp NVIC i 0.
    • Galwad HAL_MspInit() swyddogaeth galw'n ôl wedi'i ddiffinio yn y defnyddiwr stm32wl3x_hal_msp.c file i berfformio cychwyniadau caledwedd lefel isel byd-eang.
  4. Ffurfweddu cloc y system
    Gwneir cyfluniad cloc y system trwy ffonio'r ddau API a ddisgrifir isod:
    • HAL_RCC_OscConfig(): mae'r API hwn yn ffurfweddu'r osgiliaduron mewnol ac allanol. Mae'r defnyddiwr yn dewis ffurfweddu un osgiliadur neu bob un.
    • HAL_RCC_ClockConfig(): mae'r API hwn yn ffurfweddu ffynhonnell cloc y system, cuddni'r cof fflach, a'r rhag-raddolion AHB ac APB.
  5. Cychwyn yr ymylol
    •  Yn gyntaf, ysgrifennwch y swyddogaeth cychwyn ymylol. Ewch ymlaen fel a ganlyn:
    • Galluogi'r cloc ymylol.
    • Ffurfweddu'r GPIO ymylol.
    • Ffurfweddwch y sianel DMA a galluogi'r ymyriad DMA (os oes angen).
    • Galluogi'r ymyriad ymylol (os oes angen).
    • Golygwch y stm32xxx_it.c i alw'r trinwyr ymyrraeth angenrheidiol (ymylol a DMA), os oes angen.
    •  Ysgrifennwch swyddogaethau proses galw'n ôl cyflawn os bwriedir defnyddio ymyriad ymylol neu DMA.
    •  Yn y defnyddiwr main.c file, ymgychwyn y strwythur handlen ymylol yna ffoniwch y swyddogaeth ymgychwyn ymylol i gychwyn y ymylol.
  6. Datblygu cais
    Ar hyn stage, mae'r system yn barod a gall datblygu cod cais defnyddiwr ddechrau.
    Mae'r HAL yn darparu APIs sythweledol sy'n barod i'w defnyddio i ffurfweddu'r ymylol. Mae'n cefnogi pleidleisio, ymyriadau, a model rhaglennu DMA, i ddarparu ar gyfer unrhyw ofynion cais. Am ragor o fanylion ar sut i ddefnyddio pob ymylol, cyfeiriwch at y cyfoethog exampgyda set a ddarperir yn y Pecyn MCU STM32CubeWL3.

Rhybudd:
Yn y gweithrediad HAL rhagosodedig, defnyddir yr amserydd SysTick fel sylfaen amser: mae'n cynhyrchu ymyriadau ar gyfnodau amser rheolaidd. Os gelwir HAL_Delay() o'r broses ISR ymylol, gwnewch yn siŵr bod gan yr ymyriad SysTick flaenoriaeth uwch (yn rhifol yn is) na'r ymyriad ymylol. Fel arall, mae'r broses ISR galwr
rhwystro. Mae ffwythiannau sy'n effeithio ar ffurfweddiadau amserlen yn cael eu datgan yn __wan i wneud diystyru yn bosibl rhag ofn y bydd gweithrediadau eraill yn y defnyddiwr file (gan ddefnyddio amserydd pwrpas cyffredinol, ar gyfer example, neu ffynhonnell amser arall).
Am ragor o fanylion, cyfeiriwch at yr hen HAL_TimeBaseample.

cais LL
Mae'r adran hon yn disgrifio'r camau sydd eu hangen i greu cymhwysiad LL wedi'i deilwra gan ddefnyddio STM32CubeWL3.

  1. Creu prosiect
    I greu prosiect newydd, dechreuwch naill ai o'r prosiect Templedi_LL a ddarperir ar gyfer pob bwrdd o dan \Projects\ \Templates_LL neu o unrhyw brosiect sydd ar gael o dan \Prosiectau\ \E xampllai_LL ( yn cyfeirio at enw'r bwrdd, fel NUCLEO-WL32CC33).
    Mae'r prosiect templed yn darparu swyddogaeth prif ddolen wag, sy'n fan cychwyn da i ddeall gosodiadau'r prosiect ar gyfer STM32CubeWL3. Mae prif nodweddion y templed fel a ganlyn:
    • Mae'n cynnwys codau ffynhonnell y gyrwyr LL a CMSIS, sef y set leiaf o gydrannau sydd eu hangen i ddatblygu'r cod ar fwrdd penodol.
    • Mae'n cynnwys y llwybrau sydd wedi'u cynnwys ar gyfer yr holl gydrannau firmware gofynnol.
    • Mae'n dewis y ddyfais llinell cynnyrch STM32WL3x a gefnogir ac yn caniatáu cyfluniad cywir y gyrwyr CMSIS a LL.
    • Mae'n darparu defnyddiwr parod i'w ddefnyddio files sydd wedi'u ffurfweddu ymlaen llaw fel a ganlyn:
    • main.h: haen tynnu diffiniad LED a USER_BUTTON.
    • main.c: Cyfluniad cloc system ar gyfer yr amledd mwyaf.
  2. Port y LL example:
    • Copïwch / gludwch y ffolder Templates_LL - i gadw'r ffynhonnell gychwynnol - neu diweddarwch yn uniongyrchol brosiect Templa tes_LL sy'n bodoli eisoes.
    • Yna, mae'r porthiant yn cynnwys disodli Templates_LL yn bennaf files gan yr Exampprosiect wedi'i dargedu llai_LL.
    • Cadwch yr holl rannau bwrdd penodol. Am resymau eglurder, mae rhannau bwrdd penodol yn cael eu nodi â rhai penodol tags:
      STM32WL3x-Pecyn-Meddalwedd (1)

Felly, y prif gamau cludo yw'r canlynol:

  • Amnewid y stm32wl3x_it.h file.
  • Amnewid y stm32wl3x_it.c file.
  • Disodli y main.h file a'i ddiweddaru: Cadwch y diffiniad LED a botwm defnyddiwr o'r templed LL o dan FFURFLUNIAD PENODOL Y BWRDD tags.
  • Amnewid y prif.c file a'i ddiweddaru:
  • Cadw cyfluniad cloc y ffwythiant templed SystemClock_Config() LL o dan FFURFLUNIAD PENODOL BWRDD tags.
  • Yn dibynnu ar y diffiniad LED, disodli pob digwyddiad LDx gyda LDy arall sydd ar gael yn y file prif.h.

Gyda'r addasiadau hyn, mae'r example yn rhedeg ar y bwrdd targed.

Ceisiadau RF, arddangosiadau, a chynamples
Gwahanol fathau o geisiadau RF, arddangosiadau, a chynampmae les ar gael yn y pecyn STM32CubeWL3. Fe'u rhestrir yn y ddwy adran isod.

Is-GHz cynamples ac arddangosiadau
Mae'r rhain yn gynampMae llai yn dangos prif nodweddion perifferolion radio MRSUBG a LPAWUR. Mae'r rhain yn gynampmae les ar gael o dan:

  • Prosiectau\NUCLEO-WL33CC\Exampllai\MRSUBG
  • Prosiectau\NUCLEO-WL33CC\Examples\LPAWUR
  • Prosiectau\NUCLEO-WL33CC\Arddangosiadau\MRSUBG
  • Prosiectau\NUCLEO-WL33CC\Arddangosiadau\LPAWUR

Mae pob cynampYn gyffredinol, mae le neu arddangosiad yn cynnwys dwy raglen o'r enw Tx ac Rx sy'n gweithredu fel trosglwyddydd a derbynnydd, yn y drefn honno:

  • Examples/MRSUBG
    • MRSUBG_802_15_4: gweithrediad yr haen ffisegol a ddiffinnir gan y safon 802.15.4. Mae'n dangos sut i ffurfweddu'r radio i drosglwyddo neu dderbyn pecynnau 802.15.4.
    • MRSUBG_BasicGeneric : Cyfnewid pecynnau sylfaenol STM32WL3x MR_SUBG.
    • MRSUBG_Chat: Cymhwysiad syml sy'n dangos sut i ddefnyddio Tx a Rx ar yr un ddyfais.
    • MRSUBG_Databuffer Handler: Mae cynample sy'n dangos sut i gyfnewid o Databuffer 0 ac 1.
    • MRSUBG_Sequencer AutoAck: Mae cynampsy'n trosglwyddo ac yn derbyn cydnabyddiaeth pecyn (ACKs) yn awtomatig.
    • MRUBG_WMBusSTD: Cyfnewid negeseuon WM-Bus.
    • WakeupRadio: Cynample i brofi ymylol radio LPAWUR.
  • Arddangosiadau/MRSUBG
    • MRSUBG_RTC_Button_TX: Mae hyn yn gynampMae le yn dangos sut i osod y SoC yn y modd stop dwfn a ffurfweddu'r MRSUBG i ddeffro'r SoC trwy wasgu PB2 i anfon ffrâm neu ar ôl i'r amserydd RTC ddod i ben.
    • MRSUBG_Sequencer_Sniff: Mae hyn yn gynampMae le yn dangos sut i osod y dilyniannydd MRSUBG i weithredu yn y modd arogli. Mae'r cynampMae le yn dangos ochr y derbynnydd ac mae angen dyfais arall arno fel trosglwyddydd.
    • MRSUBG_Timer: Mae'r rhaglen yn amserlennu sawl achos o amserydd MRSUBG (gydag awto-lwytho) gyda gwahanol gyfnodau amser.
    • MRSUBG_WakeupRadio_Tx: Mae hyn yn gynampMae le yn esbonio sut i osod y SoC yn y modd stopio dwfn a ffurfweddu'r MRSUBG i ddeffro'r SoC trwy wasgu PB2 i anfon ffrâm. Mae'r cynampMae le yn dangos ochr y trosglwyddydd ac mae angen dyfais arall arno fel derbynnydd LPAWUR. Mae'r derbynnydd cynampMae le wedi'i leoli o dan y ffolder NUCLEO-WL33CC\Demonstrations\LPAWUR\LPAWUR_WakeupRad io_Rx.
  • Arddangosiadau/LPAWUR
    • LPAWUR_WakeupRadio_Rx : Mae hyn yn gynampMae le yn esbonio sut i osod y SoC yn y modd stop dwfn a ffurfweddu'r LPAWUR i ddeffro'r SoC pan fydd ffrâm yn cyrraedd ac yn cael ei dderbyn yn gywir. Mae'r cynampMae le yn dangos ochr y derbynnydd ac mae angen dyfais arall arno fel trosglwyddydd. Mae'r trosglwyddydd exampMae le wedi'i leoli o dan y ffolder NUCLEO-WL33CC\Demonstrations\MRSUBG\MRSUBG_WakeupRad io_Tx.

Cais Sigfox™
Mae'r cymwysiadau hyn yn dangos sut i weithredu senario Sigfox™ a defnyddio'r APIs Sigfox™ sydd ar gael. Maent ar gael yn llwybr y prosiect Projects\NUCLEO-WL33CC\Ceisiadau\Sigfox\:

  • Sigfox_CLI: Mae'r cymhwysiad hwn yn dangos sut i ddefnyddio rhyngwyneb llinell orchymyn (CLI) i anfon gorchmynion sy'n defnyddio protocol Sigfox™ i anfon negeseuon a chynnal profion rhag-ardystio.
  • Sigfox_PushButton: Mae'r cymhwysiad hwn yn caniatáu gwerthuso galluoedd radio dyfais Sigfox™ STM32WL33xx. Mae pwyso PB1 yn trosglwyddo ffrâm prawf Sigfox™.

FAQ

  1. Pryd ddylwn i ddefnyddio HAL yn lle gyrwyr LL?
    Mae gyrwyr HAL yn cynnig APIs lefel uchel sy'n canolbwyntio ar swyddogaethau, gyda lefel uchel o gludadwyedd. Mae cymhlethdod cynnyrch neu ymylol wedi'i guddio ar gyfer defnyddwyr terfynol.
    Mae gyrwyr LL yn cynnig APIs lefel cofrestr haen isel, gyda gwell optimeiddio ond yn llai cludadwy. Maent yn gofyn am wybodaeth fanwl o fanylebau cynnyrch neu eiddo deallusol.
  2. A ellir defnyddio gyrwyr HAL a LL gyda'i gilydd? Os oes, beth yw'r cyfyngiadau?
    Mae'n bosibl defnyddio gyrwyr HAL a LL. Defnyddiwch yr HAL ar gyfer y cyfnod cychwyn ymylol ac yna rheoli'r gweithrediadau I/O gyda gyrwyr LL.
    Y prif wahaniaeth rhwng HAL a LL yw bod angen i yrwyr HAL greu a defnyddio dolenni ar gyfer rheoli gweithrediadau tra bod gyrwyr LL yn gweithredu'n uniongyrchol ar gofrestrau ymylol. Dangosir cymysgu HAL a LL yn yr Examples_MIX cynamples.
  3. Sut mae APIs cychwyn LL yn cael eu galluogi?
    Mae'r diffiniad o APIs ymgychwyn LL ac adnoddau cysylltiedig (strwythurau, llythrennol, a phrototeipiau) wedi'i gyflyru gan y switsh crynhoi USE_FULL_LL_DRIVER.
    Er mwyn gallu defnyddio APIs ymgychwyn LL, ychwanegwch y switsh hwn yn rhagbrosesydd casglwr y gadwyn offer.
  4. A oes unrhyw brosiect templed ar gyfer MRSUBG/LPAWUR perifferal examples?
    I greu MRSUBG neu LPAWUR ex newyddampgyda'r prosiect, naill ai'n dechrau o'r prosiect sgerbwd a ddarperir o dan \Pr ojects\NUCLEO-WL33CC\Examples\MRSUBG neu \Prosiectau\NUCLEO-WL33CC\Examples\LPAWUR, neu o unrhyw brosiect sydd ar gael o dan yr un cyfeiriaduron hyn.
  5. Sut gall STM32CubeMX gynhyrchu cod yn seiliedig ar feddalwedd wedi'i fewnosod?
    Mae gan STM32CubeMX wybodaeth adeiledig am ficroreolyddion STM32, gan gynnwys eu perifferolion a'u meddalwedd, sy'n caniatáu iddo ddarparu cynrychiolaeth graffigol i'r defnyddiwr a chynhyrchu *.h neu *.c files yn seiliedig ar ffurfweddiad y defnyddiwr.

Hanes adolygu

Tabl 3. Hanes adolygu'r ddogfen

Dyddiad Adolygu Newidiadau
29-Maw-2024 1 Rhyddhad cychwynnol.
30-Hydref-2024 2 Integreiddiad llawn o STM32CubeWL3 in STM32 Ciwb. Wedi'i ddiweddaru:

Wedi'i ddileu:

  • Offer PC, gan gynnwys Llywiwr, STM32WL3 GUI, a GUI Sequencer MR-SUBG
  • Sut gall WiSE-Studio IOMapper gynhyrchu cod yn seiliedig ar feddalwedd wedi'i fewnosod?
  • A yw Navigator yn caniatáu mynediad i adnoddau pecyn meddalwedd?

Dogfennau / Adnoddau

Pecyn Meddalwedd ST STM32WL3x [pdfCyfarwyddiadau
Pecyn Meddalwedd STM32WL3x, STM32WL3x, Pecyn Meddalwedd, Pecyn

Cyfeiriadau

Gadael sylw

Ni fydd eich cyfeiriad e-bost yn cael ei gyhoeddi. Mae meysydd gofynnol wedi'u marcio *