STM32WL3x-mynd

STM32WL3x hugbúnaðarpakki

STM32WL3x-hugbúnaðarpakki -VARA

Tæknilýsing

  • Vöruheiti: STM32CubeWL3 hugbúnaðarpakki
  • Samhæfni: STM32WL3x örstýringar
  • Helstu eiginleikar:
    • Láglaga (LL) og vélbúnaðarabstraktionslag (HAL) API
    • SigfoxTM, FatFS og FreeRTOSTM miðvararíhlutir kjarna
    • Umsóknir og sýnikennsla

Notkunarleiðbeiningar fyrir vöru

Að byrja
Til að byrja að nota STM32CubeWL3 hugbúnaðarpakkann skaltu fylgja þessum skrefum:

  1. Sæktu hugbúnaðarpakkann frá embættismanni websíða.
  2. Settu upp nauðsynlegt þróunarumhverfi (td STM32CubeIDE, EWARM, MDK-ARM).
  3. Vísa til fyrrvamples og umsóknir veittar til leiðbeiningar.

STM32CubeWL3 arkitektúr lokiðview
STM32CubeWL3 hugbúnaðarpakkinn er byggður í kringum þrjú meginstig

  • Stig 0: Vélbúnaðarabstraktlag (HAL) og BSP rekla.
  • Stig 1: Forrit, bókasöfn og íhlutir sem byggjast á samskiptareglum.

Algengar spurningar (algengar spurningar)

Sp.: Hverjir eru helstu eiginleikar STM32CubeWL3 hugbúnaðarpakkans?
A: Helstu eiginleikar fela í sér láglags- og HAL API, millihugbúnað eins og SigfoxTM, FatFS, FreeRTOSTM kjarna, forrit og sýnikennslu.

Inngangur

STM32Cube er frumlegt frumkvæði STMicroelectronics til að bæta framleiðni hönnuða verulega með því að draga úr þróunarátaki, tíma og kostnaði. STM32Cube nær yfir allt STM32 safnið.

STM32Cube inniheldur:

  • Sett af notendavænum hugbúnaðarþróunarverkfærum til að ná yfir þróun verkefna frá getnaði til framkvæmdar, þar á meðal] sem eru:
    • STM32CubeMX, grafískt hugbúnaðarstillingartæki sem gerir sjálfvirka myndun C frumstillingarkóða með myndrænum hjálp
    • STM32CubeIDE, allt-í-einn þróunarverkfæri með jaðarstillingar, kóðagerð, kóðasamsetningu og villuleitaraðgerðir
    • STM32CubeCLT, allt-í-einn skipanalínuþróunarverkfæri með kóðasöfnun, borðforritun og kembiforrit
    • STM32CubeProgrammer (STM32CubeProg), forritunartól fáanlegt í grafískum útgáfum og skipanalínuútgáfum
    • STM32CubeMonitor (STM32CubeMonitor, STM32CubeMonPwr, STM32CubeMonRF, STM32CubeMonUCPD), öflug eftirlitstæki til að fínstilla hegðun og afköst STM32 forrita í rauntíma
  • STM32Cube MCU og MPU pakkar, alhliða innbyggður hugbúnaðarvettvangur sem er sérstakur fyrir hverja örstýringu og örgjörva röð (svo sem STM32CubeWL3 fyrir STM32WL3x vörulínuna), sem innihalda:
    • STM32Cube vélbúnaðarabstraktlag (HAL), sem tryggir hámarks flytjanleika yfir STM32 eignasafnið
    • STM32Cube láglaga API, sem tryggir bestu frammistöðu og fótspor með mikilli stjórn notenda yfir] vélbúnaði
    • Samræmt sett af millihugbúnaðaríhlutum eins og FreeRTOS™ kjarna, FatFS og Sigfox™
    • Öll innbyggð hugbúnaðarforrit með fullum settum af jaðartækjum og tdamples
  • STM32Cube stækkunarpakkar, sem innihalda innbyggða hugbúnaðarhluta sem bæta við virkni STM32Cube MCU og MPU pakka með:
    • Millibúnaðarviðbætur og forritalög
    • Examples sem keyra á sumum tilteknum STMicroelectronics þróunartöflum

Þessi notendahandbók lýsir því hvernig á að byrja með STM32CubeWL3 MCU pakkanum.
Kafli 2 lýsir helstu eiginleikum STM32CubeWL3 og kafli 3 veitir yfirview af arkitektúr þess og uppbyggingu MCU pakkans.

Almennar upplýsingar

STM32CubeWL3 keyrir undir-GHz sýnikennsluforrit, þar á meðal Sigfox™ binaries, á STM32WL3x vörulínu örstýringum sem byggja á Arm® Cortex®‑M0+ örgjörvanum.
STM32WL3x örstýringarnar fella inn háþróaða undir-GHz samhæft RF útvarpstæki frá STMicroelectronics, fínstillt fyrir mjög lága orkunotkun og framúrskarandi útvarpsafköst, fyrir óviðjafnanlega endingu rafhlöðunnar.
Athugið: Arm er skráð vörumerki Arm Limited (eða dótturfélaga þess) í Bandaríkjunum og/eða annars staðar.

