STMicroelectronics-logo

STMicroelectronics STM32WBA Serye Pagsisimula

STMicroelectronics-STM32WBA-Series-Pagsisimula-fig-1

Impormasyon ng Produkto

Mga pagtutukoy:

  • Pangalan ng Produkto: STM32CubeWBA MCU Package
  • Tagagawa: STMicroelectronics
  • Pagkakatugma: Mga seryeng microcontroller ng STM32WBA
  • Paglilisensya: Open-source na lisensya ng BSD

Mga Tagubilin sa Paggamit ng Produkto

Pangunahing Mga Tampok ng STM32CubeWBA MCU Package:
Ang STM32CubeWBA MCU Package ay nagbibigay ng lahat ng kinakailangang naka-embed na bahagi ng software para sa pagbuo ng mga application sa mga seryeng microcontroller ng STM32WBA. Ito ay lubos na portable sa loob ng serye ng STM32 at may kasamang mga HAL at LL API, halamples, at mga bahagi ng middleware.

Tapos na ang Arkitekturaview:
Ang arkitektura ng STM32CubeWBA MCU Package ay binubuo ng tatlong antas – Mga Application, Library at mga bahaging nakabatay sa protocol, Hardware abstraction layer, BSP driver, Core driver, at Low-layer API.

FAQ

  • Ano ang kasama sa STM32CubeWBA MCU Package?
    Kasama sa package ang mga low-layer (LL) at hardware abstraction layer (HAL) API, halamples, mga application, mga bahagi ng middleware tulad ng FileX/LevelX, NetX Duo, mbed-crypto library, at higit pa.
  • Ang STM32CubeWBA MCU Package ba ay tugma sa STM32CubeMX code generator?
    Oo, ang package ay ganap na katugma sa STM32CubeMX code generator para sa pagbuo ng initialization code.

Panimula

  • Ang STM32Cube ay isang orihinal na inisyatiba ng STMicroelectronics upang makabuluhang mapabuti ang produktibidad ng designer sa pamamagitan ng pagbawas ng pagsisikap, oras, at gastos sa pag-unlad. Sinasaklaw ng STM32Cube ang buong portfolio ng STM32.
    Kasama sa STM32Cube ang:
    • Isang set ng user-friendly na software development tool upang masakop ang pagbuo ng proyekto mula sa paglilihi hanggang sa pagsasakatuparan, kabilang dito ang:
      • STM32CubeMX, isang graphical software configuration tool na nagbibigay-daan sa awtomatikong pagbuo ng C initialization code gamit ang graphical wizards
      • STM32CubeIDE, isang all-in-one development tool na may peripheral configuration, code generation, code compilation, at debug feature
      • STM32CubeCLT, isang all-in-one na command-line development toolset na may code compilation, board programming, at mga feature ng debug
      • STM32CubeProgrammer (STM32CubeProg), isang programming tool na available sa graphical at command-line na mga bersyon
      • STM32CubeMonitor (STM32CubeMonitor, STM32CubeMonPwr, STM32CubeMonRF, STM32CubeMonUCPD), makapangyarihang mga tool sa pagsubaybay upang maayos ang pag-uugali at pagganap ng mga STM32 application sa real time
    • STM32Cube MCU at MPU Packages, mga komprehensibong embedded-software platform na partikular sa bawat microcontroller at microprocessor series (gaya ng STM32CubeWBA para sa STM32WBA series), na kinabibilangan ng:
      • STM32Cube hardware abstraction layer (HAL), na tinitiyak ang maximum na portability sa buong STM32 portfolio
      • STM32Cube low-layer API, na tinitiyak ang pinakamahusay na performance at mga footprint na may mataas na antas ng kontrol ng user sa hardware
      • Isang pare-parehong hanay ng mga bahagi ng middleware tulad ng ThreadX, FileX / LevelX, NetX Duo, USBX, touch library, mbed-crypto, TFM, MCUboot, OpenBL, at STM32_WPAN (kabilang ang Bluetooth® Low Energy profiles at mga serbisyo, Mesh, Zigbee®, OpenThread, Matter, at 802.15.4 MAC layer)
      • Lahat ng naka-embed na software utilities na may kumpletong hanay ng peripheral at applicative halamples
    • STM32Cube Expansion Packages, na naglalaman ng mga naka-embed na bahagi ng software na umaakma sa mga functionality ng STM32Cube MCU at MPU Package na may:
      • Mga extension ng middleware at applicative na layer
      • Examples na tumatakbo sa ilang partikular na STMicroelectronics development boards
  • Inilalarawan ng user manual na ito kung paano magsimula sa STM32CubeWBA MCU Package.
    • Seksyon 2 STM32CubeWBA pangunahing tampok ay naglalarawan sa mga pangunahing tampok ng STM32CubeWBA MCU Package.
    • Seksyon 3 STM32CubeWBA architecture tapos naview nagbibigay ng higitview ng arkitektura ng STM32CubeWBA at ang istraktura ng MCU Package.

Pangkalahatang impormasyon

Ang STM32CubeWBA MCU Package ay tumatakbo sa STM32 32-bit microcontrollers batay sa Arm® Cortex®-M33 processor na may Arm® TrustZone® at FPU.
Tandaan: Ang Arm at TrustZone ay mga rehistradong trademark ng Arm Limited (o mga subsidiary nito) sa US at/o saanman.

