STMicroelectronics STM32WBA സീരീസ് ആരംഭിക്കുന്നു
ഉൽപ്പന്ന വിവരം
സ്പെസിഫിക്കേഷനുകൾ:
- ഉൽപ്പന്നത്തിൻ്റെ പേര്: STM32CubeWBA MCU പാക്കേജ്
- നിർമ്മാതാവ്: എസ്ടിമൈക്രോ ഇലക്ട്രോണിക്സ്
- അനുയോജ്യത: STM32WBA സീരീസ് മൈക്രോകൺട്രോളറുകൾ
- ലൈസൻസിംഗ്: ഓപ്പൺ സോഴ്സ് BSD ലൈസൻസ്
ഉൽപ്പന്ന ഉപയോഗ നിർദ്ദേശങ്ങൾ
STM32CubeWBA MCU പാക്കേജിൻ്റെ പ്രധാന സവിശേഷതകൾ:
STM32CubeWBA MCU പാക്കേജ് STM32WBA സീരീസ് മൈക്രോകൺട്രോളറുകളിൽ ആപ്ലിക്കേഷനുകൾ വികസിപ്പിക്കുന്നതിന് ആവശ്യമായ എല്ലാ എംബഡഡ് സോഫ്റ്റ്വെയർ ഘടകങ്ങളും നൽകുന്നു. ഇത് STM32 സീരീസിനുള്ളിൽ വളരെ പോർട്ടബിൾ ആണ് കൂടാതെ HAL, LL API-കൾക്കൊപ്പം വരുന്നു, ഉദാampലെസ്, മിഡിൽവെയർ ഘടകങ്ങൾ.
വാസ്തുവിദ്യ കഴിഞ്ഞുview:
STM32CubeWBA MCU പാക്കേജിൻ്റെ ആർക്കിടെക്ചറിൽ മൂന്ന് തലങ്ങളുണ്ട് - ആപ്ലിക്കേഷനുകൾ, ലൈബ്രറി, പ്രോട്ടോക്കോൾ അടിസ്ഥാനമാക്കിയുള്ള ഘടകങ്ങൾ, ഹാർഡ്വെയർ അബ്സ്ട്രാക്ഷൻ ലെയർ, BSP ഡ്രൈവറുകൾ, കോർ ഡ്രൈവറുകൾ, ലോ-ലെയർ API-കൾ.
പതിവുചോദ്യങ്ങൾ
- STM32CubeWBA MCU പാക്കേജിൽ എന്താണ് ഉൾപ്പെടുത്തിയിരിക്കുന്നത്?
പാക്കേജിൽ ലോ-ലെയർ (LL), ഹാർഡ്വെയർ അബ്സ്ട്രാക്ഷൻ ലെയർ (HAL) API-കൾ ഉൾപ്പെടുന്നു, ഉദാampലെസ്, ആപ്ലിക്കേഷനുകൾ, മിഡിൽവെയർ ഘടകങ്ങൾ FileX/LevelX, NetX Duo, mbed-crypto ലൈബ്രറികൾ എന്നിവയും മറ്റും. - STM32CubeWBA MCU പാക്കേജ് STM32CubeMX കോഡ് ജനറേറ്ററിന് അനുയോജ്യമാണോ?
അതെ, ഇനീഷ്യലൈസേഷൻ കോഡ് സൃഷ്ടിക്കുന്നതിനുള്ള STM32CubeMX കോഡ് ജനറേറ്ററുമായി പാക്കേജ് പൂർണ്ണമായും പൊരുത്തപ്പെടുന്നു.
ആമുഖം
- വികസന പ്രയത്നം, സമയം, ചെലവ് എന്നിവ കുറയ്ക്കുന്നതിലൂടെ ഡിസൈനർ ഉൽപ്പാദനക്ഷമത ഗണ്യമായി മെച്ചപ്പെടുത്തുന്നതിനുള്ള ഒരു STMicroelectronics യഥാർത്ഥ സംരംഭമാണ് STM32Cube. STM32Cube മുഴുവൻ STM32 പോർട്ട്ഫോളിയോയും ഉൾക്കൊള്ളുന്നു.
STM32Cube ഉൾപ്പെടുന്നു:- ഗർഭധാരണം മുതൽ സാക്ഷാത്കാരം വരെയുള്ള പ്രോജക്റ്റ് വികസനം കവർ ചെയ്യുന്നതിനുള്ള ഉപയോക്തൃ-സൗഹൃദ സോഫ്റ്റ്വെയർ ഡെവലപ്മെന്റ് ടൂളുകളുടെ ഒരു കൂട്ടം, അവയിൽ ഉൾപ്പെടുന്നു:
- STM32CubeMX, ഗ്രാഫിക്കൽ വിസാർഡുകൾ ഉപയോഗിച്ച് സി ഇനീഷ്യലൈസേഷൻ കോഡിന്റെ സ്വയമേവ സൃഷ്ടിക്കാൻ അനുവദിക്കുന്ന ഒരു ഗ്രാഫിക്കൽ സോഫ്റ്റ്വെയർ കോൺഫിഗറേഷൻ ടൂൾ
- STM32CubeIDE, പെരിഫറൽ കോൺഫിഗറേഷൻ, കോഡ് ജനറേഷൻ, കോഡ് കംപൈലേഷൻ, ഡീബഗ് സവിശേഷതകൾ എന്നിവയുള്ള ഓൾ-ഇൻ-വൺ ഡെവലപ്മെന്റ് ടൂൾ
- STM32CubeCLT, കോഡ് കംപൈലേഷൻ, ബോർഡ് പ്രോഗ്രാമിംഗ്, ഡീബഗ് സവിശേഷതകൾ എന്നിവയുള്ള ഓൾ-ഇൻ-വൺ കമാൻഡ്-ലൈൻ ഡെവലപ്മെന്റ് ടൂൾസെറ്റ്
- STM32CubeProgrammer (STM32CubeProg), ഗ്രാഫിക്കൽ, കമാൻഡ്-ലൈൻ പതിപ്പുകളിൽ ലഭ്യമായ ഒരു പ്രോഗ്രാമിംഗ് ടൂൾ
- STM32CubeMonitor (STM32CubeMonitor, STM32CubeMonPwr, STM32CubeMonRF, STM32CubeMonUCPD), തത്സമയം STM32 ആപ്ലിക്കേഷനുകളുടെ പെരുമാറ്റവും പ്രകടനവും മികച്ചതാക്കുന്നതിനുള്ള ശക്തമായ നിരീക്ഷണ ഉപകരണങ്ങൾ
- STM32Cube MCU, MPU പാക്കേജുകൾ, ഓരോ മൈക്രോകൺട്രോളറിനും മൈക്രോപ്രൊസസ്സർ സീരീസിനും (STM32WBA സീരീസിനുള്ള STM32CubeWBA പോലുള്ളവ) സവിശേഷമായ എംബഡഡ്-സോഫ്റ്റ്വെയർ പ്ലാറ്റ്ഫോമുകൾ:
- STM32Cube ഹാർഡ്വെയർ അബ്സ്ട്രാക്ഷൻ ലെയർ (HAL), STM32 പോർട്ട്ഫോളിയോയിലുടനീളം പരമാവധി പോർട്ടബിലിറ്റി ഉറപ്പാക്കുന്നു
- STM32Cube ലോ-ലെയർ API-കൾ, ഹാർഡ്വെയറിൽ ഉയർന്ന ഉപയോക്തൃ നിയന്ത്രണത്തോടെ മികച്ച പ്രകടനവും കാൽപ്പാടുകളും ഉറപ്പാക്കുന്നു
- ThreadX പോലുള്ള മിഡിൽവെയർ ഘടകങ്ങളുടെ ഒരു സ്ഥിരതയുള്ള സെറ്റ്, FileX / LevelX, NetX Duo, USBX, ടച്ച് ലൈബ്രറി, mbed-crypto, TFM, MCUboot, OpenBL, STM32_WPAN (Bluetooth® Low Energy pro ഉൾപ്പെടെfileകളും സേവനങ്ങളും, Mesh, Zigbee®, OpenThread, Matter, കൂടാതെ 802.15.4 MAC ലെയർ)
- എല്ലാ ഉൾച്ചേർത്ത സോഫ്റ്റ്വെയർ യൂട്ടിലിറ്റികളും പെരിഫറൽ, ആപ്ലിക്കേറ്റീവ് എക്സ്ampലെസ്
- STM32Cube MCU, MPU പാക്കേജുകളുടെ പ്രവർത്തനങ്ങളെ പൂർത്തീകരിക്കുന്ന ഉൾച്ചേർത്ത സോഫ്റ്റ്വെയർ ഘടകങ്ങൾ ഉൾക്കൊള്ളുന്ന STM32Cube വിപുലീകരണ പാക്കേജുകൾ:
- മിഡിൽവെയർ എക്സ്റ്റൻഷനുകളും ആപ്ലിക്കേറ്റീവ് ലെയറുകളും
- Exampചില പ്രത്യേക STMicroelectronics വികസന ബോർഡുകളിൽ പ്രവർത്തിക്കുന്നു
- ഗർഭധാരണം മുതൽ സാക്ഷാത്കാരം വരെയുള്ള പ്രോജക്റ്റ് വികസനം കവർ ചെയ്യുന്നതിനുള്ള ഉപയോക്തൃ-സൗഹൃദ സോഫ്റ്റ്വെയർ ഡെവലപ്മെന്റ് ടൂളുകളുടെ ഒരു കൂട്ടം, അവയിൽ ഉൾപ്പെടുന്നു:
- STM32CubeWBA MCU പാക്കേജ് എങ്ങനെ ആരംഭിക്കാമെന്ന് ഈ ഉപയോക്തൃ മാനുവൽ വിവരിക്കുന്നു.
- സെക്ഷൻ 2 STM32CubeWBA പ്രധാന സവിശേഷതകൾ STM32CubeWBA MCU പാക്കേജിൻ്റെ പ്രധാന സവിശേഷതകളെ വിവരിക്കുന്നു.
- വിഭാഗം 3 STM32CubeWBA ആർക്കിടെക്ചർ കഴിഞ്ഞുview ഒരു ഓവർ നൽകുന്നുview STM32CubeWBA ആർക്കിടെക്ചറിൻ്റെയും MCU പാക്കേജ് ഘടനയുടെയും.
പൊതുവിവരം
STM32CubeWBA MCU പാക്കേജ്, Arm® TrustZone®, FPU എന്നിവയുള്ള Arm® Cortex®-M32 പ്രോസസറിനെ അടിസ്ഥാനമാക്കിയുള്ള STM32 33-ബിറ്റ് മൈക്രോകൺട്രോളറുകളിൽ പ്രവർത്തിക്കുന്നു.
കുറിപ്പ്: ആം, ട്രസ്റ്റ് സോൺ എന്നിവ യുഎസിലും കൂടാതെ/അല്ലെങ്കിൽ മറ്റെവിടെയെങ്കിലും ആം ലിമിറ്റഡിന്റെ (അല്ലെങ്കിൽ അതിന്റെ അനുബന്ധ സ്ഥാപനങ്ങൾ) രജിസ്റ്റർ ചെയ്ത വ്യാപാരമുദ്രകളാണ്.
STM32CubeWBA പ്രധാന സവിശേഷതകൾ
- TrustZone®, FPU എന്നിവയുള്ള Arm® Cortex®-M32 പ്രോസസറിനെ അടിസ്ഥാനമാക്കി STM32CubeWBA MCU പാക്കേജ് STM32 33-ബിറ്റ് മൈക്രോകൺട്രോളറുകളിൽ പ്രവർത്തിക്കുന്നു.
- STM32CubeWBA, STM32WBA സീരീസ് മൈക്രോകൺട്രോളറുകൾക്കായി ഒരു ആപ്ലിക്കേഷൻ വികസിപ്പിക്കുന്നതിന് ആവശ്യമായ എല്ലാ ജനറിക് എംബഡഡ് സോഫ്റ്റ്വെയർ ഘടകങ്ങളും ഒരൊറ്റ പാക്കേജിൽ ശേഖരിക്കുന്നു. STM32Cube സംരംഭത്തിന് അനുസൃതമായി, STM32WBA സീരീസ് മൈക്രോകൺട്രോളറുകളിൽ മാത്രമല്ല, മറ്റ് STM32 സീരീസുകളിലേക്കും ഈ ഘടകങ്ങൾ വളരെ പോർട്ടബിൾ ആണ്.
- ഇനീഷ്യലൈസേഷൻ കോഡ് സൃഷ്ടിക്കുന്നതിന് STM32CubeWBA, STM32CubeMX കോഡ് ജനറേറ്ററുമായി പൂർണ്ണമായും പൊരുത്തപ്പെടുന്നു. പാക്കേജിൽ മൈക്രോകൺട്രോളർ ഹാർഡ്വെയറിനെ ഉൾക്കൊള്ളുന്ന ലോ-ലെയർ (എൽഎൽ), ഹാർഡ്വെയർ അബ്സ്ട്രാക്ഷൻ ലെയർ (എച്ച്എഎൽ) എപിഐകൾ ഉൾപ്പെടുന്നു.amples STMicroelectronics ബോർഡുകളിൽ പ്രവർത്തിക്കുന്നു. HAL, LL API-കൾ ഉപയോക്താവിൻ്റെ സൗകര്യാർത്ഥം ഒരു ഓപ്പൺ സോഴ്സ് BSD ലൈസൻസിൽ ലഭ്യമാണ്.
- STM32CubeWBA MCU പാക്കേജിൽ Microsoft® Azure® RTOS മിഡിൽവെയറിനും മറ്റ് ഇൻ-ഹൗസ്, ഓപ്പൺ സോഴ്സ് സ്റ്റാക്കുകൾക്കും ചുറ്റും നിർമ്മിച്ച ഒരു സമഗ്ര മിഡിൽവെയർ ഘടകവും അടങ്ങിയിരിക്കുന്നു.ampലെസ്.
- അവ സൗജന്യവും ഉപയോക്തൃ സൗഹൃദവുമായ ലൈസൻസ് നിബന്ധനകളോടെയാണ് വരുന്നത്:
- സംയോജിതവും പൂർണ്ണമായി ഫീച്ചർ ചെയ്തതുമായ Azure® RTOS: Azure® RTOS ThreadX
- Azure® RTOS ThreadX ഉപയോഗിച്ച് CMSIS-RTOS നടപ്പിലാക്കൽ
- നിരവധി ക്ലാസുകൾക്കൊപ്പം വരുന്ന USB ഹോസ്റ്റും ഉപകരണ സ്റ്റാക്കുകളും: Azure® RTOS USBX
- വിപുലമായ file സിസ്റ്റവും ഫ്ലാഷ് വിവർത്തന പാളിയും: Fileഎക്സ് / ലെവൽ എക്സ്
- വ്യാവസായിക ഗ്രേഡ് നെറ്റ്വർക്കിംഗ് സ്റ്റാക്ക്: നിരവധി IoT പ്രോട്ടോക്കോളുകൾക്കൊപ്പം വരുന്ന പ്രകടനത്തിനായി ഒപ്റ്റിമൈസ് ചെയ്തിരിക്കുന്നു: NetX Duo
- ഓപ്പൺബൂട്ട്ലോഡർ
- Arm® ട്രസ്റ്റഡ് ഫേംവെയർ-എം (TF‑M) സംയോജന പരിഹാരം
- mbed-crypto ലൈബ്രറികൾ
- ST നെറ്റ്വോക്ക് ലൈബ്രറി
- STMTouch ടച്ച് സെൻസിംഗ് ലൈബ്രറി പരിഹാരം
- ഈ മിഡിൽവെയർ ഘടകങ്ങളെല്ലാം നടപ്പിലാക്കുന്ന നിരവധി ആപ്ലിക്കേഷനുകളും പ്രദർശനങ്ങളും STM32CubeWBA MCU പാക്കേജിൽ നൽകിയിരിക്കുന്നു.
- STM32CubeWBA MCU പാക്കേജ് ഘടക ലേഔട്ട് ചിത്രം 1 ൽ ചിത്രീകരിച്ചിരിക്കുന്നു. STM32CubeWBA MCU പാക്കേജ് ഘടകങ്ങൾ .
STM32CubeWBA ആർക്കിടെക്ചർ കഴിഞ്ഞുview
STM32CubeWBA MCU പാക്കേജ് സൊല്യൂഷൻ നിർമ്മിച്ചിരിക്കുന്നത് മൂന്ന് സ്വതന്ത്ര തലങ്ങളെ ചുറ്റിപ്പറ്റിയാണ്, അത് ചിത്രം 2-ൽ വിവരിച്ചിരിക്കുന്നതുപോലെ എളുപ്പത്തിൽ സംവദിക്കുന്നു. STM32CubeWBA MCU പാക്കേജ് ആർക്കിടെക്ചർ.
ലെവൽ 0
ഈ ലെവൽ മൂന്ന് സബ്ലെയറുകളായി തിരിച്ചിരിക്കുന്നു:
- ബോർഡ് സപ്പോർട്ട് പാക്കേജ് (BSP).
- ഹാർഡ്വെയർ അബ്സ്ട്രാക്ഷൻ ലെയർ (HAL):
- HAL പെരിഫറൽ ഡ്രൈവറുകൾ
- ലോ-ലെയർ ഡ്രൈവറുകൾ
- അടിസ്ഥാന പെരിഫറൽ ഉപയോഗം ഉദാampലെസ്.
ബോർഡ് സപ്പോർട്ട് പാക്കേജ് (BSP)
ഹാർഡ്വെയർ ബോർഡുകളിലെ (LCD, Audio,\ microSD™, MEMS ഡ്രൈവറുകൾ പോലുള്ളവ) ഹാർഡ്വെയർ ഘടകങ്ങളുമായി ബന്ധപ്പെട്ട ഒരു കൂട്ടം API-കൾ ഈ ലെയർ വാഗ്ദാനം ചെയ്യുന്നു. ഇത് രണ്ട് ഭാഗങ്ങൾ ഉൾക്കൊള്ളുന്നു:
- ഘടകം ഡ്രൈവർ:
ഈ ഡ്രൈവർ ബോർഡിലെ ബാഹ്യ ഉപകരണവുമായി ബന്ധപ്പെട്ടതാണ്, അല്ലാതെ STM32 ഉപകരണവുമായി ബന്ധപ്പെട്ടതല്ല. ബിഎസ്പി ഡ്രൈവർ ബാഹ്യ ഘടകങ്ങൾക്ക് ഘടക ഡ്രൈവർ നിർദ്ദിഷ്ട എപിഐകൾ നൽകുന്നു, മറ്റേതെങ്കിലും ബോർഡിൽ പോർട്ടബിൾ ആകാം. - ബിഎസ്പി ഡ്രൈവർ:
ബിഎസ്പി ഡ്രൈവർ ഒരു പ്രത്യേക ബോർഡിലേക്ക് ഘടക ഡ്രൈവറുകൾ ലിങ്ക് ചെയ്യാൻ അനുവദിക്കുന്നു, കൂടാതെ ഒരു കൂട്ടം ഉപയോക്തൃ-സൗഹൃദവും നൽകുന്നു
API-കൾ. API നാമകരണ നിയമം BSP_FUNCT_Action() ആണ്.
Example: BSP_LED_Init(), BSP_LED_On()
ബിഎസ്പി ഒരു മോഡുലാർ ആർക്കിടെക്ചറിനെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്, കുറഞ്ഞ തലത്തിലുള്ള ദിനചര്യകൾ നടപ്പിലാക്കുന്നതിലൂടെ ഏത് ഹാർഡ്വെയറിലും എളുപ്പത്തിൽ പോർട്ടിംഗ് അനുവദിക്കുന്നു.
ഹാർഡ്വെയർ അബ്സ്ട്രാക്ഷൻ ലെയറും (HAL) ലോ-ലെയറും (LL)
STM32CubeWBA HAL ഉം LL ഉം പരസ്പര പൂരകമാണ് കൂടാതെ വിപുലമായ ആപ്ലിക്കേഷൻ ആവശ്യകതകൾ ഉൾക്കൊള്ളുന്നു:
- HAL ഡ്രൈവറുകൾ ഉയർന്ന തലത്തിലുള്ള ഫംഗ്ഷൻ-ഓറിയൻ്റഡ് ഉയർന്ന പോർട്ടബിൾ API-കൾ വാഗ്ദാനം ചെയ്യുന്നു. അവർ MCU, പെരിഫറൽ സങ്കീർണ്ണത എന്നിവ അന്തിമ ഉപയോക്താവിന് മറയ്ക്കുന്നു.
എച്ച്എഎൽ ഡ്രൈവറുകൾ ജനറിക് മൾട്ടി-ഇൻസ്റ്റൻസ് ഫീച്ചർ ഓറിയൻ്റഡ് എപിഐകൾ നൽകുന്നു, ഇത് ഉപയോഗത്തിന് തയ്യാറുള്ള പ്രക്രിയകൾ നൽകിക്കൊണ്ട് ഉപയോക്തൃ ആപ്ലിക്കേഷൻ നടപ്പിലാക്കുന്നത് ലളിതമാക്കുന്നു. ഉദാample, കമ്മ്യൂണിക്കേഷൻ പെരിഫറലുകൾക്ക് (I2S, UART, കൂടാതെ മറ്റുള്ളവ), പെരിഫറൽ ആരംഭിക്കുന്നതിനും കോൺഫിഗർ ചെയ്യുന്നതിനും പോളിംഗ്, തടസ്സപ്പെടുത്തൽ അല്ലെങ്കിൽ ഡിഎംഎ പ്രക്രിയയെ അടിസ്ഥാനമാക്കി ഡാറ്റ കൈമാറ്റം നിയന്ത്രിക്കൽ, ആശയവിനിമയ സമയത്ത് ഉണ്ടാകാവുന്ന ആശയവിനിമയ പിശകുകൾ കൈകാര്യം ചെയ്യൽ എന്നിവ അനുവദിക്കുന്ന API-കൾ ഇത് നൽകുന്നു. HAL ഡ്രൈവർ API-കളെ രണ്ട് വിഭാഗങ്ങളായി തിരിച്ചിരിക്കുന്നു:- എല്ലാ STM32 സീരീസ് മൈക്രോകൺട്രോളറുകൾക്കും പൊതുവായതും പൊതുവായതുമായ പ്രവർത്തനങ്ങൾ നൽകുന്ന ജനറിക് API-കൾ.
- ഒരു നിർദ്ദിഷ്ട കുടുംബത്തിനോ ഒരു പ്രത്യേക പാർട്ട് നമ്പറിനോ വേണ്ടി പ്രത്യേകവും ഇഷ്ടാനുസൃതമാക്കിയതുമായ ഫംഗ്ഷനുകൾ നൽകുന്ന വിപുലീകരണ API-കൾ.
- ലോ-ലെയർ API-കൾ, മികച്ച ഒപ്റ്റിമൈസേഷനോടുകൂടിയതും എന്നാൽ പോർട്ടബിലിറ്റി കുറവുള്ളതുമായ താഴ്ന്ന-ലെവൽ API-കൾ രജിസ്റ്റർ തലത്തിൽ നൽകുന്നു.
- അവർക്ക് MCU, പെരിഫറൽ സവിശേഷതകൾ എന്നിവയെക്കുറിച്ച് ആഴത്തിലുള്ള അറിവ് ആവശ്യമാണ്.
- എൽഎൽ ഡ്രൈവറുകൾ രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത് എച്ച്എഎലിനേക്കാൾ ഹാർഡ്വെയറിനോട് അടുത്തിരിക്കുന്ന വേഗതയേറിയ ഭാരം കുറഞ്ഞ വിദഗ്ധ-അധിഷ്ഠിത ലെയർ വാഗ്ദാനം ചെയ്യുന്നതിനാണ്. HAL-ന് വിരുദ്ധമായി, ഒപ്റ്റിമൈസ് ചെയ്ത ആക്സസ് ഒരു പ്രധാന സവിശേഷതയല്ലാത്ത പെരിഫറലുകൾക്കോ കനത്ത സോഫ്റ്റ്വെയർ കോൺഫിഗറേഷനോ സങ്കീർണ്ണമായ ഉയർന്ന ലെവൽ സ്റ്റാക്കോ ആവശ്യമുള്ളവയ്ക്കോ LL API-കൾ നൽകിയിട്ടില്ല.
- LL ഡ്രൈവറുകളുടെ സവിശേഷത:
- ഡാറ്റാ ഘടനകളിൽ വ്യക്തമാക്കിയിരിക്കുന്ന പാരാമീറ്ററുകൾ അനുസരിച്ച് പെരിഫറൽ പ്രധാന സവിശേഷതകൾ ആരംഭിക്കുന്നതിനുള്ള ഒരു കൂട്ടം ഫംഗ്ഷനുകൾ.
- ഓരോ ഫീൽഡിനും അനുയോജ്യമായ റീസെറ്റ് മൂല്യങ്ങൾ ഉപയോഗിച്ച് ഇനീഷ്യലൈസേഷൻ ഡാറ്റ ഘടനകൾ പൂരിപ്പിക്കുന്നതിനുള്ള ഒരു കൂട്ടം ഫംഗ്ഷനുകൾ.
- പെരിഫറൽ ഡീനിഷ്യലൈസേഷനായുള്ള പ്രവർത്തനം (പെരിഫറൽ രജിസ്റ്ററുകൾ അവയുടെ സ്ഥിര മൂല്യങ്ങളിലേക്ക് പുനഃസ്ഥാപിച്ചു).
- നേരിട്ടുള്ളതും ആറ്റോമിക് രജിസ്റ്റർ ആക്സസ്സിനുമുള്ള ഒരു കൂട്ടം ഇൻലൈൻ ഫംഗ്ഷനുകൾ.
- HAL-ൽ നിന്നുള്ള പൂർണ്ണ സ്വാതന്ത്ര്യവും ഒറ്റപ്പെട്ട മോഡിൽ ഉപയോഗിക്കാനുള്ള കഴിവും (HAL ഡ്രൈവറുകൾ ഇല്ലാതെ).
- പിന്തുണയ്ക്കുന്ന പെരിഫറൽ ഫീച്ചറുകളുടെ പൂർണ്ണ കവറേജ്.
അടിസ്ഥാന പെരിഫറൽ ഉപയോഗം ഉദാampലെസ്
ഈ ലെയർ എക്സൈസ് വലയം ചെയ്യുന്നുampHAL, BSP വിഭവങ്ങൾ മാത്രം ഉപയോഗിച്ച് STM32 പെരിഫറലുകളിൽ നിർമ്മിച്ചതാണ്.
ലെവൽ 1
ഈ ലെവൽ രണ്ട് സബ്ലെയറുകളായി തിരിച്ചിരിക്കുന്നു:
- മിഡിൽവെയർ ഘടകങ്ങൾ
- Exampമിഡിൽവെയർ ഘടകങ്ങളെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്
മിഡിൽവെയർ ഘടകങ്ങൾ
- ബ്ലൂടൂത്ത് ലോ എനർജി (ലിങ്ക്ലെയർ, എച്ച്സിഐ, സ്റ്റാക്ക്), ത്രെഡ്®, സിഗ്ബീ®, എന്നിവ ഉൾക്കൊള്ളുന്ന ഒരു കൂട്ടം ലൈബ്രറികളാണ് മിഡിൽവെയർ.
- Matter, OpenBootloader, Microsoft® Azure® RTOS, TF‑M, MCUboot, mbed-crypto.
- ഈ ലെയറിൻ്റെ ഘടകങ്ങൾ തമ്മിലുള്ള തിരശ്ചീന ഇടപെടൽ ഫീച്ചർ ചെയ്ത API-കളെ വിളിച്ചാണ് ചെയ്യുന്നത്.
- ലോ-ലെയർ ഡ്രൈവറുകളുമായുള്ള ലംബമായ ഇടപെടൽ, പ്രത്യേക കോൾബാക്കുകളിലൂടെയും ലൈബ്രറി സിസ്റ്റം കോൾ ഇൻ്റർഫേസിൽ നടപ്പിലാക്കിയ സ്റ്റാറ്റിക് മാക്രോകളിലൂടെയും നടത്തുന്നു.
- ഓരോ മിഡിൽവെയർ ഘടകത്തിൻ്റെയും പ്രധാന സവിശേഷതകൾ ഇനിപ്പറയുന്നവയാണ്:
- Microsoft® Azure® RTOS
- Azure® RTOS ThreadX: ഒരു തത്സമയ ഓപ്പറേറ്റിംഗ് സിസ്റ്റം (RTOS), രണ്ട് ഫങ്ഷണൽ മോഡുകളുള്ള എംബഡഡ് സിസ്റ്റങ്ങൾക്കായി രൂപകൽപ്പന ചെയ്തിരിക്കുന്നു.
- പൊതുവായ മോഡ്: ത്രെഡ് മാനേജ്മെൻ്റ്, സിൻക്രൊണൈസേഷൻ, മെമ്മറി പൂൾ മാനേജ്മെൻ്റ്, മെസേജിംഗ്, ഇവൻ്റ് ഹാൻഡ്ലിംഗ് തുടങ്ങിയ പൊതുവായ RTOS പ്രവർത്തനങ്ങൾ.
- മൊഡ്യൂൾ മോഡ്: ഒരു മൊഡ്യൂൾ മാനേജർ വഴി ഫ്ലൈയിൽ പ്രീലിങ്ക് ചെയ്ത ThreadX മൊഡ്യൂളുകൾ ലോഡുചെയ്യാനും അൺലോഡുചെയ്യാനും അനുവദിക്കുന്ന ഒരു വിപുലമായ ഉപയോക്തൃ മോഡ്.
- NetX Duo
- FileX
- USBX
- Azure® RTOS ThreadX: ഒരു തത്സമയ ഓപ്പറേറ്റിംഗ് സിസ്റ്റം (RTOS), രണ്ട് ഫങ്ഷണൽ മോഡുകളുള്ള എംബഡഡ് സിസ്റ്റങ്ങൾക്കായി രൂപകൽപ്പന ചെയ്തിരിക്കുന്നു.
- ബ്ലൂടൂത്ത് ® ലോ എനർജി (ബിഎൽഇ): ലിങ്ക് ആൻഡ് സ്റ്റാക്ക് ലെയറുകൾക്കായി ബ്ലൂടൂത്ത് ലോ എനർജി പ്രോട്ടോക്കോൾ നടപ്പിലാക്കുന്നു.
- MCUboot (ഓപ്പൺ സോഴ്സ് സോഫ്റ്റ്വെയർ)
- സ്റ്റാക്കിനും അനുബന്ധ ക്ലസ്റ്ററുകൾക്കുമുള്ള Zigbee® പ്രോട്ടോക്കോളുകൾ.
- Thread® പ്രോട്ടോക്കോൾ സ്റ്റാക്കും ലിങ്ക് ലെയറും.
- Arm® വിശ്വസനീയമായ ഫേംവെയർ-M, TF‑M (ഓപ്പൺ സോഴ്സ് സോഫ്റ്റ്വെയർ): ബന്ധപ്പെട്ട സുരക്ഷിത സേവനങ്ങൾക്കൊപ്പം TrustZone® എന്നതിനായുള്ള Arm® പ്ലാറ്റ്ഫോം സെക്യൂരിറ്റി ആർക്കിടെക്ചറിൻ്റെ (PSA) റഫറൻസ് നടപ്പിലാക്കൽ.
- mbed-crypto (ഓപ്പൺ സോഴ്സ് സോഫ്റ്റ്വെയർ): mbed-crypto മിഡിൽവെയർ ഒരു PSA ക്രിപ്റ്റോഗ്രഫി API നടപ്പിലാക്കൽ നൽകുന്നു.
- STM32 ടച്ച് സെൻസിംഗ് ലൈബ്രറി: കരുത്തുറ്റ STMTouch കപ്പാസിറ്റീവ് ടച്ച് സെൻസിംഗ് സൊല്യൂഷൻ, പ്രോക്സിമിറ്റി, ടച്ച്കീ, ലീനിയർ, റോട്ടറി ടച്ച് സെൻസറുകൾ പിന്തുണയ്ക്കുന്നു. ഇത് തെളിയിക്കപ്പെട്ട ഉപരിതല ചാർജ് ട്രാൻസ്ഫർ ഏറ്റെടുക്കൽ തത്വത്തെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്.
- Microsoft® Azure® RTOS
Exampമിഡിൽവെയർ ഘടകങ്ങളെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്
ഓരോ മിഡിൽവെയർ ഘടകഭാഗവും ഒന്നോ അതിലധികമോ മുൻകാലങ്ങളുമായി വരുന്നുamples (അപ്ലിക്കേഷനുകൾ എന്നും അറിയപ്പെടുന്നു) അത് എങ്ങനെ ഉപയോഗിക്കണമെന്ന് കാണിക്കുന്നു. സംയോജനം ഉദാampനിരവധി മിഡിൽവെയർ ഘടകങ്ങൾ ഉപയോഗിക്കുന്ന ലെസുകളും നൽകിയിരിക്കുന്നു.
STM32CubeWBA ഫേംവെയർ പാക്കേജ് അവസാനിച്ചുview
പിന്തുണയ്ക്കുന്ന STM32WBA സീരീസ് ഉപകരണങ്ങളും ഹാർഡ്വെയറും
- STM32Cube ഒരു ജനറിക് ആർക്കിടെക്ചറിന് ചുറ്റും നിർമ്മിച്ച ഉയർന്ന പോർട്ടബിൾ ഹാർഡ്വെയർ അബ്സ്ട്രാക്ഷൻ ലെയർ (HAL) വാഗ്ദാനം ചെയ്യുന്നു. എംസിയു എന്താണ് ഉപയോഗിക്കുന്നതെന്ന് ആഴത്തിൽ അറിയാതെ മിഡിൽവെയർ ലെയർ ഉപയോഗിക്കുന്നത് പോലുള്ള ബിൽഡ്-ഓൺ ലെയറുകളുടെ തത്വത്തെ ഇത് അനുവദിക്കുന്നു. ഇത് ലൈബ്രറി കോഡ് പുനരുപയോഗം മെച്ചപ്പെടുത്തുകയും മറ്റ് ഉപകരണങ്ങളിലേക്ക് എളുപ്പത്തിൽ പോർട്ടബിലിറ്റി ഉറപ്പാക്കുകയും ചെയ്യുന്നു.
- കൂടാതെ, അതിൻ്റെ ലേയേർഡ് ആർക്കിടെക്ചറിന് നന്ദി, STM32CubeWBA എല്ലാ STM32WBA സീരീസിനും പൂർണ്ണ പിന്തുണ വാഗ്ദാനം ചെയ്യുന്നു.
- ഉപയോക്താവിന് stm32wbaxx.h-ൽ ശരിയായ മാക്രോ നിർവചിക്കേണ്ടതുണ്ട്.
- ഉപയോഗിച്ച STM1WBA സീരീസ് ഉപകരണത്തെ ആശ്രയിച്ച് നിർവ്വചിക്കേണ്ട മാക്രോ പട്ടിക 32 കാണിക്കുന്നു. ഈ മാക്രോ കംപൈലർ പ്രീപ്രൊസസറിലും നിർവചിച്ചിരിക്കണം.
പട്ടിക 1. STM32WBA സീരീസിനുള്ള മാക്രോകൾstm32wbaxx.h-ൽ മാക്രോ നിർവചിച്ചിരിക്കുന്നു STM32WBA സീരീസ് ഉപകരണങ്ങൾ stm32wba52xx STM32WBA52CGU6, STM32WBA52KGU6, STM32WBA52CEU6, STM32WBA52KEU6 stm32wba55xx STM32WBA55CGU6, STM32WBA55CGU6U, STM32WBA55CGU7, STM32WBA55CEU6, STM32WBA55CEU7 - STM32CubeWBA മുൻനിരയുടെ സമ്പന്നമായ ഒരു കൂട്ടം അവതരിപ്പിക്കുന്നുampഏത് എച്ച്എഎൽ ഡ്രൈവർ അല്ലെങ്കിൽ മിഡിൽവെയർ ഘടകങ്ങൾ മനസ്സിലാക്കാനും ഉപയോഗിക്കാനും എളുപ്പമാക്കുന്ന എല്ലാ തലങ്ങളിലുമുള്ള les-ഉം ആപ്ലിക്കേഷനുകളും. ഈ മുൻampപട്ടിക 2-ൽ പട്ടികപ്പെടുത്തിയിരിക്കുന്ന STMicroelectronics ബോർഡുകളിൽ പ്രവർത്തിക്കുന്നു.
പട്ടിക 2. STM32WBA സീരീസിനുള്ള ബോർഡുകൾബോർഡ് ബോർഡ് STM32WBA പിന്തുണയ്ക്കുന്ന ഉപകരണങ്ങൾ ന്യൂക്ലിയോ-WBA52CG STM32WBA52CGU6 ന്യൂക്ലിയോ-WBA55CG STM32WBA55CGU6 STM32WBA55-DK1 STM32WBA55CGU7 - STM32CubeWBA MCU പാക്കേജിന് അനുയോജ്യമായ ഏത് ഹാർഡ്വെയറിലും പ്രവർത്തിക്കാനാകും. നൽകിയിരിക്കുന്ന മുൻ പോർട്ട് ചെയ്യുന്നതിനായി ഉപയോക്താവ് ബിഎസ്പി ഡ്രൈവറുകൾ അപ്ഡേറ്റ് ചെയ്യുന്നുampബോർഡിൽ les, രണ്ടാമത്തേതിന് സമാന ഹാർഡ്വെയർ സവിശേഷതകൾ ഉണ്ടെങ്കിൽ (എൽഇഡി, എൽസിഡി ഡിസ്പ്ലേ, ബട്ടണുകൾ എന്നിവ പോലെ).
ഫേംവെയർ പാക്കേജ് കഴിഞ്ഞുview
- STM32CubeWBA പാക്കേജ് സൊല്യൂഷൻ ചിത്രം 3-ൽ കാണിച്ചിരിക്കുന്ന ഘടനയുള്ള ഒരൊറ്റ സിപ്പ് പാക്കേജിലാണ് നൽകിയിരിക്കുന്നത്. STM32CubeWBA ഫേംവെയർ പാക്കേജ് ഘടന.
- ഓരോ ബോർഡിനും, ഒരു കൂട്ടം മുൻampEWARM, MDK-ARM, STM32CubeIDE ടൂൾചെയിനുകൾ എന്നിവയ്ക്കായി മുൻകൂട്ടി കോൺഫിഗർ ചെയ്ത പ്രോജക്റ്റുകൾ les-ൽ നൽകിയിരിക്കുന്നു.
- ചിത്രം 4. STM32CubeWBA മുൻamples overview NUCLEO‑WBA52CG, NUCLEO-WBA55CG, STM32WBA55G-DK1 ബോർഡുകൾക്കുള്ള പ്രോജക്റ്റ് ഘടന കാണിക്കുന്നു.
- മുൻampഅവ പ്രയോഗിക്കുന്ന STM32Cube ലെവലിനെ ആശ്രയിച്ച് les തരംതിരിച്ചിരിക്കുന്നു, അവ ഇനിപ്പറയുന്ന രീതിയിൽ നാമകരണം ചെയ്യപ്പെട്ടിരിക്കുന്നു:
- ലെവൽ 0 മുൻampലെസിനെ Ex എന്ന് വിളിക്കുന്നുampലെസ്, എക്സിamples_LL, കൂടാതെ Examples_MIX. അവർ യഥാക്രമം HAL ഡ്രൈവറുകൾ, LL ഡ്രൈവറുകൾ, കൂടാതെ ഒരു മിഡിൽവെയർ ഘടകവുമില്ലാതെ HAL, LL ഡ്രൈവറുകൾ എന്നിവ ഉപയോഗിക്കുന്നു.
- ലെവൽ 1 മുൻamples യെ ആപ്ലിക്കേഷനുകൾ എന്ന് വിളിക്കുന്നു. ഓരോ മിഡിൽവെയർ ഘടകത്തിൻ്റെയും സാധാരണ ഉപയോഗ കേസുകൾ അവ നൽകുന്നു. ടെംപ്ലേറ്റ്, ടെംപ്ലേറ്റ്സ്_എൽഎൽ ഡയറക്ടറികളിൽ ലഭ്യമായ ടെംപ്ലേറ്റ് പ്രോജക്റ്റുകൾക്ക് നന്ദി, തന്നിരിക്കുന്ന ബോർഡിനായുള്ള ഏതൊരു ഫേംവെയർ ആപ്ലിക്കേഷനും വേഗത്തിൽ നിർമ്മിക്കാൻ കഴിയും.
TrustZone® പ്രവർത്തനക്ഷമമാക്കിയ പ്രോജക്റ്റുകൾ
- TrustZone® പ്രവർത്തനക്ഷമമാക്കിയ Examples പേരുകളിൽ _TrustZone പ്രിഫിക്സ് അടങ്ങിയിരിക്കുന്നു. Applicatio ns-നും ഈ നിയമം ബാധകമാണ് (TFM, SBSFU എന്നിവ ഒഴികെ, അവ TrustZone®-ന് വേണ്ടിയുള്ളതാണ്).
- TrustZone®- പ്രവർത്തനക്ഷമമാക്കിയ Exampചിത്രം 5-ൽ അവതരിപ്പിച്ചിരിക്കുന്നതുപോലെ സുരക്ഷിതവും സുരക്ഷിതമല്ലാത്തതുമായ ഉപപദ്ധതികൾ ഉൾക്കൊള്ളുന്ന ഒരു മൾട്ടിപ്രോജക്റ്റ് ഘടനയാണ് les, ആപ്ലിക്കേഷനുകൾ നൽകിയിരിക്കുന്നത്.
- സിസ്റ്റം പാർട്ടീഷനിംഗ് ഹെഡർ ഉൾപ്പെടുത്തുന്നതിനായി വിപുലീകരിച്ച CMSIS-5 ഉപകരണ ടെംപ്ലേറ്റ് അനുസരിച്ച് TrustZone®- പ്രാപ്തമാക്കിയ പ്രോജക്റ്റുകൾ വികസിപ്പിച്ചിരിക്കുന്നു file വിഭജനം_ .h, സെക്യൂരിറ്റി ആട്രിബ്യൂട്ട് യൂണിറ്റ് (SAU), FPU എന്നിവയുടെ സജ്ജീകരണത്തിനും സുരക്ഷിത നിർവ്വഹണ നിലയിലെ സുരക്ഷിത/സുരക്ഷിതമല്ലാത്ത തടസ്സങ്ങൾ അസൈൻമെൻ്റിനും പ്രധാനമായും ഉത്തരവാദി ആരാണ്.
- സുരക്ഷിതമായ CMSIS SystemInit() ഫംഗ്ഷനിലാണ് ഈ സജ്ജീകരണം നടപ്പിലാക്കുന്നത്, സുരക്ഷിതമായ ആപ്ലിക്കേഷൻ main() ഫംഗ്ഷനിൽ പ്രവേശിക്കുന്നതിന് മുമ്പ് സ്റ്റാർട്ടപ്പിൽ വിളിക്കുന്ന ഇത്. സോഫ്റ്റ്വെയർ മാർഗ്ഗനിർദ്ദേശങ്ങളുടെ Arm® TrustZone®-M ഡോക്യുമെൻ്റേഷൻ കാണുക.
- STM32CubeWBA പാക്കേജ് ഫേംവെയർ പാക്കേജ് പാർട്ടീഷനിൽ ഡിഫോൾട്ട് മെമ്മറി പാർട്ടീഷനിംഗ് നൽകുന്നു _ .എച്ച് fileതാഴെ ലഭ്യമാണ്: \ഡ്രൈവറുകൾ\CMSIS\ഉപകരണം\ST\STM32WBAxx\T emplates
- ഈ വിഭജനത്തിൽ files, SAU സ്ഥിരസ്ഥിതിയായി പ്രവർത്തനരഹിതമാക്കിയിരിക്കുന്നു. തത്ഫലമായി, IDAU മെമ്മറി മാപ്പിംഗ് സുരക്ഷാ ആട്രിബ്യൂഷനുപയോഗിക്കുന്നു. RM0495 റഫറൻസ് മാനുവലിൽ TrustZone® സാങ്കേതികവിദ്യ ഉപയോഗിച്ച് Secure/non-secure പാർട്ടീഷനിംഗ് ചിത്രം കാണുക.
- ഉപയോക്താവ് SAU പ്രവർത്തനക്ഷമമാക്കുകയാണെങ്കിൽ, ഒരു ഡിഫോൾട്ട് SAU മേഖലകളുടെ കോൺഫിഗറേഷൻ പാർട്ടീഷനിൽ മുൻകൂട്ടി നിശ്ചയിച്ചിരിക്കുന്നു fileഇനിപ്പറയുന്നവയാണ്:
- SAU മേഖല 0: 0x08080000 – 0x081FFFFF (ഫ്ലാഷ് മെമ്മറിയുടെ സുരക്ഷിതമല്ലാത്ത സുരക്ഷിത പകുതി (512 Kbytes))
- SAU മേഖല 1: 0x0BF88000 – 0x0BF97FFF (സുരക്ഷിതമല്ലാത്ത സിസ്റ്റം മെമ്മറി)
- SAU മേഖല 2: 0x0C07E000 – 0x0C07FFFF (സുരക്ഷിതവും സുരക്ഷിതമല്ലാത്തതും വിളിക്കാവുന്നതാണ്)
- SAU മേഖല 3: 0x20010000 – 0x2001FFFF (സുരക്ഷിതമല്ലാത്ത SRAM2 (64 Kbytes))
- SAU മേഖല 4: 0x40000000 – 0x4FFFFFFF (സുരക്ഷിതമല്ലാത്ത പെരിഫറൽ മാപ്പ് ചെയ്ത മെമ്മറി)
- ഡിഫോൾട്ട് പാർട്ടീഷനിംഗുമായി പൊരുത്തപ്പെടുന്നതിന്, STM32WBAxx സീരീസ് ഉപകരണങ്ങൾക്ക് ഇനിപ്പറയുന്ന ഉപയോക്തൃ ഓപ്ഷൻ ബൈറ്റുകൾ സജ്ജീകരിച്ചിരിക്കണം:
- TZEN = 1 (TrustZone®-പ്രവർത്തനക്ഷമമാക്കിയ ഉപകരണം)
- SECWM1_PSTRT = 0x0 SECWM1_PEND = 0x3F (ആന്തരിക ഫ്ലാഷ് മെമ്മറിയുടെ 64 പേജുകളിൽ 128 എണ്ണം സുരക്ഷിതമായി സജ്ജീകരിച്ചിരിക്കുന്നു) ശ്രദ്ധിക്കുക: TZEN = 1-ൽ ആന്തരിക ഫ്ലാഷ് മെമ്മറി പൂർണ്ണമായി സുരക്ഷിതമാണ്. ഉപയോക്തൃ ഓപ്ഷൻ ബൈറ്റുകൾ SECWM1_PSTRT/ SECWM1_PEND ആപ്ലിക്കേഷൻ അനുസരിച്ച് സജ്ജീകരിച്ചിരിക്കണം. മെമ്മറി കോൺഫിഗറേഷൻ (SAU മേഖലകൾ, SAU പ്രവർത്തനക്ഷമമാക്കിയിട്ടുണ്ടെങ്കിൽ). സുരക്ഷിത/സുരക്ഷിതമല്ലാത്ത ആപ്ലിക്കേഷനുകൾ പ്രോജക്റ്റ് ലിങ്കർ fileകളും വിന്യസിക്കണം.
- എല്ലാവരും മുൻampലെസിന് സമാന ഘടനയുണ്ട്:
- എല്ലാ തലക്കെട്ടുകളും അടങ്ങുന്ന \Inc ഫോൾഡർ files.
- സോഴ്സ് കോഡ് അടങ്ങുന്ന Src ഫോൾഡർ.
- \EWARM, \MDK-ARM, \STM32CubeIDE ഫോൾഡറുകൾ ഓരോ ടൂൾചെയിനിനും മുൻകൂട്ടി ക്രമീകരിച്ച പ്രോജക്റ്റ് അടങ്ങിയിരിക്കുന്നു.
- readme.md, readme.html എന്നിവ മുൻ വിവരിക്കുന്നുample പെരുമാറ്റവും അത് പ്രവർത്തിക്കാൻ ആവശ്യമായ അന്തരീക്ഷവും.
- ഐഒസി file മിക്ക ഫേംവെയറുകളും തുറക്കാൻ ഇത് ഉപയോക്താക്കളെ അനുവദിക്കുന്നുamples STM32CubeMX-നുള്ളിൽ.
STM32CubeWBA ഉപയോഗിച്ച് ആരംഭിക്കുന്നു
ആദ്യ എച്ച്എഎൽ മുൻ പ്രവർത്തിപ്പിക്കുന്നുample
ആദ്യ മുൻ പ്രവർത്തിപ്പിക്കുന്നത് എത്ര ലളിതമാണെന്ന് ഈ വിഭാഗം വിശദീകരിക്കുന്നുample STM32CubeWBA-നുള്ളിൽ. NUCLEO-WBA52CG ബോർഡിൽ പ്രവർത്തിക്കുന്ന ലളിതമായ എൽഇഡി ടോഗിളിൻ്റെ ജനറേഷൻ ഒരു ചിത്രീകരണമായി ഇത് ഉപയോഗിക്കുന്നു:
- STM32CubeWBA MCU പാക്കേജ് ഡൗൺലോഡ് ചെയ്യുക.
- നിങ്ങൾക്കിഷ്ടമുള്ള ഒരു ഡയറക്ടറിയിലേക്ക് അത് അൺസിപ്പ് ചെയ്യുക.
- ചിത്രം 1-ൽ കാണിച്ചിരിക്കുന്ന പാക്കേജ് ഘടനയിൽ മാറ്റം വരുത്തുന്നില്ലെന്ന് ഉറപ്പാക്കുക. നിങ്ങളുടെ റൂട്ട് വോള്യത്തിന് അടുത്തുള്ള ഒരു സ്ഥലത്ത് പാക്കേജ് പകർത്താനും ശുപാർശ ചെയ്യുന്നു (അർത്ഥം C:\ST അല്ലെങ്കിൽ G:\Tests), ചില IDE-കൾ പാതയിൽ പ്രശ്നങ്ങൾ നേരിടുന്നതിനാൽ നീളം വളരെ കൂടുതലാണ്.
ഒരു ആദ്യ TrustZone® പ്രവർത്തനക്ഷമമാക്കിയ എക്സിample
- ഒരു TrustZone® പ്രവർത്തനക്ഷമമാക്കി ലോഡുചെയ്യുന്നതിനും പ്രവർത്തിപ്പിക്കുന്നതിനും മുമ്പ്ample, എക്സി വായിക്കേണ്ടത് നിർബന്ധമാണ്ampഎന്നെ വായിച്ചു file ഏതെങ്കിലും പ്രത്യേക കോൺഫിഗറേഷനായി, സെക്ഷൻ 4.2.1 TrustZone® പ്രവർത്തനക്ഷമമാക്കിയ പ്രോജക്റ്റുകളിൽ (TZEN=1 (ഉപയോക്തൃ ഓപ്ഷൻ ബൈറ്റ്)) വിവരിച്ചിരിക്കുന്നതുപോലെ സുരക്ഷ പ്രവർത്തനക്ഷമമാണെന്ന് ഉറപ്പാക്കുന്നു.
- \Projects\NUCLEO-WBA52CG\Ex എന്നതിലേക്ക് ബ്രൗസ് ചെയ്യുകampലെസ്.
- \GPIO തുറക്കുക, തുടർന്ന് \GPIO_IOToggle_TrustZone ഫോൾഡറുകൾ.
- നിങ്ങൾ തിരഞ്ഞെടുത്ത ടൂൾചെയിൻ ഉപയോഗിച്ച് പ്രോജക്റ്റ് തുറക്കുക. പെട്ടെന്നൊരു ഓവർview എങ്ങനെ തുറക്കാം, നിർമ്മിക്കാം, പ്രവർത്തിപ്പിക്കാം എന്നതിനെക്കുറിച്ച്ampപിന്തുണയ്ക്കുന്ന ടൂൾചെയിനുകളുള്ള le ചുവടെ നൽകിയിരിക്കുന്നു.
- സുരക്ഷിതവും സുരക്ഷിതമല്ലാത്തതുമായ എല്ലാ പദ്ധതികളും ക്രമത്തിൽ പുനർനിർമ്മിക്കുക files കൂടാതെ സുരക്ഷിതവും സുരക്ഷിതമല്ലാത്തതുമായ ഇമേജുകൾ ടാർഗെറ്റ് മെമ്മറിയിലേക്ക് ലോഡ് ചെയ്യുക.
- മുൻ പ്രവർത്തിപ്പിക്കുകample: പതിവായി, സുരക്ഷിത ആപ്ലിക്കേഷൻ ഓരോ സെക്കൻഡിലും LD2 ടോഗിൾ ചെയ്യുന്നു, കൂടാതെ സുരക്ഷിതമല്ലാത്ത ആപ്ലിക്കേഷൻ LD3 ഇരട്ടി വേഗത്തിൽ ടോഗിൾ ചെയ്യുന്നു. കൂടുതൽ വിവരങ്ങൾക്ക്, readme റഫർ ചെയ്യുക file മുൻample.
- ഒരു മുൻ തുറക്കാനും നിർമ്മിക്കാനും പ്രവർത്തിപ്പിക്കാനുംampപിന്തുണയ്ക്കുന്ന ടൂൾചെയിനുകൾക്കൊപ്പം, ചുവടെയുള്ള ഘട്ടങ്ങൾ പാലിക്കുക:
- EWARM:
- മുൻample ഫോൾഡർ, \EWARM സബ്ഫോൾഡർ തുറക്കുക.
- Project.eww വർക്ക്സ്പെയ്സ് സമാരംഭിക്കുക
- xxxxx_S സുരക്ഷിത പദ്ധതി പുനർനിർമ്മിക്കുക files: [പ്രോജക്റ്റ്]>[എല്ലാം പുനർനിർമ്മിക്കുക].
- xxxxx_NS സുരക്ഷിതമല്ലാത്ത പ്രോജക്റ്റ് സജീവ ആപ്ലിക്കേഷനായി സജ്ജമാക്കുക (xxxxx_NS പ്രോജക്റ്റിൽ വലത് ക്ലിക്ക് ചെയ്യുക [സജീവമായി സജ്ജമാക്കുക])
- xxxxx_NS സുരക്ഷിതമല്ലാത്ത പ്രോജക്റ്റ് പുനർനിർമ്മിക്കുക files: [പ്രോജക്റ്റ്]>[എല്ലാം പുനർനിർമ്മിക്കുക].
- [പ്രോജക്റ്റ്]>[ഡൗൺലോഡ്]>[സജീവ ആപ്ലിക്കേഷൻ ഡൗൺലോഡ് ചെയ്യുക] ഉപയോഗിച്ച് സുരക്ഷിതമല്ലാത്ത ബൈനറി ഫ്ലാഷ് ചെയ്യുക.
- xxxxx_S സജീവ ആപ്ലിക്കേഷനായി സജ്ജമാക്കുക (xxxxx_S പ്രോജക്റ്റിൽ വലത് ക്ലിക്ക് ചെയ്യുക [സജീവമായി സജ്ജമാക്കുക].
- [ഡൗൺലോഡ്, ഡീബഗ്] (Ctrl+D) ഉപയോഗിച്ച് സുരക്ഷിത ബൈനറി ഫ്ലാഷ് ചെയ്യുക.
- പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കുക: [ഡീബഗ്]>[Go(F5)]
- MDK-ARM:
- \MDK-ARM ടൂൾചെയിൻ തുറക്കുക.
- Multiprojects വർക്ക്സ്പേസ് തുറക്കുക file Project.uvmpw.
- സജീവ ആപ്ലിക്കേഷനായി xxxxx_s പ്രോജക്റ്റ് തിരഞ്ഞെടുക്കുക ([ആക്റ്റീവ് പ്രോജക്റ്റായി സജ്ജമാക്കുക]).
- xxxxx_s പ്രോജക്റ്റ് നിർമ്മിക്കുക.
- xxxxx_ns പ്രോജക്റ്റ് സജീവ പ്രോജക്റ്റായി തിരഞ്ഞെടുക്കുക ([ആക്റ്റീവ് പ്രോജക്റ്റായി സജ്ജമാക്കുക]).
- xxxxx_ns പ്രോജക്റ്റ് നിർമ്മിക്കുക.
- സുരക്ഷിതമല്ലാത്ത ബൈനറി ([F8]) ലോഡ് ചെയ്യുക. ഇത് ഫ്ലാഷ് മെമ്മറിയിലേക്ക് \MDK-ARM\xxxxx_ns\Exe\xxxxx_ns.axf ഡൗൺലോഡ് ചെയ്യുന്നു)
- Project_s പ്രോജക്റ്റ് സജീവ പ്രോജക്റ്റായി തിരഞ്ഞെടുക്കുക ([ആക്റ്റീവ് പ്രോജക്റ്റായി സജ്ജമാക്കുക]).
- സുരക്ഷിത ബൈനറി ലോഡ് ചെയ്യുക ([F8]). ഇത് ഫ്ലാഷ് മെമ്മറിയിലേക്ക് \MDK-ARM\xxxxx_s\Exe\xxxxx_s.axf ഡൗൺലോഡ് ചെയ്യുന്നു).
- മുൻ പ്രവർത്തിപ്പിക്കുകample.
- STM32CubeIDE:
- STM32CubeIDE ടൂൾചെയിൻ തുറക്കുക.
- Multiprojects വർക്ക്സ്പേസ് തുറക്കുക file .പദ്ധതി.
- xxxxx_Secure പ്രോജക്റ്റ് പുനർനിർമ്മിക്കുക.
- xxxxx_NonSecure പ്രോജക്റ്റ് പുനർനിർമ്മിക്കുക.
- സുരക്ഷിത പ്രോജക്റ്റിനായി [ഡീബഗ് ആസ് എസ്ടിഎം32 കോർട്ടെക്സ്-എം സി/സി++] ആപ്ലിക്കേഷൻ സമാരംഭിക്കുക.
- [എഡിറ്റ് കോൺഫിഗറേഷൻ] വിൻഡോയിൽ, [സ്റ്റാർട്ടപ്പ്] പാനൽ തിരഞ്ഞെടുത്ത്, സുരക്ഷിതമല്ലാത്ത പ്രോജക്റ്റിൻ്റെ ചിത്രവും ചിഹ്നങ്ങളും ലോഡ് ചേർക്കുക.
പ്രധാനപ്പെട്ടത്: സുരക്ഷിതമായ പ്രോജക്റ്റിന് മുമ്പ് സുരക്ഷിതമല്ലാത്ത പ്രോജക്റ്റ് ലോഡ് ചെയ്യണം. - [ശരി] ക്ലിക്ക് ചെയ്യുക.
- മുൻ പ്രവർത്തിപ്പിക്കുകampഡീബഗ് വീക്ഷണത്തിൽ le.
- EWARM:
ഒരു ആദ്യ TrustZone® അപ്രാപ്തമാക്കിയ മുൻample
- ഒരു TrustZone® അപ്രാപ്തമാക്കി ലോഡുചെയ്യുന്നതിനും പ്രവർത്തിപ്പിക്കുന്നതിനും മുമ്പ്ample, എക്സി വായിക്കേണ്ടത് നിർബന്ധമാണ്ampഎന്നെ വായിച്ചു file ഏതെങ്കിലും പ്രത്യേക കോൺഫിഗറേഷനായി. പ്രത്യേക പരാമർശങ്ങളൊന്നും ഇല്ലെങ്കിൽ, ബോർഡ് ഉപകരണത്തിന് സുരക്ഷ പ്രവർത്തനരഹിതമാക്കിയിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക (TZEN=0 (ഉപയോക്തൃ ഓപ്ഷൻ ബൈറ്റ്)). TZEN = 0 ലേക്ക് ഓപ്ഷണൽ റിഗ്രഷൻ ചെയ്യുന്നതിനായി പതിവ് ചോദ്യങ്ങൾ കാണുക
- \Projects\NUCLEO-WBA52CG\Ex എന്നതിലേക്ക് ബ്രൗസ് ചെയ്യുകampലെസ്.
- \GPIO തുറക്കുക, തുടർന്ന് \GPIO_EXTI ഫോൾഡറുകൾ.
- നിങ്ങൾ തിരഞ്ഞെടുത്ത ടൂൾചെയിൻ ഉപയോഗിച്ച് പ്രോജക്റ്റ് തുറക്കുക. പെട്ടെന്നൊരു ഓവർview എങ്ങനെ തുറക്കാം, നിർമ്മിക്കാം, പ്രവർത്തിപ്പിക്കാം എന്നതിനെക്കുറിച്ച്ampപിന്തുണയ്ക്കുന്ന ടൂൾചെയിനുകളുള്ള le ചുവടെ നൽകിയിരിക്കുന്നു.
- എല്ലാം പുനർനിർമ്മിക്കുക files ചെയ്ത് നിങ്ങളുടെ ഇമേജ് ടാർഗെറ്റ് മെമ്മറിയിലേക്ക് ലോഡ് ചെയ്യുക.
- മുൻ പ്രവർത്തിപ്പിക്കുകample: ഓരോ തവണയും [USER] പുഷ് ബട്ടൺ അമർത്തുമ്പോൾ, LD1 LED ടോഗിൾ ചെയ്യുന്നു. കൂടുതൽ വിവരങ്ങൾക്ക്, readme റഫർ ചെയ്യുക file മുൻample.
- ഒരു മുൻ തുറക്കാനും നിർമ്മിക്കാനും പ്രവർത്തിപ്പിക്കാനുംampപിന്തുണയ്ക്കുന്ന ടൂൾചെയിനുകൾക്കൊപ്പം, ചുവടെയുള്ള ഘട്ടങ്ങൾ പാലിക്കുക:
- EWARM:
- മുൻample ഫോൾഡർ, \EWARM സബ്ഫോൾഡർ തുറക്കുക.
- Project.eww വർക്ക്സ്പെയ്സ് സമാരംഭിക്കുക (ഒരു മുൻ എന്നതിൽ നിന്ന് വർക്ക്സ്പെയ്സിൻ്റെ പേര് മാറിയേക്കാംample മറ്റൊന്നിലേക്ക്).
- എല്ലാം പുനർനിർമ്മിക്കുക files: [പ്രോജക്റ്റ്]>[എല്ലാം പുനർനിർമ്മിക്കുക].
- പ്രോജക്റ്റ് ഇമേജ് ലോഡ് ചെയ്യുക: [പ്രോജക്റ്റ്]>[ഡീബഗ്].
- പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കുക: [ഡീബഗ്]>[Go (F5)].
- MDK-ARM:
- മുൻample ഫോൾഡർ, \MDK-ARM സബ്ഫോൾഡർ തുറക്കുക.
- Project.uvproj വർക്ക്സ്പെയ്സ് സമാരംഭിക്കുക (വർക്ക്സ്പെയ്സിൻ്റെ പേര് ഒരു മുൻ എന്നതിൽ നിന്ന് മാറിയേക്കാംample മറ്റൊന്നിലേക്ക്).
- എല്ലാം പുനർനിർമ്മിക്കുക files:[പ്രോജക്റ്റ്]>[എല്ലാ ലക്ഷ്യങ്ങളും പുനർനിർമ്മിക്കുക fileഎസ്].
- പ്രോജക്റ്റ് ഇമേജ് ലോഡ് ചെയ്യുക: [ഡീബഗ്]>[ഡീബഗ് സെഷൻ ആരംഭിക്കുക/നിർത്തുക].
- പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കുക: [ഡീബഗ്]>[റൺ (F5)].
- STM32CubeIDE:
- STM32CubeIDE ടൂൾചെയിൻ തുറക്കുക.
- ക്ലിക്കുചെയ്യുക [File]>[വർക്ക്സ്പെയ്സ് മാറുക]>[മറ്റുള്ളവ] കൂടാതെ STM32CubeIDE വർക്ക്സ്പെയ്സ് ഡയറക്ടറിയിലേക്ക് ബ്രൗസ് ചെയ്യുക.
- ക്ലിക്കുചെയ്യുക [File]>[ഇറക്കുമതി] , [പൊതുവായ]> [നിലവിലുള്ള പ്രോജക്റ്റുകൾ വർക്ക്സ്പെയ്സിലേക്ക്] തിരഞ്ഞെടുക്കുക, തുടർന്ന് [അടുത്തത്] ക്ലിക്കുചെയ്യുക.
- STM32CubeIDE വർക്ക്സ്പേസ് ഡയറക്ടറിയിലേക്ക് ബ്രൗസ് ചെയ്ത് പ്രോജക്റ്റ് തിരഞ്ഞെടുക്കുക.
- എല്ലാ പദ്ധതികളും പുനർനിർമ്മിക്കുക files: [പ്രോജക്റ്റ് എക്സ്പ്ലോറർ] വിൻഡോയിൽ പ്രോജക്റ്റ് തിരഞ്ഞെടുത്ത് [പ്രോജക്റ്റ്]>[പ്രോജക്റ്റ് ബിൽഡ്] മെനുവിൽ ക്ലിക്കുചെയ്യുക.
- പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കുക: [റൺ]>[ഡീബഗ് (F11)]
- EWARM:
ഒരു ഇഷ്ടാനുസൃത ആപ്ലിക്കേഷൻ വികസിപ്പിക്കുന്നു
കുറിപ്പ്: ഫ്ലാഷ് മെമ്മറിയിൽ നിന്ന് 0 വെയിറ്റ്-സ്റ്റേറ്റ് എക്സിക്യൂഷൻ ലഭിക്കുന്നതിനും, പരമാവധി പ്രകടനത്തിലും മികച്ച പവർ ഉപഭോഗത്തിലും എത്തിച്ചേരുന്നതിനും സോഫ്റ്റ്വെയർ നിർദ്ദേശ കാഷെ (ICACHE) പ്രവർത്തനക്ഷമമാക്കണം.
ഒരു ആപ്ലിക്കേഷൻ വികസിപ്പിക്കുന്നതിനോ അപ്ഡേറ്റ് ചെയ്യുന്നതിനോ STM32CubeMX ഉപയോഗിക്കുന്നു
- STM32CubeWBA MCU പാക്കേജിൽ, മിക്കവാറും എല്ലാ പ്രോജക്റ്റുകളും മുൻampസിസ്റ്റം, പെരിഫറലുകൾ, മിഡിൽവെയർ എന്നിവ ആരംഭിക്കുന്നതിന് STM32CubeMX ടൂൾ ഉപയോഗിച്ചാണ് les ജനറേറ്റ് ചെയ്യുന്നത്.
- നിലവിലുള്ള ഒരു പദ്ധതിയുടെ നേരിട്ടുള്ള ഉപയോഗം മുൻampSTM32CubeMX ടൂളിൽ നിന്നുള്ള le-ന് STM32CubeMX 6.10.0 അല്ലെങ്കിൽ ഉയർന്നത് ആവശ്യമാണ്:
- STM32CubeMX ഇൻസ്റ്റാൾ ചെയ്ത ശേഷം, തുറന്ന് ആവശ്യമെങ്കിൽ ഒരു നിർദ്ദിഷ്ട പ്രോജക്റ്റ് അപ്ഡേറ്റ് ചെയ്യുക. നിലവിലുള്ള ഒരു പ്രോജക്റ്റ് തുറക്കുന്നതിനുള്ള ഏറ്റവും ലളിതമായ മാർഗ്ഗം *.ioc-ൽ ഡബിൾ ക്ലിക്ക് ചെയ്യുക എന്നതാണ് file അങ്ങനെ STM32CubeMX പ്രോജക്റ്റും അതിൻ്റെ ഉറവിടവും സ്വയമേവ തുറക്കുന്നു files.
- STM32CubeMX അത്തരം പ്രോജക്റ്റുകളുടെ ഇനീഷ്യലൈസേഷൻ സോഴ്സ് കോഡ് സൃഷ്ടിക്കുന്നു. "USER CODE BEGIN", "USER CODE END" എന്നീ കമൻ്റുകളാൽ പ്രധാന ആപ്ലിക്കേഷൻ സോഴ്സ് കോഡ് അടങ്ങിയിരിക്കുന്നു. IP തിരഞ്ഞെടുക്കലും ക്രമീകരണവും പരിഷ്ക്കരിക്കുകയാണെങ്കിൽ, STM32CubeMX കോഡിൻ്റെ ഇനീഷ്യലൈസേഷൻ ഭാഗം അപ്ഡേറ്റ് ചെയ്യുന്നു, പക്ഷേ പ്രധാന ആപ്ലിക്കേഷൻ സോഴ്സ് കോഡ് സംരക്ഷിക്കുന്നു.
- STM32CubeMX-ൽ ഒരു ഇഷ്ടാനുസൃത പ്രോജക്റ്റ് വികസിപ്പിക്കുന്നതിന്, ഘട്ടം ഘട്ടമായുള്ള പ്രക്രിയ പിന്തുടരുക:
- ആവശ്യമായ പെരിഫറലുകളുമായി പൊരുത്തപ്പെടുന്ന STM32 മൈക്രോകൺട്രോളർ തിരഞ്ഞെടുക്കുക.
- ഒരു പിൻഔട്ട്-കോൺഫ്ലിക്റ്റ് സോൾവർ, ഒരു ക്ലോക്ക്-ട്രീ സെറ്റിംഗ് ഹെൽപ്പർ, ഒരു പവർ കൺസ്യൂഷൻ കാൽക്കുലേറ്റർ, കൂടാതെ MCU പെരിഫറൽ കോൺഫിഗറേഷൻ (GPIO അല്ലെങ്കിൽ USART പോലുള്ളവ), മിഡിൽവെയർ സ്റ്റാക്കുകൾ (USB പോലുള്ളവ) നടപ്പിലാക്കുന്ന യൂട്ടിലിറ്റി എന്നിവ ഉപയോഗിച്ച് ആവശ്യമായ എല്ലാ ഉൾച്ചേർത്ത സോഫ്റ്റ്വെയറുകളും കോൺഫിഗർ ചെയ്യുക.
- തിരഞ്ഞെടുത്ത കോൺഫിഗറേഷനെ അടിസ്ഥാനമാക്കി ഇനീഷ്യലൈസേഷൻ സി കോഡ് സൃഷ്ടിക്കുക. ഈ കോഡ് നിരവധി വികസന പരിതസ്ഥിതികളിൽ ഉപയോഗിക്കാൻ തയ്യാറാണ്. ഉപയോക്തൃ കോഡ് അടുത്ത കോഡ് ജനറേഷനിൽ സൂക്ഷിക്കുന്നു.
- STM32CubeMX-നെ കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക്, STM32 കോൺഫിഗറേഷനും ഇനീഷ്യലൈസേഷൻ C കോഡ് ജനറേഷനും (UM32) ഉപയോക്തൃ മാനുവൽ STM1718CubeMX കാണുക.
- ലഭ്യമായ പ്രോജക്റ്റിൻ്റെ ഒരു ലിസ്റ്റിനായി, ഉദാampSTM32CubeWBA എന്നതിനായുള്ള ലെസ്, അപേക്ഷാ കുറിപ്പ് STM32Cube ഫേംവെയർ കാണുകampSTM32WBA സീരീസിനുള്ള ലെസ് (AN5929).
ഡ്രൈവർ ആപ്ലിക്കേഷനുകൾ
HAL അപേക്ഷ
STM32CubeWBA ഉപയോഗിച്ച് ഒരു ഇഷ്ടാനുസൃത HAL ആപ്ലിക്കേഷൻ സൃഷ്ടിക്കുന്നതിന് ആവശ്യമായ ഘട്ടങ്ങൾ ഈ വിഭാഗം വിവരിക്കുന്നു:
- ഒരു പ്രോജക്റ്റ് സൃഷ്ടിക്കുക
- ഒരു പുതിയ പ്രോജക്റ്റ് സൃഷ്ടിക്കുന്നതിന്, \Projects\ എന്നതിന് കീഴിൽ ഓരോ ബോർഡിനും നൽകിയിരിക്കുന്ന ടെംപ്ലേറ്റ് പ്രോജക്റ്റിൽ നിന്ന് ആരംഭിക്കുക \ടെംപ്ലേറ്റുകൾ അല്ലെങ്കിൽ \പ്രോജക്റ്റുകൾ\ എന്നതിന് കീഴിൽ ലഭ്യമായ ഏതെങ്കിലും പ്രോജക്റ്റിൽ നിന്ന് \പരീക്ഷ പ്ലെസ് അല്ലെങ്കിൽ \പ്രോജക്റ്റുകൾ\ \അപ്ലിക്കേഷനുകൾ (എവിടെ STM32CubeWBA പോലുള്ള ബോർഡ് നാമം സൂചിപ്പിക്കുന്നു).
- ടെംപ്ലേറ്റ് പ്രോജക്റ്റ് ഒരു ശൂന്യമായ മെയിൻ ലൂപ്പ് ഫംഗ്ഷൻ നൽകുന്നു. എന്നിരുന്നാലും, STM32CubeWBA പ്രോജക്റ്റ് ക്രമീകരണങ്ങൾ മനസിലാക്കാൻ ഇത് ഒരു നല്ല തുടക്കമാണ്. ടെംപ്ലേറ്റിന് ഇനിപ്പറയുന്ന സവിശേഷതകൾ ഉണ്ട്:
- അതിൽ HAL സോഴ്സ് കോഡ്, CMSIS, BSP ഡ്രൈവറുകൾ എന്നിവ അടങ്ങിയിരിക്കുന്നു, അവ തന്നിരിക്കുന്ന ബോർഡിൽ ഒരു കോഡ് വികസിപ്പിക്കുന്നതിന് ആവശ്യമായ ഏറ്റവും കുറഞ്ഞ ഘടകങ്ങളാണ്.
- എല്ലാ ഫേംവെയർ ഘടകങ്ങൾക്കുമുള്ള ഉൾപ്പെടുത്തിയ പാതകൾ ഇതിൽ അടങ്ങിയിരിക്കുന്നു.
- ഇത് പിന്തുണയ്ക്കുന്ന STM32WBA സീരീസ് ഉപകരണങ്ങളെ നിർവചിക്കുന്നു, ഇത് CMSIS, HAL ഡ്രൈവറുകൾ ശരിയായി കോൺഫിഗർ ചെയ്യാൻ അനുവദിക്കുന്നു.
- ഇത് ഉപയോഗിക്കാൻ തയ്യാറുള്ള ഉപയോക്താവിനെ നൽകുന്നു fileചുവടെ കാണിച്ചിരിക്കുന്നതുപോലെ മുൻകൂട്ടി ക്രമീകരിച്ചിരിക്കുന്നു:
Arm® core SysTick ഉപയോഗിച്ച് ഡിഫോൾട്ട് ടൈം ബേസ് ഉപയോഗിച്ച് HAL ആരംഭിച്ചു. HAL_Delay() ആവശ്യത്തിനായി SysTick ISR നടപ്പിലാക്കി.
കുറിപ്പ്: നിലവിലുള്ള ഒരു പ്രോജക്റ്റ് മറ്റൊരു ലൊക്കേഷനിലേക്ക് പകർത്തുമ്പോൾ, ഉൾപ്പെടുത്തിയിരിക്കുന്ന എല്ലാ പാതകളും അപ്ഡേറ്റ് ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക.
- ഉപയോക്തൃ പ്രോജക്റ്റിലേക്ക് ആവശ്യമായ മിഡിൽവെയർ ചേർക്കുക (ഓപ്ഷണൽ)
ഉറവിടം തിരിച്ചറിയാൻ fileകൾ പദ്ധതിയിൽ ചേർക്കണം file പട്ടിക, ഓരോ മിഡിൽവെയറിനും നൽകിയിരിക്കുന്ന ഡോക്യുമെൻ്റേഷൻ പരിശോധിക്കുക. \Projects\STM32xxx_yyy\Applications\ എന്നതിന് കീഴിലുള്ള ആപ്ലിക്കേഷനുകൾ കാണുക (എവിടെ ഏത് ഉറവിടമാണെന്ന് അറിയാൻ ThreadX) പോലെയുള്ള മിഡിൽവെയർ സ്റ്റാക്കിനെ സൂചിപ്പിക്കുന്നു files ഉം ഉൾപ്പെടുന്ന പാതകളും ചേർക്കേണ്ടതാണ്. - ഫേംവെയർ ഘടകങ്ങൾ കോൺഫിഗർ ചെയ്യുക
എച്ച്എഎൽ, മിഡിൽവെയർ ഘടകങ്ങൾ മാക്രോസ് ഉപയോഗിച്ച് ഒരു കൂട്ടം ബിൽഡ്-ടൈം കോൺഫിഗറേഷൻ ഓപ്ഷനുകൾ വാഗ്ദാനം ചെയ്യുന്നു #define ഒരു ഹെഡറിൽ പ്രഖ്യാപിച്ചു file. ഒരു ടെംപ്ലേറ്റ് കോൺഫിഗറേഷൻ file ഓരോ ഘടകത്തിലും നൽകിയിരിക്കുന്നു, അത് പ്രോജക്റ്റ് ഫോൾഡറിലേക്ക് പകർത്തേണ്ടതുണ്ട് (സാധാരണയായി കോൺഫിഗറേഷൻ file xxx_conf_template.h എന്ന് പേരിട്ടിരിക്കുന്നു, പ്രോജക്റ്റ് ഫോൾഡറിലേക്ക് പകർത്തുമ്പോൾ _ടെംപ്ലേറ്റ് എന്ന വാക്ക് നീക്കം ചെയ്യേണ്ടതുണ്ട്). കോൺഫിഗറേഷൻ file ഓരോ കോൺഫിഗറേഷൻ ഓപ്ഷൻ്റെയും സ്വാധീനം മനസ്സിലാക്കാൻ മതിയായ വിവരങ്ങൾ നൽകുന്നു. ഓരോ ഘടകത്തിനും നൽകിയിരിക്കുന്ന ഡോക്യുമെൻ്റേഷനിൽ കൂടുതൽ വിശദമായ വിവരങ്ങൾ ലഭ്യമാണ്. - HAL ലൈബ്രറി ആരംഭിക്കുക
പ്രധാന പ്രോഗ്രാമിലേക്ക് ചാടിയ ശേഷം, ഇനിപ്പറയുന്ന ജോലികൾ നിർവഹിക്കുന്ന HAL ലൈബ്രറി ആരംഭിക്കുന്നതിന് ആപ്ലിക്കേഷൻ കോഡ് HAL_Init() API-യെ വിളിക്കണം:- ഫ്ലാഷ് മെമ്മറി പ്രീഫെച്ചിൻ്റെയും SysTick ഇൻ്ററപ്റ്റ് മുൻഗണനയുടെയും കോൺഫിഗറേഷൻ (st m32wbaxx_hal_conf.h-ൽ നിർവചിച്ചിരിക്കുന്ന മാക്രോകളിലൂടെ).
- SysTick ഇൻ്ററപ്റ്റ് പ്രയോറിറ്റിയിൽ ഓരോ മില്ലിസെക്കൻഡിലും ഒരു ഇൻ്ററപ്റ്റ് സൃഷ്ടിക്കുന്നതിനുള്ള സിസ്റ്റിക്കിൻ്റെ ക്രമീകരണം TICK_INT_PRIO stm32wbaxx_hal_conf.h-ൽ നിർവചിച്ചിരിക്കുന്നു.
- എൻവിസി ഗ്രൂപ്പിൻ്റെ മുൻഗണന 0 ആയി ക്രമീകരണം.
- HAL_MspInit() കോൾബാക്ക് ഫംഗ്ഷൻ്റെ കോൾ stm32wbaxx_hal_msp.c ഉപയോക്താവിൽ നിർവചിച്ചിരിക്കുന്നു file ആഗോള ലോ-ലെവൽ ഹാർഡ്വെയർ ഇനിഷ്യലൈസേഷനുകൾ നടത്താൻ.
- സിസ്റ്റം ക്ലോക്ക് കോൺഫിഗർ ചെയ്യുക
താഴെ വിവരിച്ചിരിക്കുന്ന രണ്ട് API-കൾ വിളിച്ചാണ് സിസ്റ്റം ക്ലോക്ക് കോൺഫിഗറേഷൻ ചെയ്യുന്നത്:- HAL_RCC_OscConfig(): ഈ API ആന്തരികവും ബാഹ്യവുമായ ഓസിലേറ്ററുകൾ ക്രമീകരിക്കുന്നു. ഉപയോക്താവ് ഒന്നോ എല്ലാ ഓസിലേറ്ററുകളും കോൺഫിഗർ ചെയ്യാൻ തിരഞ്ഞെടുക്കുന്നു.
- HAL_RCC_ClockConfig(): ഈ API സിസ്റ്റം ക്ലോക്ക് ഉറവിടം, ഫ്ലാഷ് മെമ്മറി ലേറ്റൻസി, AHB, APB പ്രീസ്കെയിലറുകൾ എന്നിവ ക്രമീകരിക്കുന്നു.
- പെരിഫറൽ ആരംഭിക്കുക
- ആദ്യം പെരിഫറൽ HAL_PPP_MspInit ഫംഗ്ഷൻ എഴുതുക. ഇനിപ്പറയുന്ന രീതിയിൽ തുടരുക:
- പെരിഫറൽ ക്ലോക്ക് പ്രവർത്തനക്ഷമമാക്കുക.
- പെരിഫറൽ GPIO-കൾ കോൺഫിഗർ ചെയ്യുക.
- ഡിഎംഎ ചാനൽ കോൺഫിഗർ ചെയ്ത് ഡിഎംഎ ഇൻ്ററപ്റ്റ് പ്രവർത്തനക്ഷമമാക്കുക (ആവശ്യമെങ്കിൽ).
- പെരിഫറൽ തടസ്സം പ്രവർത്തനക്ഷമമാക്കുക (ആവശ്യമെങ്കിൽ).
- ആവശ്യമെങ്കിൽ ആവശ്യമായ ഇൻ്ററപ്റ്റ് ഹാൻഡ്ലറുകളെ (പെരിഫറൽ, ഡിഎംഎ) വിളിക്കാൻ stm32xxx_it.c എഡിറ്റ് ചെയ്യുക.
- ഒരു പെരിഫറൽ ഇൻ്ററപ്റ്റോ ഡിഎംഎയോ ഉപയോഗിക്കാൻ പദ്ധതിയിട്ടിട്ടുണ്ടെങ്കിൽ, പ്രോസസ്സ് പൂർണ്ണമായ കോൾബാക്ക് ഫംഗ്ഷനുകൾ എഴുതുക.
- ഉപയോക്താവ് main.c ൽ file, പെരിഫറൽ ഹാൻഡിൽ ഘടന ആരംഭിക്കുക, തുടർന്ന് പെരിഫറൽ ആരംഭിക്കുന്നതിന് HAL_PPP_Init() എന്ന ഫംഗ്ഷനെ വിളിക്കുക.
- ആദ്യം പെരിഫറൽ HAL_PPP_MspInit ഫംഗ്ഷൻ എഴുതുക. ഇനിപ്പറയുന്ന രീതിയിൽ തുടരുക:
- ഒരു ആപ്ലിക്കേഷൻ വികസിപ്പിക്കുക
- ഇതിൽ എസ്tage, സിസ്റ്റം തയ്യാറാണ്, ഉപയോക്തൃ ആപ്ലിക്കേഷൻ കോഡ് വികസനം ആരംഭിക്കാൻ കഴിയും.
- പെരിഫറൽ കോൺഫിഗർ ചെയ്യുന്നതിനായി അവബോധജന്യവും ഉപയോഗിക്കാൻ തയ്യാറുള്ളതുമായ API-കൾ HAL നൽകുന്നു. ഏതെങ്കിലും ആപ്ലിക്കേഷൻ ആവശ്യകതകൾ ഉൾക്കൊള്ളുന്നതിനായി ഇത് പോളിംഗ്, തടസ്സങ്ങൾ, ഒരു ഡിഎംഎ പ്രോഗ്രാമിംഗ് മോഡൽ എന്നിവയെ പിന്തുണയ്ക്കുന്നു. ഓരോ പെരിഫറലും എങ്ങനെ ഉപയോഗിക്കണം എന്നതിനെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക്, റിച്ച് എക്സിampലെ സെറ്റ് STM32CubeWBA MCU പാക്കേജിൽ നൽകിയിരിക്കുന്നു.
ജാഗ്രത: ഡിഫോൾട്ട് HAL നടപ്പിലാക്കലിൽ, SysTick ടൈമർ ഒരു ടൈംബേസ് ആയി ഉപയോഗിക്കുന്നു: ഇത് കൃത്യമായ സമയ ഇടവേളകളിൽ തടസ്സങ്ങൾ സൃഷ്ടിക്കുന്നു. പെരിഫറൽ ISR പ്രോസസ്സിൽ നിന്നാണ് HAL_Delay() വിളിക്കുന്നതെങ്കിൽ, പെരിഫറൽ ഇൻ്ററപ്റ്റിനേക്കാൾ SysTick ഇൻ്ററപ്റ്റിന് ഉയർന്ന മുൻഗണന (സംഖ്യാപരമായി കുറവാണ്) ഉണ്ടെന്ന് ഉറപ്പാക്കുക. അല്ലെങ്കിൽ, കോളർ ISR പ്രോസസ്സ് തടഞ്ഞിരിക്കുന്നു. ടൈംബേസ് കോൺഫിഗറേഷനുകളെ ബാധിക്കുന്ന ഫംഗ്ഷനുകൾ ഉപയോക്താവിൽ മറ്റ് നിർവ്വഹണങ്ങളുടെ കാര്യത്തിൽ അസാധുവാക്കൽ സാധ്യമാക്കുന്നതിന് __ദുർബലമായി പ്രഖ്യാപിച്ചു. file (ഒരു പൊതു-ഉദ്ദേശ്യ ടൈമർ ഉപയോഗിച്ച്, ഉദാഹരണത്തിന്ample, അല്ലെങ്കിൽ മറ്റൊരു സമയ ഉറവിടം). കൂടുതൽ വിവരങ്ങൾക്ക്, HAL_TimeBase മുൻ കാണുകample.
LL അപേക്ഷ
STM32CubeWBA ഉപയോഗിച്ച് ഒരു ഇഷ്ടാനുസൃത LL ആപ്ലിക്കേഷൻ സൃഷ്ടിക്കുന്നതിന് ആവശ്യമായ ഘട്ടങ്ങൾ ഈ വിഭാഗം വിവരിക്കുന്നു.
- ഒരു പ്രോജക്റ്റ് സൃഷ്ടിക്കുക
- ഒരു പുതിയ പ്രോജക്റ്റ് സൃഷ്ടിക്കുന്നതിന്, ഒന്നുകിൽ \Projects\ എന്നതിന് കീഴിൽ ഓരോ ബോർഡിനും നൽകിയിരിക്കുന്ന Templates_LL പ്രോജക്റ്റിൽ നിന്ന് ആരംഭിക്കുക. \Templates_LL, അല്ലെങ്കിൽ \Projects\ എന്നതിന് കീഴിൽ ലഭ്യമായ ഏതെങ്കിലും പ്രോജക്റ്റിൽ നിന്ന് \ഉദാamples_LL ( NUCLEO-WBA32CG പോലുള്ള ബോർഡ് നാമത്തെ സൂചിപ്പിക്കുന്നു).
- ടെംപ്ലേറ്റ് പ്രോജക്റ്റ് ഒരു ശൂന്യമായ മെയിൻ ലൂപ്പ് ഫംഗ്ഷൻ നൽകുന്നു, ഇത് STM32CubeWBA-യ്ക്കുള്ള പ്രോജക്റ്റ് ക്രമീകരണങ്ങൾ മനസ്സിലാക്കുന്നതിനുള്ള ഒരു നല്ല ആരംഭ പോയിൻ്റാണ്. ടെംപ്ലേറ്റിൻ്റെ പ്രധാന സവിശേഷതകൾ ഇനിപ്പറയുന്നവയാണ്:
- LL, CMSIS ഡ്രൈവറുകളുടെ സോഴ്സ് കോഡുകൾ ഇതിൽ അടങ്ങിയിരിക്കുന്നു, നൽകിയിരിക്കുന്ന ബോർഡിൽ കോഡ് വികസിപ്പിക്കുന്നതിന് ആവശ്യമായ ഏറ്റവും കുറഞ്ഞ ഘടകങ്ങളാണ്.
- ആവശ്യമായ എല്ലാ ഫേംവെയർ ഘടകങ്ങൾക്കുമുള്ള ഉൾപ്പെടുത്തിയ പാതകൾ ഇതിൽ അടങ്ങിയിരിക്കുന്നു.
- ഇത് പിന്തുണയ്ക്കുന്ന STM32WBA സീരീസ് ഉപകരണം തിരഞ്ഞെടുക്കുകയും CMSIS, LL ഡ്രൈവറുകളുടെ ശരിയായ കോൺഫിഗറേഷൻ അനുവദിക്കുകയും ചെയ്യുന്നു.
- ഇത് ഉപയോഗിക്കാൻ തയ്യാറുള്ള ഉപയോക്താവിനെ നൽകുന്നു fileഇനിപ്പറയുന്ന രീതിയിൽ മുൻകൂട്ടി ക്രമീകരിച്ചിട്ടുള്ളവ:
◦ main.h: LED, USER_BUTTON ഡെഫനിഷൻ അബ്സ്ട്രാക്ഷൻ ലെയർ.
◦ main.c: പരമാവധി ആവൃത്തിക്കുള്ള സിസ്റ്റം ക്ലോക്ക് കോൺഫിഗറേഷൻ.
- നിലവിലുള്ള ഒരു പ്രോജക്റ്റ് മറ്റൊരു ബോർഡിലേക്ക് പോർട്ട് ചെയ്യുക
മറ്റൊരു ടാർഗെറ്റ് ബോർഡിൽ നിലവിലുള്ള ഒരു പ്രോജക്റ്റിനെ പിന്തുണയ്ക്കുന്നതിന്, ഓരോ ബോർഡിനും നൽകിയിരിക്കുന്ന ടെംപ്ലേറ്റുകൾ_LL പ്രോജക്റ്റിൽ നിന്ന് ആരംഭിക്കുക, കൂടാതെ \Projects\ എന്നതിന് കീഴിൽ ലഭ്യമാണ്. \ടെംപ്ലേറ്റുകൾ_LL.- ഒരു എൽഎൽ എക്സിയെ തിരഞ്ഞെടുക്കുകample: LL ex ഉള്ള ബോർഡ് കണ്ടെത്താൻamples വിന്യസിച്ചിരിക്കുന്നു, LL ex യുടെ പട്ടിക കാണുകampലെസ് STM32CubeProjectsList.html.
- പോർട്ട് എൽഎൽ എക്സിampLe:
- Templates_LL ഫോൾഡർ പകർത്തുക/ഒട്ടിക്കുക – പ്രാരംഭ ഉറവിടം നിലനിർത്താൻ – അല്ലെങ്കിൽ നിലവിലുള്ള Temp lates_LL പ്രോജക്റ്റ് നേരിട്ട് അപ്ഡേറ്റ് ചെയ്യുക.
- അപ്പോൾ പോർട്ടിംഗ് പ്രധാനമായും Templates_LL മാറ്റിസ്ഥാപിക്കുന്നതാണ് fileഎക്സിamples_LL ലക്ഷ്യമിടുന്ന പദ്ധതി.
- എല്ലാ ബോർഡിൻ്റെ പ്രത്യേക ഭാഗങ്ങളും സൂക്ഷിക്കുക. വ്യക്തതയുടെ കാരണങ്ങളാൽ, ബോർഡിൻ്റെ പ്രത്യേക ഭാഗങ്ങൾ പ്രത്യേകമായി ഫ്ലാഗ് ചെയ്യുന്നു tags:
- അതിനാൽ, പ്രധാന പോർട്ടിംഗ് ഘട്ടങ്ങൾ ഇനിപ്പറയുന്നവയാണ്:
- stm32wbaxx_it.h മാറ്റിസ്ഥാപിക്കുക file
- stm32wbaxx_it.c മാറ്റിസ്ഥാപിക്കുക file
- main.h മാറ്റിസ്ഥാപിക്കുക file അത് അപ്ഡേറ്റ് ചെയ്യുക: എൽഎൽ ടെംപ്ലേറ്റിൻ്റെ LED, യൂസർ ബട്ടൺ നിർവചനം ബോർഡ് നിർദ്ദിഷ്ട കോൺഫിഗറേഷന് കീഴിൽ സൂക്ഷിക്കുക tags.
- main.c മാറ്റിസ്ഥാപിക്കുക file അത് അപ്ഡേറ്റ് ചെയ്യുക:
- SystemClock_Config() LL ടെംപ്ലേറ്റ് ഫംഗ്ഷൻ്റെ ക്ലോക്ക് കോൺഫിഗറേഷൻ BOARD സ്പെസിഫിക് കോൺഫിഗറേഷന് കീഴിൽ സൂക്ഷിക്കുക tags.
- LED നിർവചനത്തെ ആശ്രയിച്ച്, ഓരോ എൽഡിഎക്സ് സംഭവങ്ങളും main.h-ൽ ലഭ്യമായ മറ്റൊരു LDy ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കുക file.
- ഈ പരിഷ്കാരങ്ങളോടെ, മുൻample ഇപ്പോൾ ടാർഗെറ്റുചെയ്ത ബോർഡിൽ പ്രവർത്തിക്കുന്നു
സുരക്ഷാ ആപ്ലിക്കേഷനുകൾ
ഈ പാക്കേജ് സുരക്ഷാ ആപ്ലിക്കേഷനുകൾക്കൊപ്പമാണ് വിതരണം ചെയ്യുന്നത്.
SBSFU ആപ്ലിക്കേഷനുകൾ
- SBSFU ഒരു റൂട്ട് ഓഫ് ട്രസ്റ്റ് സൊല്യൂഷൻ നൽകുന്നു, അതിൽ സെക്യുർ ബൂട്ട്, സെക്യൂർ ഫേംവെയർ അപ്ഡേറ്റ് പ്രവർത്തനങ്ങൾ (MCUboot അടിസ്ഥാനമാക്കി) ഉൾപ്പെടുന്നു.
- ആപ്ലിക്കേഷൻ എക്സിക്യൂട്ട് ചെയ്യുന്നതിന് മുമ്പ് പരിഹാരം ഉപയോഗിക്കുന്നു.
- പരിഹാരം ഒരു മുൻ നൽകുന്നുampഒരു സുരക്ഷിത സേവനത്തിൻ്റെ (GPIO ടോഗിൾ), അത് സുരക്ഷിതമല്ലാത്ത ആപ്ലിക്കേഷനിൽ നിന്ന് വേർതിരിച്ചിരിക്കുന്നു. റൺടൈമിലെ സുരക്ഷിതമല്ലാത്ത ആപ്ലിക്കേഷന് തുടർന്നും ഈ പരിഹാരം ഉപയോഗിക്കാനാകും.
TFM ആപ്ലിക്കേഷനുകൾ
സുരക്ഷിത ബൂട്ടും സുരക്ഷിത ഫേംവെയർ അപ്ഡേറ്റ് പ്രവർത്തനങ്ങളും ഉൾപ്പെടുന്ന ഒരു റൂട്ട് ഓഫ് ട്രസ്റ്റ് സൊല്യൂഷൻ TFM നൽകുന്നു.
(MCUboot അടിസ്ഥാനമാക്കി). ആപ്ലിക്കേഷൻ എക്സിക്യൂട്ട് ചെയ്യുന്നതിന് മുമ്പ് പരിഹാരം ഉപയോഗിക്കുന്നു. സുരക്ഷിതമല്ലാത്ത ആപ്ലിക്കേഷനിൽ നിന്ന് ഒറ്റപ്പെട്ട ടിഎഫ്എം സുരക്ഷിത സേവനങ്ങൾ ഈ പരിഹാരം നൽകുന്നു. റൺടൈമിലെ സുരക്ഷിതമല്ലാത്ത ആപ്ലിക്കേഷന് തുടർന്നും ഈ പരിഹാരം ഉപയോഗിക്കാം.
RF ആപ്ലിക്കേഷനുകൾ
ഈ ആപ്ലിക്കേഷൻ കുറിപ്പിൽ RF ആപ്ലിക്കേഷൻ വിവരിച്ചിരിക്കുന്നു: STM32WBA സീരീസ് മൈക്രോകൺട്രോളറുകൾ (AN5928) ഉപയോഗിച്ച് വയർലെസ് ആപ്ലിക്കേഷനുകൾ നിർമ്മിക്കുന്നു.
STM32CubeWBA റിലീസ് അപ്ഡേറ്റുകൾ ലഭിക്കുന്നു
ഏറ്റവും പുതിയ STM32CubeWBA MCU പാക്കേജ് റിലീസുകളും പാച്ചുകളും STM32WBA സീരീസിൽ നിന്ന് ലഭ്യമാണ്. അവ STM32CubeMX-ലെ CHECK FOR UPDATE എന്ന ബട്ടണിൽ നിന്ന് വീണ്ടെടുത്തേക്കാം. കൂടുതൽ വിവരങ്ങൾക്ക്, STM3 കോൺഫിഗറേഷനും ഇനീഷ്യലൈസേഷൻ സി കോഡ് ജനറേഷനും (UM32) ഉപയോക്തൃ മാനുവൽ STM32CubeMX-ൻ്റെ സെക്ഷൻ 1718 കാണുക.
പതിവുചോദ്യങ്ങൾ
- LL ഡ്രൈവറുകൾക്ക് പകരം ഞാൻ എപ്പോഴാണ് HAL ഉപയോഗിക്കേണ്ടത്?
- എച്ച്എഎൽ ഡ്രൈവറുകൾ ഉയർന്ന തലത്തിലുള്ളതും പ്രവർത്തന-അധിഷ്ഠിതവുമായ എപിഐകൾ വാഗ്ദാനം ചെയ്യുന്നു, ഉയർന്ന തലത്തിലുള്ള പോർട്ടബിലിറ്റി. അന്തിമ ഉപയോക്താക്കൾക്കായി ഉൽപ്പന്നമോ പെരിഫറൽ സങ്കീർണ്ണതയോ മറച്ചിരിക്കുന്നു.
- LL ഡ്രൈവറുകൾ ലോ-ലെയർ രജിസ്റ്റർ ലെവൽ API-കൾ വാഗ്ദാനം ചെയ്യുന്നു, മികച്ച ഒപ്റ്റിമൈസേഷനും എന്നാൽ പോർട്ടബിൾ കുറവാണ്. അവർക്ക് ഉൽപ്പന്നത്തെക്കുറിച്ചോ ഐപി സവിശേഷതകളെക്കുറിച്ചോ ആഴത്തിലുള്ള അറിവ് ആവശ്യമാണ്.
- എനിക്ക് HAL, LL ഡ്രൈവറുകൾ ഒരുമിച്ച് ഉപയോഗിക്കാമോ? എനിക്ക് കഴിയുമെങ്കിൽ, എന്താണ് നിയന്ത്രണങ്ങൾ?
- എച്ച്എഎൽ, എൽഎൽ ഡ്രൈവറുകൾ ഉപയോഗിക്കാൻ സാധിക്കും. IP ഇനീഷ്യലൈസേഷൻ ഘട്ടത്തിനായി HAL ഉപയോഗിക്കുക, തുടർന്ന് LL ഡ്രൈവറുകൾ ഉപയോഗിച്ച് I/O പ്രവർത്തനങ്ങൾ നിയന്ത്രിക്കുക.
- എൽഎൽ ഡ്രൈവറുകൾ പെരിഫറൽ രജിസ്റ്ററുകളിൽ നേരിട്ട് പ്രവർത്തിക്കുമ്പോൾ എച്ച്എഎൽ ഡ്രൈവർമാർ ഓപ്പറേഷൻ മാനേജ്മെൻ്റിനായി ഹാൻഡിലുകൾ സൃഷ്ടിക്കുകയും ഉപയോഗിക്കുകയും ചെയ്യേണ്ടതുണ്ട് എന്നതാണ് എച്ച്എഎല്ലും എൽഎല്ലും തമ്മിലുള്ള പ്രധാന വ്യത്യാസം. മുൻamples_MIX ഉദാampHAL ഉം LL ഉം എങ്ങനെ മിക്സ് ചെയ്യാമെന്ന് le ചിത്രീകരിക്കുന്നു.
- എങ്ങനെയാണ് LL ഇനിഷ്യലൈസേഷൻ API-കൾ പ്രവർത്തനക്ഷമമാക്കുന്നത്?
- LL ഇനീഷ്യലൈസേഷൻ API-കളുടെയും അനുബന്ധ ഉറവിടങ്ങളുടെയും (ഘടനകൾ, ലിറ്ററലുകൾ, പ്രോട്ടോടൈപ്പുകൾ) എന്നിവയുടെ നിർവചനം USE_FULL_LL_DRIVER കംപൈലേഷൻ സ്വിച്ച് ഉപയോഗിച്ചാണ്.
- LL ഇനിഷ്യലൈസേഷൻ API-കൾ ഉപയോഗിക്കുന്നതിന്, ടൂൾചെയിൻ കംപൈലർ പ്രീപ്രൊസസറിൽ ഈ സ്വിച്ച് ചേർക്കുക.
- എംബഡഡ് സോഫ്റ്റ്വെയറിനെ അടിസ്ഥാനമാക്കി STM32CubeMX-ന് എങ്ങനെ കോഡ് സൃഷ്ടിക്കാനാകും?
STM32CubeMX-ന് STM32 മൈക്രോകൺട്രോളറുകളെ കുറിച്ചുള്ള അന്തർനിർമ്മിത അറിവുണ്ട്, അവയുടെ പെരിഫറലുകളും സോഫ്റ്റ്വെയറും ഉൾപ്പെടുന്നു, അത് ഉപയോക്താവിന് ഒരു ഗ്രാഫിക്കൽ പ്രാതിനിധ്യം നൽകാനും *.h അല്ലെങ്കിൽ *.c സൃഷ്ടിക്കാനും അനുവദിക്കുന്നു. fileഉപയോക്തൃ കോൺഫിഗറേഷൻ അടിസ്ഥാനമാക്കിയുള്ളതാണ്.
പ്രധാന അറിയിപ്പ് - ശ്രദ്ധയോടെ വായിക്കുക
- STMicroelectronics NV യ്ക്കും അതിൻ്റെ അനുബന്ധ സ്ഥാപനങ്ങൾക്കും ("ST") ST ഉൽപ്പന്നങ്ങളിലും കൂടാതെ/അല്ലെങ്കിൽ ഈ പ്രമാണത്തിൽ എപ്പോൾ വേണമെങ്കിലും അറിയിപ്പ് കൂടാതെ മാറ്റങ്ങൾ, തിരുത്തലുകൾ, മെച്ചപ്പെടുത്തലുകൾ, പരിഷ്ക്കരണങ്ങൾ, മെച്ചപ്പെടുത്തലുകൾ എന്നിവ വരുത്താനുള്ള അവകാശം നിക്ഷിപ്തമാണ്. ഓർഡറുകൾ നൽകുന്നതിന് മുമ്പ് വാങ്ങുന്നവർ ST ഉൽപ്പന്നങ്ങളുടെ ഏറ്റവും പുതിയ പ്രസക്തമായ വിവരങ്ങൾ നേടിയിരിക്കണം. ഓർഡർ അക്നോളജ്മെൻ്റ് സമയത്ത് എസ്ടിയുടെ വിൽപ്പന നിബന്ധനകൾക്കും വ്യവസ്ഥകൾക്കും അനുസരിച്ചാണ് എസ്ടി ഉൽപ്പന്നങ്ങൾ വിൽക്കുന്നത്.
- ST ഉൽപ്പന്നങ്ങളുടെ തിരഞ്ഞെടുപ്പ്, തിരഞ്ഞെടുക്കൽ, ഉപയോഗം എന്നിവയുടെ പൂർണ ഉത്തരവാദിത്തം വാങ്ങുന്നവർക്ക് മാത്രമായിരിക്കും, കൂടാതെ അപേക്ഷാ സഹായത്തിനോ വാങ്ങുന്നവരുടെ ഉൽപ്പന്നങ്ങളുടെ രൂപകൽപ്പനയ്ക്കോ യാതൊരു ബാധ്യതയും ST ഏറ്റെടുക്കുന്നില്ല.
- ഏതെങ്കിലും ബൗദ്ധിക സ്വത്തവകാശത്തിനുള്ള ലൈസൻസോ, പ്രകടിപ്പിക്കുന്നതോ സൂചിപ്പിക്കപ്പെട്ടതോ ആയ ഒരു ലൈസൻസും ഇവിടെ ST നൽകുന്നില്ല.
- ഇവിടെ പ്രതിപാദിച്ചിരിക്കുന്ന വിവരങ്ങളിൽ നിന്ന് വ്യത്യസ്തമായ വ്യവസ്ഥകളോടെ ST ഉൽപ്പന്നങ്ങളുടെ പുനർവിൽപ്പന, അത്തരം ഉൽപ്പന്നത്തിന് ST നൽകുന്ന ഏതെങ്കിലും വാറൻ്റി അസാധുവാകും.
- എസ്ടിയും എസ്ടി ലോഗോയും എസ്ടിയുടെ വ്യാപാരമുദ്രകളാണ്. ST വ്യാപാരമുദ്രകളെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക്, www.st.com/trademarks കാണുക. മറ്റെല്ലാ ഉൽപ്പന്നങ്ങളുടെയും സേവനങ്ങളുടെയും പേരുകൾ അവയുടെ ഉടമസ്ഥരുടെ സ്വത്താണ്.
- ഈ ഡോക്യുമെൻ്റിലെ വിവരങ്ങൾ ഈ ഡോക്യുമെൻ്റിൻ്റെ ഏതെങ്കിലും മുൻ പതിപ്പുകളിൽ മുമ്പ് നൽകിയിട്ടുള്ള വിവരങ്ങൾ അസാധുവാക്കുകയും മാറ്റിസ്ഥാപിക്കുകയും ചെയ്യുന്നു.
- © 2023 STMicroelectronics – എല്ലാ അവകാശങ്ങളും നിക്ഷിപ്തം
പ്രമാണങ്ങൾ / വിഭവങ്ങൾ
![]() |
STMicroelectronics STM32WBA സീരീസ് ആരംഭിക്കുന്നു [pdf] ഉപയോക്തൃ മാനുവൽ STM32WBA സീരീസ് ആരംഭിക്കുന്നു, ആരംഭിക്കുന്നു, ആരംഭിക്കുന്നു |