STM32CubeWL3 helstu eiginleikar

  • STM32CubeWL3 MCU pakkinn keyrir á STM32 32 bita örstýringum sem byggja á Arm® Cortex®-M0+ örgjörvanum. Það safnar saman, í einum pakka, öllum almennum innbyggðum hugbúnaðarhlutum sem þarf til að þróa forrit fyrir STM32WL3x vörulínu örstýringa.
  • Pakkinn inniheldur láglags (LL) og vélbúnaðarabstraktlags (HAL) API sem ná yfir örstýringarvélbúnaðinn, ásamt miklu safni af fyrrverandiamples í gangi á STMicroelectronics borðum. HAL og LL API eru fáanleg í opnu BSD leyfi fyrir notendaþægindi. Það felur einnig í sér Sigfox™, FatFS og FreeRTOS™ kjarnaíhluti.
  • STM32CubeWL3 MCU pakkinn býður einnig upp á nokkur forrit og sýnikennslu sem útfæra alla millihugbúnaðarhluta sína.
  • Útlit STM32CubeWL3 MCU pakkans íhluta er sýnt á mynd 1.

Mynd 1. STM32CubeWL3 MCU Pakki hluti 

STM32WL3x-hugbúnaðarpakki (2)

STM32CubeWL3 arkitektúr lokiðview

STM32CubeWL3 MCU pakkalausnin er byggð í kringum þrjú sjálfstæð stig sem hafa auðveldlega samskipti eins og lýst er á mynd 2. STM32WL3x-hugbúnaðarpakki (3)Stig 0
Þetta stig er skipt í þrjú undirlög:

  • Stjórnarstuðningspakki (BSP).
  • Vélbúnaðaruppdráttarlag (HAL):
    • HAL jaðartæki
    • Láglaga ökumenn
  • Grunnnotkun útlægra tdamples.

Stjórnarstuðningspakki (BSP)
Þetta lag býður upp á sett af API miðað við vélbúnaðarhlutana í vélbúnaðarborðunum (svo sem LED, hnappar og COM rekla). Það er samsett úr tveimur hlutum:

  • Hluti:
    Þetta er bílstjórinn miðað við ytra tækið á borðinu en ekki STM32. Íhlutarekillinn veitir sérstök API fyrir ytri íhluti BSP ökumanns og gæti verið flytjanlegur á hvaða öðru borði sem er.
  • BSP bílstjóri:

Það gerir kleift að tengja íhluta rekla við tiltekið borð og býður upp á sett af notendavænum API. Nafnunarreglan fyrir API er BSP_FUNCT_Action().
Example: BSP_LED_Init(), BSP_LED_On()
BSP er byggt á mát arkitektúr sem gerir kleift að flytja á hvaða vélbúnað sem er með því að innleiða aðeins lágþreps venjur.

Vélbúnaðaruppdráttarlag (HAL) og lágt lag (LL)
STM32CubeWL3 HAL og LL eru viðbót og ná yfir margs konar notkunarkröfur:

  • HAL reklarnir bjóða upp á virknimiðuð mjög flytjanleg API á háu stigi. Þeir fela MCU og útlæga flókið fyrir endanotanda.
    HAL reklarnir bjóða upp á almenn fjöltilvik eiginleikamiðuð API, sem einfalda innleiðingu notendaforrita með því að bjóða upp á ferla tilbúna til notkunar. Til dæmisample, fyrir samskiptajaðartækin (I2C, UART og fleiri), býður það upp á API sem gerir kleift að frumstilla og stilla jaðartækin, stjórna gagnaflutningi á grundvelli könnunar, truflana eða DMA ferli og meðhöndla samskiptavillur sem geta komið upp í samskiptum. HAL bílstjóri API er skipt í tvo flokka:
  1. Almenn API, sem veita sameiginlegar og almennar aðgerðir fyrir alla STM32 röð örstýringa.
  2. Framlengingarforritaskil, sem veita sérstakar og sérsniðnar aðgerðir fyrir tiltekna fjölskyldu eða tiltekið hlutanúmer.
  • Láglaga API-skilin bjóða upp á lág-stig API á skráarstigi, með betri hagræðingu en minni færanleika. Þeir þurfa djúpa þekkingu á MCU og jaðarforskriftum.
    LL reklarnir eru hannaðir til að bjóða upp á hraðvirkt og létt sérfræðimiðað lag sem er nær vélbúnaðinum en HAL. Öfugt við HAL eru LL API ekki til staðar fyrir jaðartæki þar sem bjartsýni aðgangur er ekki lykileiginleiki, eða fyrir þá sem krefjast mikillar hugbúnaðarstillingar eða flókins efri stigs stafla.