STM32CubeWBA pangunahing tampok

  • Gumagana ang STM32CubeWBA MCU Package sa STM32 32-bit microcontrollers batay sa Arm® Cortex®-M33 processor na may TrustZone® at FPU.
  • Kinokolekta ng STM32CubeWBA, sa isang pakete, ang lahat ng generic na naka-embed na bahagi ng software na kinakailangan upang bumuo ng isang application para sa mga microcontroller ng serye ng STM32WBA. Alinsunod sa inisyatiba ng STM32Cube, ang hanay ng mga bahagi na ito ay lubos na nadala, hindi lamang sa loob ng mga seryeng microcontroller ng STM32WBA kundi pati na rin sa iba pang serye ng STM32.
  • Ang STM32CubeWBA ay ganap na katugma sa STM32CubeMX code generator, upang makabuo ng initialization code. Kasama sa package ang mga low-layer (LL) at hardware abstraction layer (HAL) API na sumasaklaw sa microcontroller hardware, kasama ang isang malawak na hanay ng examples na tumatakbo sa STMicroelectronics boards. Ang HAL at LL API ay available sa isang open-source na lisensya ng BSD para sa kaginhawahan ng user.
  • Ang STM32CubeWBA MCU Package ay naglalaman din ng isang komprehensibong bahagi ng middleware na binuo sa paligid ng Microsoft® Azure® RTOS middleware, at iba pang mga in-house at open-source na stack, na may kaukulang examples.
  • Ang mga ito ay may kasamang libre, user-friendly na mga tuntunin sa lisensya:
    • Pinagsama at buong tampok na Azure® RTOS: Azure® RTOS ThreadX
    • Pagpapatupad ng CMSIS-RTOS sa Azure® RTOS ThreadX
    • USB Host at Device stack na may maraming klase: Azure® RTOS USBX
    • Advanced file system at layer ng pagsasalin ng flash: FileX / LevelX
    • Industrial grade networking stack: na-optimize para sa performance na kasama ng maraming IoT protocol: NetX Duo
    • OpenBootloader
    • Arm® Trusted Firmware-M (TF‑M) na solusyon sa pagsasama
    • mbed-crypto na mga aklatan
    • ST Netwok Library
    • STMTouch touch sensing library solution
  • Ang ilang mga aplikasyon at demonstrasyon na nagpapatupad ng lahat ng mga bahaging ito ng middleware ay ibinibigay din sa STM32CubeWBA MCU Package.
  • Ang layout ng bahagi ng STM32CubeWBA MCU Package ay inilalarawan sa Figure 1. Mga bahagi ng STM32CubeWBA MCU Package .

    STMicroelectronics-STM32WBA-Series-Pagsisimula-fig-2

Tapos na ang arkitektura ng STM32CubeWBAview

Ang solusyon sa pakete ng STM32CubeWBA MCU ay binuo sa paligid ng tatlong independiyenteng antas na madaling nakikipag-ugnayan tulad ng inilarawan sa Figure 2. STM32CubeWBA MCU package architecture.

STMicroelectronics-STM32WBA-Series-Pagsisimula-fig-3

Antas 0

Ang antas na ito ay nahahati sa tatlong sublayer:

  • Board support package (BSP).
  • Hardware abstraction layer (HAL):
    • Mga driver ng peripheral ng HAL
    • Mga driver na may mababang layer
  • Pangunahing paggamit ng peripheral halamples.

Board support package (BSP)
Nag-aalok ang layer na ito ng isang hanay ng mga API na nauugnay sa mga bahagi ng hardware sa mga hardware board (gaya ng LCD, Audio,\ microSD™, at MEMS driver). Ito ay binubuo ng dalawang bahagi:

  • Component driver:
    Ang driver na ito ay nauugnay sa panlabas na device sa board, at hindi sa STM32 device. Nagbibigay ang component driver ng mga partikular na API sa mga external na component ng BSP driver at maaaring madala sa anumang iba pang board.
  • BSP driver:
    Ang driver ng BSP ay nagbibigay-daan sa pag-link ng mga component driver sa isang partikular na board, at nagbibigay ng isang set ng user-friendly
    Mga API. Ang panuntunan sa pagpapangalan ng API ay BSP_FUNCT_Action().
    Example: BSP_LED_Init(), BSP_LED_On()
    Ang BSP ay batay sa isang modular na arkitektura na nagbibigay-daan sa madaling pag-port sa anumang hardware sa pamamagitan lamang ng pagpapatupad ng mababang antas na mga gawain.

Hardware abstraction layer (HAL) at low-layer (LL)
Ang STM32CubeWBA HAL at LL ay pantulong at sumasaklaw sa malawak na hanay ng mga kinakailangan sa aplikasyon:

  • Ang mga driver ng HAL ay nag-aalok ng mataas na antas ng function-oriented na mataas na portable na mga API. Itinatago nila ang MCU at peripheral complexity sa end-user.
    Ang mga driver ng HAL ay nagbibigay ng mga generic na multi-instance na feature-oriented na API, na nagpapasimple sa pagpapatupad ng application ng user sa pamamagitan ng pagbibigay ng mga prosesong handa-gamitin. Para kay exampPara sa mga peripheral ng komunikasyon (I2S, UART, at iba pa), nagbibigay ito ng mga API na nagbibigay-daan sa pagsisimula at pag-configure ng peripheral, pamamahala ng paglilipat ng data batay sa proseso ng botohan, pag-interrupt, o DMA, at paghawak ng mga error sa komunikasyon na maaaring lumitaw sa panahon ng komunikasyon. Ang mga HAL driver API ay nahahati sa dalawang kategorya:
    1. Mga Generic na API, na nagbibigay ng mga pangkaraniwan at generic na function sa lahat ng STM32 series na microcontroller.
    2. Mga Extension API, na nagbibigay ng mga partikular at customized na function para sa isang partikular na pamilya o isang partikular na numero ng bahagi.
  • Ang mga low-layer na API ay nagbibigay ng mga low-level na API sa antas ng rehistro, na may mas mahusay na pag-optimize ngunit mas mababa ang portability.
    • Nangangailangan sila ng malalim na kaalaman sa mga detalye ng MCU at peripheral.
    • Ang mga driver ng LL ay idinisenyo upang mag-alok ng isang mabilis na magaan na layer na nakatuon sa eksperto na mas malapit sa hardware kaysa sa HAL. Taliwas sa HAL, ang mga LL API ay hindi ibinibigay para sa mga peripheral kung saan ang naka-optimize na pag-access ay hindi isang pangunahing tampok, o para sa mga nangangailangan ng mabigat na configuration ng software o kumplikadong upper-level na stack.
    • Ang tampok na mga driver ng LL:
      • Isang hanay ng mga function upang simulan ang mga peripheral na pangunahing tampok ayon sa mga parameter na tinukoy sa mga istruktura ng data.
      • Isang hanay ng mga function upang punan ang mga istruktura ng data ng initialization ng mga halaga ng pag-reset na naaayon sa bawat field.
      • Function para sa peripheral deinitialization (mga peripheral register na naibalik sa kanilang mga default na halaga).
      • Isang set ng mga inline na function para sa direktang at atomic register access.
      • Buong pagsasarili mula sa HAL at kakayahang magamit sa standalone mode (walang mga driver ng HAL).
      • Buong saklaw ng mga sinusuportahang peripheral na tampok.

Pangunahing paggamit ng peripheral halamples
Ang layer na ito ay nakapaloob sa examples built over the STM32 peripheral gamit lang ang HAL at BSP resources.

Antas 1

Ang antas na ito ay nahahati sa dalawang sublayer:

  • Mga bahagi ng middleware
  • Examples batay sa mga bahagi ng middleware

Mga bahagi ng middleware

  • Ang middleware ay isang hanay ng mga aklatan na sumasaklaw sa Bluetooth® Low Energy (Linklayer, HCI, Stack), Thread®, Zigbee®,
  • Matter, OpenBootloader, Microsoft® Azure® RTOS, TF‑M, MCUboot, at mbed-crypto.
  • Ang pahalang na pakikipag-ugnayan sa pagitan ng mga bahagi ng layer na ito ay ginagawa sa pamamagitan ng pagtawag sa mga itinatampok na API.
  • Ang vertical na pakikipag-ugnayan sa mga low-layer na driver ay ginagawa sa pamamagitan ng mga partikular na callback at static na macro na ipinatupad sa interface ng tawag sa system ng library.
  • Ang mga pangunahing tampok ng bawat bahagi ng middleware ay ang mga sumusunod:
    • Microsoft® Azure® RTOS
      • Azure® RTOS ThreadX: Isang real-time na operating system (RTOS), na idinisenyo para sa mga naka-embed na system na may dalawang functional mode.
        • Karaniwang mode: Mga karaniwang pagpapagana ng RTOS gaya ng pamamahala at pag-synchronize ng thread, pamamahala ng memory pool, pagmemensahe, at pangangasiwa ng kaganapan.
        • Module mode: Isang advanced na user mode na nagbibigay-daan sa pag-load at pag-unload ng mga naka-prelink na ThreadX module sa mabilisang paraan sa pamamagitan ng module manager.
      • NetX Duo
      • FileX
      • USBX
    • Bluetooth® Low Energy (BLE): Ipinapatupad ang Bluetooth® Low Energy protocol para sa Link at Stack layer.
    • MCUboot (open-source software)
    • Mga protocol ng Zigbee® para sa stack at mga nauugnay na cluster.
    • Thread® protocol stack at link layer.
    • Arm® trusted firmware-M, TF‑M (open-source software): Reference na pagpapatupad ng Arm® platform security architecture (PSA) para sa TrustZone® kasama ang mga nauugnay na secure na serbisyo.
    • mbed-crypto (open-source software): Ang mbed-crypto middleware ay nagbibigay ng PSA cryptography API na pagpapatupad.
    • STM32 Touch sensing library: Matatag na STMTouch capacitive touch sensing solution, sumusuporta sa proximity, touchkey, linear at rotary touch sensor. Ito ay batay sa isang napatunayang prinsipyo ng pagkuha ng paglilipat ng bayad sa ibabaw.

Examples batay sa mga bahagi ng middleware
Ang bawat bahagi ng middleware ay may kasamang isa o higit pang examples (tinatawag ding mga application) na nagpapakita kung paano ito gamitin. Integrasyon halampAng mga gumagamit na gumagamit ng ilang bahagi ng middleware ay ibinibigay din.

Tapos na ang package ng firmware ng STM32CubeWBAview

Mga sinusuportahang STM32WBA series na device at hardware

  • Nag-aalok ang STM32Cube ng isang mataas na portable na hardware abstraction layer (HAL) na binuo sa paligid ng isang generic na arkitektura. Binibigyang-daan nito ang prinsipyo ng build-upon layers, tulad ng paggamit ng middleware layer na ipatupad ang kanilang mga function nang hindi nalalaman, nang malalim, kung ano ang MCU na ginagamit. Pinapabuti nito ang muling paggamit ng code ng library at tinitiyak ang madaling pagdadala sa iba pang mga device.
  • Bilang karagdagan, salamat sa layered architecture nito, nag-aalok ang STM32CubeWBA ng buong suporta sa lahat ng serye ng STM32WBA.
  • Kailangan lang tukuyin ng user ang tamang macro sa stm32wbaxx.h.
  • Ipinapakita ng talahanayan 1 ang macro na tutukuyin depende sa STM32WBA series device na ginamit. Ang macro na ito ay dapat ding tukuyin sa compiler preprocessor.
    Talahanayan 1. Mga Macro para sa serye ng STM32WBA
    Tinukoy ang macro sa stm32wbaxx.h STM32WBA series na mga device
    stm32wba52xx STM32WBA52CGU6, STM32WBA52KGU6, STM32WBA52CEU6, STM32WBA52KEU6
    stm32wba55xx STM32WBA55CGU6, STM32WBA55CGU6U, STM32WBA55CGU7, STM32WBA55CEU6, STM32WBA55CEU7

     

  • Nagtatampok ang STM32CubeWBA ng isang rich set ng examples at application sa lahat ng antas na ginagawang madaling maunawaan at gamitin ang anumang HAL driver o middleware na mga bahagi. Itong mga examptumatakbo sa mga STMicroelectronics board na nakalista sa Talahanayan 2.
    Talahanayan 2. Mga board para sa seryeng STM32WBA
    Lupon I-board ang mga sinusuportahang device ng STM32WBA
    NUCLEO-WBA52CG STM32WBA52CGU6
    NUCLEO-WBA55CG STM32WBA55CGU6
    STM32WBA55-DK1 STM32WBA55CGU7
  • Ang STM32CubeWBA MCU package ay maaaring tumakbo sa anumang katugmang hardware. Ina-update lang ng user ang mga driver ng BSP para i-port ang ibinigay na examples sa board, kung ang huli ay may parehong mga feature ng hardware (tulad ng LED, LCD display, at mga button).
Tapos na ang firmware packageview
  • Ang solusyon sa pakete ng STM32CubeWBA ay ibinibigay sa isang solong zip package na mayroong istrakturang ipinapakita sa Figure 3. STM32CubeWBA firmware package structure.

    STMicroelectronics-STM32WBA-Series-Pagsisimula-fig-4

  • Para sa bawat board, isang set ng exampAng les ay binibigyan ng mga paunang na-configure na proyekto para sa EWARM, MDK-ARM, at STM32CubeIDE na mga toolchain.
  • Larawan 4. STM32CubeWBA halamptapos naview ipinapakita ang istraktura ng proyekto para sa mga board ng NUCLEO‑WBA52CG, NUCLEO-WBA55CG at STM32WBA55G-DK1.

    STMicroelectronics-STM32WBA-Series-Pagsisimula-fig-5

  • Ang exampAng mga les ay inuri depende sa antas ng STM32Cube kung saan nila inilalapat, at pinangalanan ang mga ito bilang sumusunod:
    • Antas 0 halamples ay tinatawag na Halamples, Halamples_LL, at Halamples_MIX. Gumagamit sila ayon sa pagkakabanggit ng mga driver ng HAL, mga driver ng LL, at isang halo ng mga driver ng HAL at LL nang walang anumang bahagi ng middleware.
    • Antas 1 halamples ay tinatawag na Applications. Nagbibigay sila ng mga karaniwang kaso ng paggamit ng bawat bahagi ng middleware. Ang anumang application ng firmware para sa isang partikular na board ay maaaring mabilis na mabuo salamat sa mga proyekto ng template na magagamit sa mga direktoryo ng Templ at Templates_LL.