LL reklarnir eru með:

  • Safn aðgerða til að frumstilla jaðareiginleika í samræmi við færibreyturnar sem tilgreindar eru í gagnaskipulagi.
  • Set af aðgerðum til að fylla frumstillingargagnakerfi með endurstillingargildum sem samsvara hverjum reit.
  • Virkni fyrir útlæga af frumstillingu (jaðarskrár endurheimtar í sjálfgefna gildi).
  • Sett af innbyggðum aðgerðum fyrir beinan aðgang og atómskráraðgang.
  • Fullt sjálfstæði frá HAL og getu til að nota í sjálfstæðum ham (án HAL rekla).
  • Full umfjöllun um studda jaðareiginleika.

Grunnnotkun útlægra tdamples
Þetta lag umlykur fyrrvamples byggð yfir STM32 jaðartækin með því að nota aðeins HAL og BSP auðlindirnar.
Sýning tdamples eru einnig fáanleg til að sýna flóknari tdampLe atburðarás með sérstökum jaðarbúnaði, eins og MRSUBG og LPAWUR.

Stig 1
Þetta stig skiptist í tvö undirlög:

  • Millibúnaðaríhlutir
  • Examples byggt á millihugbúnaðarhlutum

Millibúnaðaríhlutir
Millibúnaðurinn er safn af bókasöfnum sem ná yfir FreeRTOS™ kjarna, FatFS og Sigfox™ samskiptareglur. Lárétt víxlverkun milli íhluta þessa lags fer fram með því að hringja í valin API.
Lóðrétt samskipti við láglaga reklana fara fram með sérstökum svarhringingum og kyrrstæðum fjölvi sem eru útfærðar í viðmóti bókasafnskerfisins.
Helstu eiginleikar hvers miðvararhluta eru sem hér segir:

  • FreeRTOS™ kjarni: útfærir rauntíma stýrikerfi (RTOS), hannað fyrir innbyggð kerfi.
  • Sigfox™: útfærir Sigfox™ samskiptareglur bókasafnið samhæft við Sigfox™ samskiptanetið og inniheldur RF prófunarsamskiptabókasafnið til að prófa gegn RF Sigfox™ verkfærum.
  • FatFS: útfærir almenna FAT file kerfiseining.

Examples byggt á millihugbúnaðarhlutum
Hver miðvararhluti kemur með eitt eða fleiri tdamples, einnig kölluð forrit, sem sýnir hvernig á að nota það. Samþætting tdamples sem nota nokkra millihugbúnaðaríhluti eru einnig til staðar.

STM32CubeWL3 vélbúnaðarpakka lokiðview

Stuðningur STM32WL3x tæki og vélbúnaður
STM32Cube býður upp á mjög flytjanlegt vélbúnaðarabstraktlag (HAL) byggt í kringum almennan arkitektúr. Það gerir grundvallarreglunni um uppbyggingu laganna, svo sem að nota millibúnaðarlagið til að útfæra virkni þeirra án þess að vita, ítarlega, hvaða MCU er notaður. Þetta bætir endurnýtanleika bókasafnskóðans og tryggir auðveldan flutning til annarra tækja.

  • Að auki, með lagskiptri arkitektúr, býður STM32CubeWL3 upp á fullan stuðning fyrir alla STM32WL3x vörulínuna.
  • Notandinn verður aðeins að skilgreina rétta fjölvi í stm32wl3x.h.

Tafla 1 sýnir fjölvi sem á að skilgreina eftir því hvaða STM32WL3x vörulínutæki er notað. Þetta fjölvi verður líka að vera skilgreint í forvinnsluforgjörvanum þýðanda.
Tafla 1. Fjölvi fyrir STM32WL3x vörulínu

Fjölvi skilgreint í stm32wl3x.h STM32WL3x vörulína tæki
stm32wl33 STM32WL33xx örstýringar

STM32CubeWL3 er með mikið sett af tdamplesum og forritum á öllum stigum, sem gerir það auðvelt að skilja og nota hvaða HAL rekla eða millihugbúnað sem er. Þessir fyrrvamples keyrt á STMicroelectronics borðunum sem skráð eru í töflu 2.

Stjórn STM32WL3x borð studd tæki
NUCLEO-WL33CC1 STM32WL33CC
NUCLEO-WL33CC2 STM32WL33CC

STM32CubeWL3 MCU pakkinn getur keyrt á hvaða samhæfu vélbúnaði sem er. Notendur uppfæra einfaldlega BSP reklana til að flytja uppgefið examples á borðum þeirra, ef þessir hafa sömu vélbúnaðareiginleika (eins og LED eða hnappar).