Mga proyektong pinagana ang TrustZone®

  • Pinagana ang TrustZone® HalampAng mga pangalan ay naglalaman ng prefix na _TrustZone. Inilapat din ang panuntunan para sa mga Applicatio ns (maliban sa TFM at SBSFU, na katutubong para sa TrustZone®).
  • TrustZone®-enabled Halamples and Applications ay binibigyan ng multiproject structure na binubuo ng secure at nonsecure na mga subproject gaya ng ipinakita sa Figure 5. Multiproject secure at nonsecure na istraktura ng proyekto.
  • Ang mga proyektong pinagana ng TrustZone® ay binuo ayon sa template ng CMSIS-5 na device, na pinalawak upang isama ang header ng partitioning ng system file partition_ .h, na pangunahing responsable para sa pag-setup ng secure attribute unit (SAU), ang FPU, at ang secure/nonsecure interrupts assignment sa secure na execution state.
  • Isinasagawa ang setup na ito sa secure na CMSIS SystemInit() function, na tinatawag sa startup bago ipasok ang secure na application main() function. Sumangguni sa Arm® TrustZone®-M na dokumentasyon ng mga alituntunin ng software.

    STMicroelectronics-STM32WBA-Series-Pagsisimula-fig-6

  • Ang STM32CubeWBA package firmware package ay nagbibigay ng default na memory partitioning sa partition _ .h files available sa ilalim ng: \Drivers\CMSIS\Device\ST\STM32WBAxx\Include\T emplates
  • Sa mga partisyon na ito files, ang SAU ay hindi pinagana bilang default. Dahil dito, ang IDAU memory mapping ay ginagamit para sa security attribution. Sumangguni sa figure Secure/non-secure partitioning gamit ang TrustZone® technology sa RM0495 reference manual.
  • Kung pinagana ng user ang SAU, ang default na configuration ng mga rehiyon ng SAU ay paunang natukoy sa partition files tulad ng sumusunod:
    • SAU region 0: 0x08080000 – 0x081FFFFF (hindi secure na kalahati ng flash memory (512 Kbytes))
    • Rehiyon 1 ng SAU: 0x0BF88000 – 0x0BF97FFF (hindi secure na memorya ng system)
    • Rehiyon 2 ng SAU: 0x0C07E000 – 0x0C07FFFF (secure, hindi secure na matatawag)
    • Rehiyon 3 ng SAU: 0x20010000 – 0x2001FFFF (hindi secure na SRAM2 (64 Kbytes))
    • SAU region 4: 0x40000000 – 0x4FFFFFFF (hindi secure na peripheral na naka-map na memorya)
  • Upang tumugma sa default na partitioning, ang mga STM32WBAxx series na device ay dapat na may sumusunod na user option byte set:
    • TZEN = 1 (TrustZone®-enabled device)
    • SECWM1_PSTRT = 0x0 SECWM1_PEND = 0x3F (64 sa 128 na pahina ng internal flash memory na itinakda bilang secure) Tandaan: Ang internal flash memory ay ganap na secure bilang default sa TZEN = 1. Ang user option bytes SECWM1_PSTRT/ SECWM1_PEND ay dapat itakda ayon sa application pagsasaayos ng memorya (mga rehiyon ng SAU, kung pinagana ang SAU). Secure/nonsecure application project linker files ay dapat ding nakahanay.
  • Lahat exampang mga ito ay may parehong istraktura:
    • \Inc folder na naglalaman ng lahat ng header files.
    • Src folder na naglalaman ng source code.
    • \EWARM, \MDK-ARM, at \STM32CubeIDE na mga folder na naglalaman ng paunang na-configure na proyekto para sa bawat toolchain.
    • readme.md at readme.html na naglalarawan sa exampang pag-uugali at kinakailangang kapaligiran upang magawa ito.
    • ioc file na nagpapahintulot sa mga user na buksan ang karamihan sa firmware examples sa loob ng STM32CubeMX.

Pagsisimula sa STM32CubeWBA

Nagpapatakbo ng unang HAL example

Ipinapaliwanag ng seksyong ito kung gaano kadaling patakbuhin ang unang exampsa loob ng STM32CubeWBA. Ginagamit nito bilang isang paglalarawan ang pagbuo ng isang simpleng LED toggle na tumatakbo sa NUCLEO-WBA52CG board:

  1. I-download ang STM32CubeWBA MCU package.
  2. I-unzip ito sa isang direktoryo na iyong pinili.
  3. Tiyaking huwag baguhin ang istraktura ng package na ipinapakita sa Figure 1. Inirerekomenda din na kopyahin ang package sa isang lokasyon na malapit sa iyong root volume (ibig sabihin C:\ST o G:\Tests), dahil ang ilang IDE ay nakakaranas ng mga problema kapag ang path ang haba ay masyadong mahaba.

Pagpapatakbo ng unang TrustZone® na pinagana halample

  • Bago mag-load at magpatakbo ng TrustZone® na pinagana halample, sapilitan basahin ang exampbasahin mo ako file para sa anumang partikular na pagsasaayos, na nagsisiguro na ang seguridad ay pinagana gaya ng inilarawan sa Seksyon 4.2.1 TrustZone® na mga proyektong pinagana (TZEN=1 (byte ng opsyon ng user)).
    1. Mag-browse sa \Projects\NUCLEO-WBA52CG\Examples.
    2. Buksan ang \GPIO, pagkatapos ay \GPIO_IOToggle_TrustZone folder.
    3. Buksan ang proyekto gamit ang iyong gustong toolchain. Isang mabilis na paglipasview kung paano magbukas, bumuo, at magpatakbo ng exampAng kasama ang mga suportadong toolchain ay ibinigay sa ibaba.
    4. Buuin muli sa pagkakasunud-sunod ang lahat ng secure at hindi secure na proyekto files at i-load ang secure at hindi secure na mga imahe sa target na memorya.
    5. Patakbuhin ang example: regular, i-toggle ng secure na application ang LD2 bawat segundo, at ang hindi secure na application ay i-toggle ang LD3 nang dalawang beses nang mas mabilis. Para sa higit pang mga detalye, sumangguni sa readme file ng example.
  • Upang buksan, bumuo at magpatakbo ng isang exampgamit ang mga sinusuportahang toolchain, sundin ang mga hakbang sa ibaba:
    • EWARM:
      1. Sa ilalim ng exampsa folder, buksan ang \EWARM subfolder.
      2. Ilunsad ang Project.eww workspace
      3. Muling itayo ang xxxxxx_S secure na proyekto files: [Proyekto]>[Buuin muli ang lahat].
      4. Itakda ang xxxxx_NS nonsecure project bilang Active application (right click sa xxxxx_NS project [Set as Active])
      5. Muling itayo ang xxxxx_NS hindi secure na proyekto files: [Proyekto]>[Buuin muli ang lahat].
      6. I-flash ang hindi secure na binary gamit ang [Project]>[Download]>[Download active application] .
      7. Itakda ang xxxxx_S bilang Aktibong application (i-right click sa proyektong xxxxx_S [Itakda bilang Aktibo].
      8. I-flash ang secure na binary gamit ang [Download and Debug] (Ctrl+D).
      9. Patakbuhin ang program: [Debug]>[Go(F5)]
    • MDK-ARM:
      1. Buksan ang \MDK-ARM toolchain.
      2. Buksan ang Multiprojects workspace file Project.uvmpw.
      3. Piliin ang proyekto ng xxxxx_s bilang Aktibong application ([Itakda bilang Aktibong Proyekto]).
      4. Buuin ang proyekto ng xxxxx_s.
      5. Piliin ang proyektong xxxxxx_ns bilang Aktibong proyekto ([Itakda bilang Aktibong Proyekto]).
      6. Buuin ang proyektong xxxxxx_ns.
      7. I-load ang hindi secure na binary ([F8]). Dina-download nito ang \MDK-ARM\xxxxx_ns\Exe\xxxxx_ns.axf sa flash memory)
      8. Piliin ang Project_s project bilang Active project ([Set as Active Project]).
      9. I-load ang secure na binary ([F8]). Dina-download nito ang \MDK-ARM\xxxxx_s\Exe\xxxxx_s.axf sa flash memory).
      10. Patakbuhin ang example.
    • STM32CubeIDE:
      1. Buksan ang STM32CubeIDE toolchain.
      2. Buksan ang Multiprojects workspace file .proyekto.
      3. Muling itayo ang xxxxx_Secure na proyekto.
      4. Buuin muli ang xxxxx_NonSecure na proyekto.
      5. Ilunsad ang application na [Debug bilang STM32 Cortex-M C/C++] para sa secure na proyekto.
      6. Sa window ng [I-edit ang configuration], piliin ang panel ng [Startup], at idagdag ang pag-load ng imahe at mga simbolo ng hindi secure na proyekto.
        Mahalaga: Dapat na mai-load ang hindi secure na proyekto bago ang secure na proyekto.
      7. I-click ang [Ok].
      8. Patakbuhin ang example sa debug perspective.

Pagpapatakbo ng unang TrustZone® na hindi pinagana halample

  • Bago mag-load at magpatakbo ng TrustZone® na hindi pinagana halample, sapilitan basahin ang exampbasahin mo ako file para sa anumang partikular na pagsasaayos. Kung walang mga partikular na pagbanggit, tiyaking ang board device ay hindi pinagana ang seguridad (TZEN=0 (user option byte)). Tingnan ang FAQ para sa paggawa ng opsyonal na regression sa TZEN = 0
    1. Mag-browse sa \Projects\NUCLEO-WBA52CG\Examples.
    2. Buksan ang \GPIO, pagkatapos ay \GPIO_EXTI folder.
    3. Buksan ang proyekto gamit ang iyong gustong toolchain. Isang mabilis na paglipasview kung paano magbukas, bumuo, at magpatakbo ng exampAng kasama ang mga suportadong toolchain ay ibinigay sa ibaba.
    4. Buuin muli ang lahat files at i-load ang iyong imahe sa target na memorya.
    5. Patakbuhin ang example: Sa tuwing pipindutin ang [USER] push-button, ang LD1 LED ay magpapalipat-lipat. Para sa higit pang mga detalye, sumangguni sa readme file ng example.
  • Upang buksan, bumuo at magpatakbo ng isang exampgamit ang mga sinusuportahang toolchain, sundin ang mga hakbang sa ibaba:
    • EWARM:
      1. Sa ilalim ng exampsa folder, buksan ang \EWARM subfolder.
      2. Ilunsad ang Project.eww workspace (ang pangalan ng workspace ay maaaring magbago mula sa isang example sa iba).
      3. Buuin muli ang lahat files: [Proyekto]>[Buuin muli ang lahat].
      4. I-load ang larawan ng proyekto: [Proyekto]>[Debug].
      5. Patakbuhin ang program: [Debug]>[Go (F5)].
    • MDK-ARM:
      1. Sa ilalim ng exampsa folder, buksan ang \MDK-ARM subfolder.
      2. Ilunsad ang Project.uvproj workspace (ang pangalan ng workspace ay maaaring magbago mula sa isang example sa iba).
      3. Buuin muli ang lahat files:[Proyekto]>[Buuin muli ang lahat ng target files]
      4. I-load ang larawan ng proyekto: [Debug]>[Start/Stop Debug Session].
      5. Patakbuhin ang program: [Debug]>[Run (F5)].
    • STM32CubeIDE:
      1. Buksan ang STM32CubeIDE toolchain.
      2. I-click ang [File]>[Lumipat ng Workspace]>[Iba pa] at mag-browse sa direktoryo ng STM32CubeIDE workspace.
      3. I-click ang [File]>[Import] , piliin ang [General]>[Mga Umiiral na Proyekto sa Workspace], at pagkatapos ay i-click ang [Next].
      4. Mag-browse sa direktoryo ng STM32CubeIDE workspace at piliin ang proyekto.
      5. Muling itayo ang lahat ng proyekto files: Piliin ang proyekto sa window ng [Project Explorer] pagkatapos ay i-click ang menu na [Project]>[Build project].
      6. Patakbuhin ang programa: [Run]>[Debug (F11)]