Fastbúnaðarpakka lokiðview
STM32CubeWL3 MCU pakkalausnin er veitt í einum rennilásum pakka með uppbyggingunni sem sýnd er á mynd 3.
Mynd 3. STM32CubeWL3 vélbúnaðarpakka uppbygging

STM32WL3x-hugbúnaðarpakki (4)

Varúð:

Notandinn má ekki breyta íhlutunum files. Notandinn getur aðeins breytt \Projects heimildunum.
Fyrir hvert borð er sett af examples er með forstilltum verkefnum fyrir EWARM, MDK-ARM og STM32CubeIDE verkfærakeðjur.
Mynd 4 sýnir uppbyggingu verkefna fyrir NUCLEO-WL33CCx töflurnar. STM32WL3x-hugbúnaðarpakki (5)

Fyrrverandiamples eru flokkuð eftir STM32CubeWL3 stigi sem þeir eiga við. Þeir eru nefndir sem hér segir:

  • Stig 0 examples eru kölluð Examples, Examples_LL, og Examples_MIX. Þeir nota hvor um sig HAL rekla, LL rekla, og blöndu af HAL og LL rekla án nokkurs millihugbúnaðarhluta. Sýning tdamples eru einnig fáanleg.
  • Stig 1 exampLesin eru kölluð forrit. Þau bjóða upp á dæmigerð notkunartilvik hvers millihugbúnaðarhluta.

Hægt er að smíða hvaða fastbúnaðarforrit sem er fyrir tiltekið borð með því að nota sniðmátsverkefnin sem eru tiltæk í Templ ates og Templates_LL möppunum.

Examples, Examples_LL, og Examples_MIX hafa sömu uppbyggingu:

  • \Inc mappa sem inniheldur allan hausinn files.
  • \Src mappan sem inniheldur frumkóðann.
  • \EWARM, \MDK-ARM og \STM32CubeIDE möppur sem innihalda forstillt verkefni fyrir hverja verkfærakeðju.
  • readme.md og readme.html sem lýsa fyrrverandiamphegðun og nauðsynlegt umhverfi til að það virki.

Að byrja með STM32CubeWL3

Að keyra fyrsta fyrrverandiample
Þessi hluti útskýrir hversu einfalt það er að keyra fyrsta fyrrverandiample innan STM32CubeWL3. Það notar sem skýringarmynd framleiðslu á einföldum LED-rofi sem keyrir á NUCLEO-WL33CC1 borðinu:

  1. Sæktu STM32CubeWL3 MCU pakkann.
  2. Taktu það upp, eða keyrðu uppsetningarforritið ef það er til staðar, í möppu að eigin vali.
  3. Gakktu úr skugga um að breyta ekki pakkaskipulaginu sem sýnt er á mynd 3. STM32CubeWL3 vélbúnaðarpakkauppbyggingu. Athugaðu að það er einnig mælt með því að afrita pakkann á stað nálægt rótarmagninu (sem þýðir C:\ST eða G:\Tests), þar sem sumar IDE lenda í vandræðum þegar leiðin er of löng.

Hvernig á að keyra HAL fyrrverandiample
Áður en þú hleður og keyrir fyrrvample, það er eindregið mælt með því að lesa fyrrvamples mig file fyrir sérstakar stillingar.

  1. Flettu í \Projects\NUCLEO-WL33CC\Examples.
  2. Opnaðu \GPIO, síðan \GPIO_EXTI möppurnar.
  3. Opnaðu verkefnið með valinn verkfærakeðju. Stutt yfirview um hvernig á að opna, byggja og reka fyrrverandiampLeið með studdu verkfærakeðjunum er gefið upp hér að neðan.
  4. Endurbyggja allt files og hlaðið myndinni inn í markminnið.
  5. Keyrðu fyrrverandiample. Fyrir frekari upplýsingar, sjá fyrrvamples mig file.

Til að opna, smíða og keyra fyrrverandiampLeið með hverri studdu verkfærakeðjunum, fylgdu skrefunum hér að neðan:

  • VARM:
  1. Undir fyrrvamples möppu, opnaðu \EWARM undirmöppuna.
  2. Ræstu Project.eww vinnusvæðið (heiti vinnusvæðisins gæti breyst úr einu tdample til annars).
  3. Endurbyggja allt files: [Verkefni]>[Endurbyggja allt].
  4. Hladdu verkefnismyndinni: [Project]>[Kembiforrit].
  5. Keyrðu forritið: [Kembi]>[Go (F5)].
  • MDK-ARM:
  1. Undir fyrrvamples möppu, opnaðu \MDK-ARM undirmöppuna.
  2. Opnaðu Project.uvproj vinnusvæðið (heiti vinnusvæðisins gæti breyst úr einu tdample til annars).
  3. Endurbyggja allt files: [Verkefni]>[Endurbyggja allt skotmark files].
  4. Hladdu verkefnismyndinni: [Kembiforrit]>[Byrja/stöðva villuleit].
  5. Keyra forritið: [Kembi]>[Keyra (F5)].
  • STM32CubeIDE:
  1. Opnaðu STM32CubeIDE verkfærakeðjuna.
  2. Smelltu á [File]>[Skipta um vinnusvæði]>[Annað] og flettu í STM32CubeIDE vinnusvæðisskrána.
  3. Smelltu á [File]>[Flytja inn], veldu [Almennt]>[Núverandi verkefni í vinnusvæði] og smelltu síðan á [Næsta].
  4. Skoðaðu STM32CubeIDE vinnusvæðisskrána og veldu verkefnið.
  5. Endurbyggja allt verkefni files: Veldu verkefnið í Project Explorer glugganum og smelltu síðan á
    [Project]>[Byggðu verkefni] valmynd.
  6.  Keyra forritið: [Run]>[Kembiforrit (F11)].

Að þróa sérsniðið forrit

Notkun STM32CubeMX til að þróa eða uppfæra forrit
Í STM32Cube MCU pakkanum eru næstum öll verkefni tdampmyndir eru búnar til með STM32CubeMX tólinu til að frumstilla kerfið, jaðartæki og millibúnað.

Bein notkun á fyrirliggjandi verkefni tdample frá STM32CubeMX tólinu krefst STM32CubeMX 6.12.0 eða hærra:

  • Eftir uppsetningu STM32CubeMX, opnaðu og ef nauðsyn krefur uppfærðu fyrirhugað verkefni.
    Einfaldasta leiðin til að opna fyrirliggjandi verkefni er að tvísmella á *.ioc file þannig að STM32CubeMX opnar sjálfkrafa verkefnið og uppruna þess files. STM32CubeMX býr til upphafskóða slíkra verkefna.
  • Aðal frumkóði forritsins er að finna í athugasemdunum „USER CODE BEGIN“ og „USER CODE END“. Ef jaðarvali og stillingum er breytt, uppfærir STM32CubeMX frumstillingarhluta kóðans á meðan aðalforritskóðinn er varðveittur.

Til að þróa sérsniðið verkefni með STM32CubeMX, fylgdu skref-fyrir-skref ferlinu:

  1. Stilltu allan nauðsynlegan innbyggðan hugbúnað með því að nota pinout-átakaleysi, klukkutrésstillingarhjálp, orkunotkunareiknivél og tólið sem framkvæmir MCU jaðarstillingar (eins og GPIO eða USART).
  2. Búðu til frumstillingar C kóða byggt á völdum uppsetningu. Þessi kóði er tilbúinn til notkunar innan nokkurra þróunarumhverfa. Notendakóði er geymdur við næstu kóða kynslóð.
    Nánari upplýsingar um STM32CubeMX er að finna í notendahandbók STM32CubeMX fyrir STM32 uppsetningu og frumstillingu C kóða kynslóð (UM1718).

Bílstjóri forrit