Pagbuo ng custom na application

Tandaan: Dapat paganahin ng software ang instruction cache (ICACHE) upang makakuha ng 0 wait-state execution mula sa flash memory, at maabot ang pinakamataas na performance at mas mahusay na paggamit ng kuryente.

Gamit ang STM32CubeMX para bumuo o mag-update ng application

  • Sa STM32CubeWBA MCU package, halos lahat ng project exampAng mga les ay nabuo gamit ang tool na STM32CubeMX upang simulan ang system, peripheral, at middleware.
  • Ang direktang paggamit ng isang umiiral na proyekto halampAng mula sa tool na STM32CubeMX ay nangangailangan ng STM32CubeMX 6.10.0 o mas mataas:
    • Pagkatapos ng pag-install ng STM32CubeMX, buksan at kung kinakailangan i-update ang isang iminungkahing proyekto. Ang pinakasimpleng paraan upang buksan ang isang kasalukuyang proyekto ay ang pag-double click sa *.ioc file upang awtomatikong mabuksan ng STM32CubeMX ang proyekto at ang pinagmulan nito files.
    • Binubuo ng STM32CubeMX ang initialization source code ng naturang mga proyekto. Ang pangunahing application source code ay naglalaman ng mga komentong "USER CODE BEGIN" at "USER CODE END". Kung sakaling mabago ang pagpili at setting ng IP, ina-update ng STM32CubeMX ang bahagi ng pagsisimula ng code ngunit pinapanatili ang pangunahing source code ng application.
  • Para sa pagbuo ng custom na proyekto sa STM32CubeMX, sundin ang hakbang-hakbang na proseso:
    1. Piliin ang STM32 microcontroller na tumutugma sa kinakailangang hanay ng mga peripheral.
    2. I-configure ang lahat ng kinakailangang naka-embed na software gamit ang isang pinout-conflict solver, isang clock-tree setting helper, isang power consumption calculator, at ang utility na gumaganap ng MCU peripheral configuration (gaya ng GPIO o USART) at middleware stack (gaya ng USB).
    3. Bumuo ng initialization C code batay sa napiling configuration. Ang code na ito ay handa nang gamitin sa loob ng ilang development environment. Ang user code ay pinananatili sa susunod na henerasyon ng code.
  • Para sa higit pang impormasyon tungkol sa STM32CubeMX, sumangguni sa user manual na STM32CubeMX para sa STM32 configuration at initialization C code generation (UM1718).
  • Para sa isang listahan ng magagamit na proyekto halamples para sa STM32CubeWBA, sumangguni sa application note STM32Cube firmware examples para sa STM32WBA series (AN5929).

Mga application ng driver

aplikasyon ng HAL
Inilalarawan ng seksyong ito ang mga hakbang na kinakailangan upang lumikha ng custom na HAL application gamit ang STM32CubeWBA:

  1. Gumawa ng proyekto
    • Upang lumikha ng bagong proyekto, magsimula sa alinman sa proyektong Template na ibinigay para sa bawat board sa ilalim ng \Projects\ \Mga template o mula sa anumang magagamit na proyekto sa ilalim ng \Projects\ \Mga pagsusulit o \Mga Proyekto\ \Applications (kung saan ay tumutukoy sa pangalan ng board, tulad ng STM32CubeWBA).
    • Ang proyektong Template ay nagbibigay ng walang laman na pangunahing loop function. Gayunpaman, ito ay isang magandang panimulang punto upang maunawaan ang mga setting ng proyekto ng STM32CubeWBA. Ang template ay may mga sumusunod na katangian:
      • Naglalaman ito ng HAL source code, CMSIS, at mga driver ng BSP, na siyang pinakamababang hanay ng mga sangkap na kinakailangan upang bumuo ng isang code sa isang partikular na board.
      • Naglalaman ito ng mga kasamang landas para sa lahat ng mga bahagi ng firmware.
      • Tinutukoy nito ang mga sinusuportahang device ng serye ng STM32WBA, na nagpapahintulot sa mga driver ng CMSIS at HAL na ma-configure nang tama.
      • Nagbibigay ito ng handa-gamitin na user files preconfigured tulad ng ipinapakita sa ibaba:
        Sinimulan ang HAL gamit ang default na time base gamit ang Arm® core SysTick. Ipinatupad ang SysTick ISR para sa layunin ng HAL_Delay().
        Tandaan: Kapag kinokopya ang isang umiiral nang proyekto sa ibang lokasyon, tiyaking na-update ang lahat ng kasamang path.
  2. Idagdag ang kinakailangang middleware sa proyekto ng user (opsyonal)
    Upang matukoy ang pinagmulan files na idadagdag sa proyekto file listahan, sumangguni sa dokumentasyong ibinigay para sa bawat middleware. Sumangguni sa mga application sa ilalim ng \Projects\STM32xxx_yyy\Applications\ (saan ay tumutukoy sa middleware stack, tulad ng ThreadX) upang malaman kung aling pinagmulan files at isama ang mga landas ay dapat idagdag.
  3. I-configure ang mga bahagi ng firmware
    Ang mga bahagi ng HAL at middleware ay nag-aalok ng isang set ng build-time na mga opsyon sa configuration gamit ang macros #define na idineklara sa isang header file. Isang configuration ng template file ay ibinigay sa loob ng bawat bahagi, na kailangang kopyahin sa folder ng proyekto (karaniwan ay ang configuration file ay pinangalanang xxx_conf_template.h, ang salitang _template ay kailangang alisin kapag kinokopya ito sa folder ng proyekto). Ang pagsasaayos file nagbibigay ng sapat na impormasyon upang maunawaan ang epekto ng bawat opsyon sa pagsasaayos. Ang mas detalyadong impormasyon ay makukuha sa dokumentasyong ibinigay para sa bawat bahagi.
  4. Simulan ang library ng HAL
    Pagkatapos tumalon sa pangunahing programa, ang application code ay dapat tumawag sa HAL_Init() API upang simulan ang HAL library, na nagsasagawa ng mga sumusunod na gawain:
    • Configuration ng flash memory prefetch at SysTick interrupt priority (sa pamamagitan ng mga macro na tinukoy sa st m32wbaxx_hal_conf.h).
    • Configuration ng SysTick para makabuo ng interrupt bawat millisecond sa SysTick interrupt priority na TICK_INT_PRIO na tinukoy sa stm32wbaxx_hal_conf.h.
    • Pagtatakda ng priority ng pangkat ng NVIC sa 0.
    • Tawag ng HAL_MspInit() callback function na tinukoy sa stm32wbaxx_hal_msp.c user file upang magsagawa ng pandaigdigang mababang antas na pagsisimula ng hardware.
  5. I-configure ang system clock
    Ginagawa ang configuration ng system clock sa pamamagitan ng pagtawag sa dalawang API na inilarawan sa ibaba:
    • HAL_RCC_OscConfig(): kino-configure ng API na ito ang panloob at panlabas na mga oscillator. Pinipili ng user na i-configure ang isa o lahat ng oscillator.
    • HAL_RCC_ClockConfig(): Kino-configure ng API na ito ang source clock ng system, ang latency ng flash memory, at mga prescaler ng AHB at APB.
  6. I-initialize ang peripheral
    • Isulat muna ang peripheral na HAL_PPP_MspInit function. Magpatuloy tulad ng sumusunod:
      • Paganahin ang peripheral na orasan.
      • I-configure ang mga peripheral na GPIO.
      • I-configure ang DMA channel at paganahin ang DMA interrupt (kung kinakailangan).
      • Paganahin ang peripheral interrupt (kung kinakailangan).
    • I-edit ang stm32xxx_it.c para tawagan ang mga kinakailangang interrupt handler (peripheral at DMA), kung kinakailangan.
    • Isulat ang proseso ng kumpletong callback function, kung ang isang peripheral interrupt o DMA ay binalak na gamitin.
    • Sa pangunahing gumagamit.c file, simulan ang istraktura ng peripheral handle pagkatapos ay tawagan ang function na HAL_PPP_Init() upang masimulan ang peripheral.
  7. Bumuo ng isang aplikasyon
    • Sa stage, handa na ang system at maaaring magsimula ang pagbuo ng user application code.
    • Nagbibigay ang HAL ng intuitive at ready-to-use na mga API para i-configure ang peripheral. Sinusuportahan nito ang botohan, mga interrupts, at isang modelo ng programming ng DMA, upang matugunan ang anumang mga kinakailangan sa aplikasyon. Para sa higit pang mga detalye kung paano gamitin ang bawat peripheral, sumangguni sa rich exampAng set na ibinigay sa STM32CubeWBA MCU package.
      Pag-iingat: Sa default na pagpapatupad ng HAL, ang SysTick timer ay ginagamit bilang isang timebase: bumubuo ito ng mga interrupt sa mga regular na agwat ng oras. Kung ang HAL_Delay() ay tinawag mula sa peripheral na proseso ng ISR, siguraduhin na ang SysTick interrupt ay may mas mataas na priyoridad (numerically mas mababa) kaysa sa peripheral interrupt. Kung hindi, ang proseso ng caller ISR ay naharang. Ang mga function na nakakaapekto sa mga pagsasaayos ng timebase ay idineklara bilang __weak upang gawing posible ang pag-override sa kaso ng iba pang mga pagpapatupad sa user file (gamit ang general-purpose timer, para sa halample, o ibang mapagkukunan ng oras). Para sa higit pang mga detalye, sumangguni sa HAL_TimeBase halample.