HAL umsókn
Þessi hluti lýsir skrefunum sem þarf til að búa til sérsniðið HAL forrit með STM32CubeWL3:

  1. Búðu til verkefni
    Til að búa til nýtt verkefni, byrjaðu annað hvort frá sniðmátsverkefninu sem gefið er upp fyrir hvert borð undir \Projects\< STM32xxx_yyy>\Templates eða frá hvaða tiltæku verkefni sem er undir \Projects\ \Tdampl es eða \Projects\ \Umsóknir (hvar vísar til nafns stjórnar). Sniðmátsverkefnið býður upp á tóma aðallykkjuaðgerð. Hins vegar er það góður upphafspunktur til að skilja STM32CubeWL32 verkefnastillingarnar. Sniðmátið hefur eftirfarandi eiginleika:
    • Það inniheldur HAL frumkóðann, CMSIS og BSP rekla, sem eru lágmarksþáttur sem þarf til að þróa kóða á tilteknu borði.
    • Það inniheldur meðfylgjandi slóðir fyrir alla vélbúnaðarhlutana.
    • Það skilgreinir studd STM32WL3x vörulínutæki, sem gerir kleift að stilla CMSIS og HAL reklana á réttan hátt.
    • Það veitir notanda tilbúinn til notkunar fileer forstillt eins og sýnt er hér að neðan:
    • HAL frumstillt með sjálfgefnum tímagrunni með Arm® kjarna SysTick.
    • SysTick ISR útfært í HAL_Delay() tilgangi.
      Athugið: Þegar núverandi verkefni er afritað á annan stað, vertu viss um að allar meðfylgjandi slóðir séu uppfærðar.
  2. Stilltu vélbúnaðarhlutana
    HAL og millihugbúnaðarhlutirnir bjóða upp á sett af stillingarvalkostum fyrir byggingartíma með því að nota fjölva #define sem lýst er yfir í haus file. Uppsetning sniðmáts file er að finna í hverjum hluta, sem verður að afrita í verkefnamöppuna (venjulega stillingarnar file heitir xxx_conf_template.h, þarf að fjarlægja brotið _template þegar það er afritað í verkefnamöppuna). Stillingin file veitir nægar upplýsingar til að skilja áhrif hvers stillingarvalkosts. Nánari upplýsingar er að finna í fylgiskjölunum fyrir hvern íhlut.
  3. Ræstu HAL bókasafnið
    Eftir að hafa hoppað yfir í aðalforritið verður forritskóðinn að hringja í HAL_Init() API til að frumstilla HAL bókasafnið, sem framkvæmir eftirfarandi verkefni:
    • Stilling á forfetch minni og SysTick truflunarforgangi (með fjölvi skilgreind í stm3 2wl3x_hal_conf.h).
    •  Stilling SysTick til að mynda truflun á millisekúndu hverri við SysTick truflunarforganginn TICK_INT_PRIO sem er skilgreindur í stm32wl3x_hal_conf.h.
    • Stilling á NVIC hópforgangi á 0.
    • Kalla á HAL_MspInit() svarhringingaraðgerð skilgreind í stm32wl3x_hal_msp.c notandanum file til að framkvæma alþjóðlegar frumstillingar vélbúnaðar á lágu stigi.
  4. Stilltu kerfisklukkuna
    Stilling kerfisklukkunnar er gerð með því að hringja í tvö API sem lýst er hér að neðan:
    • HAL_RCC_OscConfig(): þetta API stillir innri og ytri sveifluna. Notandinn velur að stilla einn eða alla sveifluna.
    • HAL_RCC_ClockConfig(): þetta API stillir uppsprettu kerfisklukkunnar, leynd í flassminni og AHB og APB forskalana.
  5. Frumstilla jaðartæki
    •  Skrifaðu fyrst útlæga frumstillingaraðgerðina. Haltu áfram sem hér segir:
    • Virkjaðu jaðarklukkuna.
    • Stilltu útlægu GPIOs.
    • Stilltu DMA rásina og virkjaðu DMA truflun (ef þörf krefur).
    • Virkjaðu jaðarrofið (ef þörf krefur).
    • Breyttu stm32xxx_it.c til að hringja í nauðsynlega truflunarstjóra (jaðartæki og DMA), ef þörf krefur.
    •  Skrifa ferli heill afturhringingaraðgerðir ef útlæg truflun eða DMA er ætlað að nota.
    •  Í notanda main.c file, frumstillið jaðarhandfangsbygginguna og hringdu síðan í jaðarfrumstillingaraðgerðina til að frumstilla jaðarbúnaðinn.
  6. Þróaðu forrit
    Á þessu stage, kerfið er tilbúið og þróun notendaforritakóða getur hafist.
    HAL veitir leiðandi og tilbúinn API til að stilla jaðartækin. Það styður skoðanakönnun, truflanir og DMA forritunarlíkan, til að mæta öllum umsóknarkröfum. Fyrir frekari upplýsingar um hvernig á að nota hvert jaðartæki, vísa til ríka fyrrverandiampsettið sem fylgir STM32CubeWL3 MCU pakkanum.

Varúð:
Í sjálfgefna HAL útfærslu er SysTick tímamælirinn notaður sem tímagrunnur: hann býr til truflanir með reglulegu millibili. Ef HAL_Delay() er kallað frá útlæga ISR ferlinu, vertu viss um að SysTick truflunin hafi hærri forgang (tölulega lægri) en jaðartruflun. Annars er ISR ferlið sem hringir
læst. Aðgerðir sem hafa áhrif á tímabasastillingar eru lýstar sem __veikar til að gera hnekkingu mögulega ef um er að ræða aðrar útfærslur í notandanum file (með því að nota almennan tímamæli, tdample, eða annar tímauppspretta).
Fyrir frekari upplýsingar, sjá HAL_TimeBase tdample.

LL umsókn
Þessi hluti lýsir skrefunum sem þarf til að búa til sérsniðið LL forrit með því að nota STM32CubeWL3.

  1. Búðu til verkefni
    Til að búa til nýtt verkefni skaltu annað hvort byrja á Templates_LL verkefninu sem gefið er upp fyrir hvert borð undir \Projects\ \Templates_LL eða úr hvaða tiltæku verkefni sem er undir \Projects\ \E xamples_LL ( vísar til nafns stjórnar, eins og NUCLEO-WL32CC33).
    Sniðmátsverkefnið býður upp á tóma aðallykkjuaðgerð, sem er góður upphafspunktur til að skilja verkstillingar fyrir STM32CubeWL3. Helstu eiginleikar sniðmátsins eru eftirfarandi:
    • Það inniheldur frumkóða LL og CMSIS rekla, sem eru lágmarksþáttur sem þarf til að þróa kóðann á tilteknu borði.
    • Það inniheldur meðfylgjandi slóðir fyrir alla nauðsynlega fastbúnaðarhluta.
    • Það velur studda STM32WL3x vörulínubúnaðinn og leyfir rétta stillingu CMSIS og LL rekla.
    • Það veitir notanda tilbúinn til notkunar files sem eru forstillt sem hér segir:
    • main.h: LED og USER_BUTTON skilgreiningarútdráttarlag.
    • main.c: Kerfisklukkustilling fyrir hámarkstíðni.
  2. Port the LL example:
    • Afritaðu/límdu Templates_LL möppuna – til að halda upprunalegu upprunanum – eða uppfærðu beint fyrirliggjandi Templa tes_LL verkefni.
    • Síðan felst flutningurinn aðallega í því að skipta um Templates_LL files eftir Examples_LL markviss verkefni.
    • Geymdu alla bretti sérstaka hluta. Til glöggvunar eru tilteknir hlutar borðs merktir með sérstökum tags:
      STM32WL3x-hugbúnaðarpakki (1)