LL application
Inilalarawan ng seksyong ito ang mga hakbang na kailangan para gumawa ng custom na LL application gamit ang STM32CubeWBA.

  1. Gumawa ng proyekto
    • Upang lumikha ng bagong proyekto, magsimula sa proyektong Templates_LL na ibinigay para sa bawat board sa ilalim ng \Projects\ \Templates_LL, o mula sa anumang magagamit na proyekto sa ilalim ng \Projects\ \Halamples_LL ( ay tumutukoy sa pangalan ng board, tulad ng NUCLEO-WBA32CG).
    • Ang proyekto ng template ay nagbibigay ng walang laman na pangunahing loop function, na isang magandang panimulang punto upang maunawaan ang mga setting ng proyekto para sa STM32CubeWBA. Ang mga pangunahing katangian ng template ay ang mga sumusunod:
      • Naglalaman ito ng mga source code ng mga driver ng LL at CMSIS, na siyang pinakamababang hanay ng mga sangkap na kailangan upang bumuo ng code sa isang partikular na board.
      • Naglalaman ito ng mga kasamang landas para sa lahat ng kinakailangang bahagi ng firmware.
      • Pinipili nito ang sinusuportahang STM32WBA series device at pinapayagan ang tamang configuration ng mga driver ng CMSIS at LL.
      • Nagbibigay ito ng user na handa nang gamitin files na paunang na-configure tulad ng sumusunod:
        ◦ main.h: LED at USER_BUTTON definition abstraction layer.
        ◦ main.c: System clock configuration para sa maximum frequency.
  2. I-port ang isang kasalukuyang proyekto sa isa pang board
    Upang suportahan ang isang umiiral na proyekto sa isa pang target na board, magsimula sa Templates_LL na proyekto na ibinigay para sa bawat board at magagamit sa ilalim ng \Projects\ \Templates_LL.
    • Pumili ng LL example: Para mahanap ang board kung saan si LL examples ay deployed, sumangguni sa listahan ng LL examples STM32CubeProjectsList.html.
  3. I-port ang LL example:
    • Kopyahin/i-paste ang folder na Templates_LL – para panatilihin ang paunang pinagmulan – o direktang i-update ang kasalukuyang Temp lates_LL na proyekto.
    • Pagkatapos ang porting ay pangunahing binubuo sa pagpapalit ng Templates_LL files ng Halamples_LL na naka-target na proyekto.
    • Panatilihin ang lahat ng partikular na bahagi ng board. Para sa mga dahilan ng kalinawan, ang mga partikular na bahagi ng board ay na-flag na may partikular tags:

      STMicroelectronics-STM32WBA-Series-Pagsisimula-fig-7

    • Kaya, ang mga pangunahing hakbang sa pag-port ay ang mga sumusunod:
      • Palitan ang stm32wbaxx_it.h file
      • Palitan ang stm32wbaxx_it.c file
      • Palitan ang pangunahing.h file at i-update ito: Panatilihin ang kahulugan ng LED at user button ng LL template sa ilalim ng BOARD SPECIFIC CONFIGURATION tags.
      • Palitan ang pangunahing.c file at i-update ito:
    • Panatilihin ang configuration ng orasan ng SystemClock_Config() LL template function sa ilalim ng BOARD SPECIFIC CONFIGURATION tags.
    • Depende sa kahulugan ng LED, palitan ang bawat paglitaw ng LDx ng isa pang LDy na available sa main.h file.
    • Sa mga pagbabagong ito, ang example ngayon ay tumatakbo sa targeted board

Mga aplikasyon sa seguridad
Ang package na ito ay inihahatid kasama ng mga application ng seguridad.

Mga aplikasyon ng SBSFU

  • Nagbibigay ang SBSFU ng Root of Trust solution, kasama ang Secure Boot at Secure Firmware Update functionalities (batay sa MCUboot).
  • Ang solusyon ay ginagamit bago isagawa ang aplikasyon.
  • Ang solusyon ay nagbibigay ng isang example ng isang secure na serbisyo (GPIO toggle), na nakahiwalay sa hindi secure na application. Magagamit pa rin ng hindi secure na application sa runtime ang solusyon na ito.

Mga aplikasyon ng TFM
Ang TFM ay nagbibigay ng Root of Trust na solusyon kasama ang Secure Boot at Secure Firmware Update functionalities
(batay sa MCUboot). Ang solusyon ay ginagamit bago isagawa ang aplikasyon. Ang solusyon ay nagbibigay ng mga secure na serbisyo ng TFM na nakahiwalay sa hindi secure na aplikasyon. Magagamit pa rin ng hindi secure na application sa runtime ang solusyon na ito.

Mga aplikasyon ng RF
Ang RF application ay inilalarawan sa application note na ito: Pagbuo ng mga wireless na application gamit ang STM32WBA series microcontrollers (AN5928).

Pagkuha ng mga update sa release ng STM32CubeWBA
Ang pinakabagong STM32CubeWBA MCU package release at patch ay available mula sa STM32WBA Series. Maaaring makuha ang mga ito mula sa CHECK FOR UPDATE button sa STM32CubeMX. Para sa higit pang mga detalye, sumangguni sa Seksyon 3 ng user manual na STM32CubeMX para sa STM32 configuration at initialization C code generation (UM1718).

FAQ

  • Kailan ko dapat gamitin ang HAL sa halip na mga driver ng LL?
    • Ang mga driver ng HAL ay nag-aalok ng mga high-level at function-oriented na API, na may mataas na antas ng portability. Nakatago ang produkto o peripheral complexity para sa mga end user.
    • Nag-aalok ang mga driver ng LL ng mababang-layer na antas ng rehistro ng mga API, na may mas mahusay na pag-optimize ngunit hindi gaanong portable. Nangangailangan sila ng malalim na kaalaman sa mga detalye ng produkto o IP.
  • Maaari ko bang gamitin ang mga driver ng HAL at LL nang magkasama? Kung kaya ko, ano ang mga hadlang?
    • Posibleng gamitin ang parehong mga driver ng HAL at LL. Gamitin ang HAL para sa yugto ng pagsisimula ng IP at pagkatapos ay pamahalaan ang mga operasyon ng I/O gamit ang mga LL driver.
    • Ang pangunahing pagkakaiba sa pagitan ng HAL at LL ay ang mga driver ng HAL ay nangangailangan na lumikha at gumamit ng mga handle para sa pamamahala ng operasyon habang ang mga driver ng LL ay direktang gumagana sa mga peripheral na rehistro. Ang Examples_MIX halample ay naglalarawan kung paano paghaluin ang HAL at LL.
  • Paano pinagana ang mga LL initialization API?
    • Ang kahulugan ng mga LL initialization API at nauugnay na mapagkukunan (Mga istruktura, literal, at prototype) ay kinokondisyon ng USE_FULL_LL_DRIVER na compilation switch.
    • Upang magamit ang mga LL initialization API, idagdag ang switch na ito sa toolchain compiler preprocessor.
  • Paano makakabuo ng code ang STM32CubeMX batay sa naka-embed na software?
    Ang STM32CubeMX ay may built-in na kaalaman sa mga STM32 microcontroller, kasama ang kanilang mga peripheral at software na nagbibigay-daan sa pagbibigay ng graphical na representasyon sa user at pagbuo ng *.h o *.c files batay sa configuration ng user.

MAHALAGANG PAUNAWA – MAGBASA NG MABUTI

  • Inilalaan ng STMicroelectronics NV at ng mga subsidiary nito (“ST”) ang karapatang gumawa ng mga pagbabago, pagwawasto, pagpapahusay, pagbabago, at pagpapahusay sa mga produkto ng ST at/o sa dokumentong ito anumang oras nang walang abiso. Dapat makuha ng mga mamimili ang pinakabagong may-katuturang impormasyon sa mga produkto ng ST bago maglagay ng mga order. Ang mga produkto ng ST ay ibinebenta alinsunod sa mga tuntunin at kundisyon ng pagbebenta ng ST sa oras ng pag-acknowledge ng order.
  • Ang mga mamimili ay tanging responsable para sa pagpili, pagpili, at paggamit ng mga produkto ng ST at walang pananagutan ang ST para sa tulong sa aplikasyon o disenyo ng mga produkto ng mga mamimili.
  • Walang lisensya, hayag o ipinahiwatig, sa anumang karapatan sa intelektwal na ari-arian ang ipinagkaloob ng ST dito.
  • Ang muling pagbebenta ng mga produktong ST na may mga probisyon na iba sa impormasyong nakasaad dito ay magpapawalang-bisa sa anumang warranty na ibinigay ng ST para sa naturang produkto.
  • Ang ST at ang ST logo ay mga trademark ng ST. Para sa karagdagang impormasyon tungkol sa mga trademark ng ST, sumangguni sa www.st.com/trademarks. Ang lahat ng iba pang pangalan ng produkto o serbisyo ay pag-aari ng kani-kanilang mga may-ari.
  • Ang impormasyon sa dokumentong ito ay pinapalitan at pinapalitan ang impormasyong dating ibinigay sa anumang mga naunang bersyon ng dokumentong ito.
  • © 2023 STMicroelectronics – Nakalaan ang lahat ng karapatan

Mga Dokumento / Mga Mapagkukunan

STMicroelectronics STM32WBA Serye Pagsisimula [pdf] User Manual
STM32WBA Serye Pagsisimula, Pagsisimula, Pagsisimula

Mga sanggunian

Mag-iwan ng komento

Ang iyong email address ay hindi maipa-publish. Ang mga kinakailangang field ay minarkahan *