Þannig eru helstu flutningsskrefin eftirfarandi:

  • Skiptu um stm32wl3x_it.h file.
  • Skiptu um stm32wl3x_it.c file.
  • Skiptu um aðal.h file og uppfærðu það: Haltu LED og notandahnappaskilgreiningunni á LL sniðmátinu undir BOARD SÉRSTÖK SAMSTILLING tags.
  • Skiptu um aðal.c file og uppfærðu það:
  • Haltu klukkustillingunni á SystemClock_Config() LL sniðmátsaðgerðinni undir BOARD SPECIFIC CONFIGURATION tags.
  • Það fer eftir LED skilgreiningunni, skiptu hverju LDx tilviki út fyrir annað LDy sem er tiltækt í file aðal.h.

Með þessum breytingum hefur fyrrvample keyrir á markhópnum.

RF forrit, sýnikennsla og tdamples
Mismunandi gerðir RF forrita, sýnikennslu og tdamples eru fáanleg í STM32CubeWL3 pakkanum. Þeir eru taldir upp í tveimur hlutum hér að neðan.

Undir-GHz tdamples og sýnikennslu
Þessir fyrrvamples sýna helstu eiginleika MRSUBG og LPAWUR fjarskiptajaðartækja. Þessir fyrrvamples eru fáanleg undir:

  • Verkefni\NUCLEO-WL33CC\Examples\MRSUBG
  • Verkefni\NUCLEO-WL33CC\Examples\LPAWUR
  • Verkefni\NUCLEO-WL33CC\Demonstrations\MRSUBG
  • Verkefni\NUCLEO-WL33CC\Demonstrations\LPAWUR

Hvert fyrrvampLe eða sýnikennsla samanstendur almennt af tveimur forritum sem kallast Tx og Rx sem virka sem sendir og móttakari, í sömu röð:

  • Examples/MRSUBG
    • MRSUBG_802_15_4: útfærsla á líkamlega laginu sem skilgreint er af staðlinum 802.15.4. Það sýnir hvernig á að stilla útvarpið til að senda eða taka á móti 802.15.4 pakka.
    • MRSUBG_BasicGeneric: Skipti á STM32WL3x MR_SUBG grunnpökkum.
    • MRSUBG_Chat: Einfalt forrit sem sýnir hvernig á að nota Tx og Rx á sama tæki.
    • MRSUBG_DatabufferHandler: Fyrrverandiample sem sýnir hvernig á að skipta úr Databuffer 0 og 1.
    • MRSUBG_Sequencer AutoAck: Fyrrverandiample sem sendir og tekur á móti pakkaviðurkenningum (ACKs) sjálfkrafa.
    • MRSUBG_WMBusSTD: Skipti á WM-Bus skilaboðum.
    • WakeupRadio: Fyrrumample til að prófa LPAWUR útvarps jaðartæki.
  • Mótmæli/MRSUBG
    • MRSUBG_RTC_Button_TX: Þetta tdampLe sýnir hvernig á að setja SoC í djúpstöðvunarham og stilla MRSUBG til að vekja SoC með því að ýta á PB2 til að senda ramma eða eftir að RTC tímamælirinn rennur út.
    • MRSUBG_Sequencer_Sniff: Þetta tdampLe sýnir hvernig á að stilla MRSUBG röðunartækið til að starfa í sniffham. Þetta frvample sýnir móttakarahliðina og krefst annars tækis sem sendis.
    • MRSUBG_Timer: Forritið skipuleggur nokkur tilvik af MRSUBG teljara (með sjálfvirkri endurhleðslu) með mismunandi millibili.
    • MRSUBG_WakeupRadio_Tx: Þetta tdampLe útskýrir hvernig á að setja SoC í djúpstöðvunarham og stilla MRSUBG til að vekja SoC með því að ýta á PB2 til að senda ramma. Þetta frvample sýnir sendihliðina og krefst annars tækis sem LPAWUR móttakara. Viðtakandinn fyrrvample er staðsett undir NUCLEO-WL33CC\Demonstrations\LPAWUR\LPAWUR_WakeupRad io_Rx möppunni.
  • Mótmæli/LPAWUR
    • LPAWUR_WakeupRadio_Rx: Þetta tdampLe útskýrir hvernig á að setja SoC í djúpstöðvunarstillingu og stilla LPAWUR til að vekja SoC þegar rammi kemur og er rétt móttekin. Þetta frvample sýnir móttakarahliðina og krefst annars tækis sem sendis. Sendirinn tdample er staðsett undir NUCLEO-WL33CC\Demonstrations\MRSUBG\MRSUBG_WakeupRad io_Tx möppunni.

Sigfox™ forrit
Þessi forrit sýna hvernig á að útfæra Sigfox™ atburðarás og nota tiltæk Sigfox™ API. Þau eru fáanleg í verkslóðinni Projects\NUCLEO-WL33CC\Applications\Sigfox\:

  • Sigfox_CLI: Þetta forrit sýnir hvernig á að nota skipanalínuviðmót (CLI) til að senda skipanir sem nota Sigfox™ samskiptareglur til að senda skilaboð og framkvæma forvottunarpróf.
  • Sigfox_PushButton: Þetta forrit gerir kleift að meta útvarpsgetu STM32WL33xx Sigfox™ tækisins. Með því að ýta á PB1 er send Sigfox™ prófunarrammi.

Algengar spurningar

  1. Hvenær ætti ég að nota HAL í stað LL rekla?
    HAL ökumenn bjóða upp á hágæða og virknimiðuð API, með háu stigi færanleika. Flækjustig vöru eða jaðar er falið fyrir endanotendur.
    LL reklar bjóða upp á lág-lags skráarstig API, með betri hagræðingu en minna flytjanlegur. Þeir krefjast ítarlegrar þekkingar á vöru- eða IP forskriftum.
  2. Er hægt að nota HAL og LL rekla saman? Ef já, hverjar eru takmarkanirnar?
    Það er hægt að nota bæði HAL og LL rekla. Notaðu HAL fyrir útlæga frumstillingarfasa og stjórnaðu síðan I/O aðgerðum með LL rekla.
    Helsti munurinn á HAL og LL er að HAL ökumenn þurfa að búa til og nota handföng fyrir rekstrarstjórnun á meðan LL ökumenn starfa beint á jaðarskrám. Blöndun HAL og LL er sýnd í Examples_MIX examples.
  3. Hvernig eru LL frumstillingarforritaskil virkjuð?
    Skilgreiningin á LL frumstillingar API og tengdum tilföngum (mannvirki, bókstafir og frumgerðir) er skilyrt af USE_FULL_LL_DRIVER safnrofanum.
    Til að geta notað LL frumstillingarforritaskil, bættu þessum rofa við í forvinnsluforritara verkfærakeðjuþýðanda.
  4. Er eitthvað sniðmátverkefni fyrir MRSUBG/LPAWUR jaðartæki tdamples?
    Til að búa til nýtt MRSUBG eða LPAWUR exampverkefnið, annaðhvort byrjaðu á beinagrind verkefninu sem gefið er upp undir \Pr ojects\NUCLEO-WL33CC\Examples\MRSUBG eða \Projects\NUCLEO-WL33CC\Examples\LPAWUR, eða frá hvaða tiltæku verkefni sem er undir þessum sömu möppum.
  5. Hvernig getur STM32CubeMX búið til kóða byggt á innbyggðum hugbúnaði?
    STM32CubeMX hefur innbyggða þekkingu á STM32 örstýringum, þar með talið jaðartæki þeirra og hugbúnaði, sem gerir honum kleift að veita notanda myndræna framsetningu og búa til *.h eða *.c files byggt á uppsetningu notandans.

Endurskoðunarsaga

Tafla 3. Endurskoðunarferill skjala

Dagsetning Endurskoðun Breytingar
29-mars-2024 1 Upphafleg útgáfa.
30-okt-2024 2 Full samþætting á STM32CubeWL3 in STM32 teningur. Uppfært:

Fjarlægt:

  • PC verkfæri, þar á meðal Navigator, STM32WL3 GUI, og MR-SUBG Sequencer GUI
  • Hvernig getur WiSE-Studio IOMapper búið til kóða byggt á innbyggðum hugbúnaði?
  • Leyfir Navigator aðgang að auðlindum hugbúnaðarpakka?

Skjöl / auðlindir

ST STM32WL3x hugbúnaðarpakki [pdfLeiðbeiningar
STM32WL3x hugbúnaðarpakki, STM32WL3x, hugbúnaðarpakki, pakki

Heimildir

Skildu eftir athugasemd

Netfangið þitt verður ekki birt. Nauðsynlegir reitir eru merktir *