STMicroelectronics STM32WBA сериясын бастау
Өнім туралы ақпарат
Техникалық сипаттамалар:
- Өнім атауы: STM32CubeWBA MCU пакеті
- Өндіруші: STMicroelectronics
- Үйлесімділік: STM32WBA сериялы микроконтроллерлер
- Лицензиялау: Ашық бастапқы BSD лицензиясы
Өнімді пайдалану нұсқаулары
STM32CubeWBA MCU пакетінің негізгі мүмкіндіктері:
STM32CubeWBA MCU пакеті STM32WBA сериялы микроконтроллерлерде қолданбаларды әзірлеу үшін барлық қажетті енгізілген бағдарламалық құрал құрамдастарын қамтамасыз етеді. Ол STM32 сериясында өте портативті және HAL және LL API интерфейстерімен бірге келеді, мысалыamples және аралық бағдарламалық құрал құрамдастары.
Архитектура аяқталдыview:
STM32CubeWBA MCU пакетінің архитектурасы үш деңгейден тұрады – Қолданбалар, Кітапхана және протоколға негізделген құрамдас бөліктер, Аппараттық абстракциялық деңгей, BSP драйверлері, Негізгі драйверлер және Төмен деңгейлі API интерфейстері.
Жиі қойылатын сұрақтар
- STM32CubeWBA MCU пакетіне не кіреді?
Пакет төмен деңгейлі (LL) және аппараттық абстракциялық деңгейдің (HAL) API интерфейстерін қамтиды, мысалыamples, қолданбалар, аралық бағдарламалық құрал компоненттері сияқты FileX/LevelX, NetX Duo, mbed-crypto кітапханалары және т.б. - STM32CubeWBA MCU пакеті STM32CubeMX код генераторымен үйлесімді ме?
Иә, пакет инициализация кодын жасау үшін STM32CubeMX код генераторымен толық үйлесімді.
Кіріспе
- STM32Cube — әзірлеу күш-жігерін, уақытын және құнын азайту арқылы дизайнердің өнімділігін айтарлықтай арттыруға арналған STMicroelectronics компаниясының бастапқы бастамасы. STM32Cube бүкіл STM32 портфолиосын қамтиды.
STM32Cube мыналарды қамтиды:- Жобаны әзірлеуден бастап жүзеге асыруға дейін қамтитын пайдаланушыға ыңғайлы бағдарламалық жасақтаманы әзірлеу құралдарының жиынтығы, олардың ішінде:
- STM32CubeMX, графикалық шеберлерді пайдаланып C баптандыру кодын автоматты түрде жасауға мүмкіндік беретін графикалық бағдарламалық құралды конфигурациялау құралы
- 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 деңгейі)
- Перифериялық және қолданбалы бұрынғы толық жинақтары бар барлық енгізілген бағдарламалық құрал утилиталарыamples
- 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-биттік микроконтроллерлерінде жұмыс істейді.
Ескерту: Arm және TrustZone - Arm Limited (немесе оның еншілес компаниялары) АҚШ-та және/немесе басқа жерде тіркелген сауда белгілері.
STM32CubeWBA негізгі мүмкіндіктері
- STM32CubeWBA MCU пакеті TrustZone® және FPU бар Arm® Cortex®-M32 процессоры негізіндегі STM32 33-биттік микроконтроллерлерінде жұмыс істейді.
- STM32CubeWBA бір пакетте STM32WBA сериялы микроконтроллерлерге арналған қолданбаны әзірлеуге қажетті барлық жалпы енгізілген бағдарламалық құрал құрамдастарын жинайды. STM32Cube бастамасына сәйкес, бұл құрамдас бөліктер жинағы тек STM32WBA сериялы микроконтроллерлерде ғана емес, сонымен қатар басқа STM32 сериялары үшін де жоғары портативті болып табылады.
- STM32CubeWBA баптандыру кодын жасау үшін STM32CubeMX код генераторымен толық үйлесімді. Пакетке микроконтроллердің аппараттық құралдарын қамтитын төменгі деңгейлі (LL) және аппараттық абстракциялық деңгейдің (HAL) API интерфейстері, сонымен қатар эксплуатациялардың кең жиынтығы кіреді.ampSTMicroelectronics тақталарында жұмыс істейді. HAL және LL API интерфейстері пайдаланушыға ыңғайлы болу үшін ашық бастапқы BSD лицензиясында қол жетімді.
- STM32CubeWBA MCU пакеті сонымен қатар Microsoft® Azure® RTOS аралық бағдарламалық құралының айналасында құрастырылған кешенді аралық бағдарламалық құрал құрамдас бөлігін және сәйкес бұрынғы нұсқасы бар басқа да ішкі және ашық бастапқы стектерді қамтиды.amples.
- Олар тегін, пайдаланушыға ыңғайлы лицензия шарттарымен келеді:
- Біріктірілген және толық мүмкіндіктері бар Azure® RTOS: Azure® RTOS ThreadX
- Azure® RTOS ThreadX көмегімен CMSIS-RTOS іске асыру
- USB хост және құрылғы стектері көптеген сыныптармен келеді: Azure® RTOS USBX
- Жетілдірілген file жүйелік және флэш-аударма қабаты: FileX / LevelX
- Өнеркәсіптік деңгейдегі желілік стек: көптеген IoT протоколдарымен келетін өнімділік үшін оңтайландырылған: NetX Duo
- OpenBootloader
- Arm® Trusted Firmware-M (TF‑M) интеграциялық шешімі
- mbed-крипто кітапханалары
- ST Netwok кітапханасы
- STMTouch сенсорлық кітапхана шешімі
- Барлық осы аралық бағдарламалық құрал құрамдастарын іске асыратын бірнеше қолданбалар мен демонстрациялар STM32CubeWBA MCU пакетінде де берілген.
- STM32CubeWBA MCU пакетінің құрамдас орналасуы 1-суретте көрсетілген. STM32CubeWBA MCU пакетінің құрамдастары.
STM32CubeWBA архитектурасы аяқталдыview
STM32CubeWBA MCU пакетінің шешімі 2-суретте сипатталғандай оңай өзара әрекеттесетін үш тәуелсіз деңгейдің айналасында құрастырылған. STM32CubeWBA MCU пакетінің архитектурасы.
0-деңгей
Бұл деңгей үш ішкі деңгейге бөлінеді:
- Басқарманы қолдау пакеті (BSP).
- Аппараттық абстракциялық деңгей (HAL):
- HAL перифериялық драйверлері
- Төмен деңгейлі драйверлер
- Негізгі перифериялық пайдалану, мысалыamples.
Басқарманы қолдау пакеті (BSP)
Бұл қабат аппараттық тақталардағы (мысалы, СКД, Аудио, microSD™ және MEMS драйверлері) аппараттық құрал құрамдастарына қатысты API жиынын ұсынады. Ол екі бөліктен тұрады:
- Құрамдас драйвер:
Бұл драйвер STM32 құрылғысына емес, тақтадағы сыртқы құрылғыға қатысты. Компонент драйвері BSP драйверінің сыртқы компоненттеріне арнайы API интерфейстерін береді және кез келген басқа тақтада портативті болуы мүмкін. - BSP драйвері:
BSP драйвері құрамдас драйверлерді белгілі бір тақтаға байланыстыруға мүмкіндік береді және пайдаланушыға ыңғайлы жиынтығын ұсынады
API интерфейстері. API атау ережесі - BSP_FUNCT_Action().
Example: BSP_LED_Init(), BSP_LED_On()
BSP модульдік архитектураға негізделген, ол жай ғана төмен деңгейлі процедураларды орындау арқылы кез келген аппараттық құралда оңай тасымалдауға мүмкіндік береді.
Аппараттық абстракциялық деңгей (HAL) және төмен деңгейлі (LL)
STM32CubeWBA HAL және LL қосымша болып табылады және қолдану талаптарының кең ауқымын қамтиды:
- HAL драйверлері жоғары деңгейлі функцияға бағытталған жоғары портативті API ұсынады. Олар соңғы пайдаланушыға MCU мен перифериялық күрделілікті жасырады.
HAL драйверлері пайдалануға дайын процестерді қамтамасыз ету арқылы пайдаланушы қолданбасын іске асыруды жеңілдететін жалпы көп даналық мүмкіндіктерге бағытталған API интерфейстерін қамтамасыз етеді. Мысалыample, байланыс перифериялық құрылғылары үшін (I2S, UART және т.б.) ол перифериялық құрылғыны инициализациялауға және конфигурациялауға, сұрау, үзу немесе DMA процесіне негізделген деректерді тасымалдауды басқаруға және байланыс кезінде туындауы мүмкін байланыс қателерін өңдеуге мүмкіндік беретін API интерфейстерін қамтамасыз етеді. HAL драйверінің API интерфейстері екі санатқа бөлінеді:- Барлық STM32 сериялы микроконтроллерлерге ортақ және жалпы функцияларды қамтамасыз ететін жалпы API интерфейстері.
- Арнайы отбасы немесе белгілі бір бөлік нөмірі үшін арнайы және теңшелген функцияларды қамтамасыз ететін кеңейтім API интерфейстері.
- Төмен деңгейлі API интерфейстері тізілім деңгейінде төмен деңгейлі API интерфейстерін жақсырақ оңтайландырумен, бірақ аз тасымалдануымен қамтамасыз етеді.
- Олар MCU және перифериялық сипаттамалар туралы терең білімді талап етеді.
- LL драйверлері HAL-ға қарағанда аппараттық құралға жақынырақ, жылдам жеңіл, сарапшыға бағытталған қабатты ұсынуға арналған. HAL стандартына қарамастан, LL API интерфейстері оңтайландырылған қолжетімділік негізгі мүмкіндік болып табылмайтын перифериялық құрылғылар үшін немесе ауыр бағдарламалық құрал конфигурациясын немесе күрделі жоғарғы деңгейдегі стекті қажет ететіндер үшін қамтамасыз етілмейді.
- LL драйверлерінің мүмкіндіктері:
- Деректер құрылымдарында көрсетілген параметрлерге сәйкес перифериялық негізгі мүмкіндіктерді инициализациялауға арналған функциялар жиынтығы.
- Баптандыру деректер құрылымдарын әрбір өріске сәйкес қалпына келтіру мәндерімен толтыруға арналған функциялар жинағы.
- Перифериялық деинитиализацияға арналған функция (перифериялық регистрлер әдепкі мәндеріне қалпына келтірілді).
- Тікелей және атомдық регистрге қол жеткізуге арналған кірістірілген функциялар жинағы.
- HAL-дан толық тәуелсіздік және автономды режимде (HAL драйверлерінсіз) пайдалану мүмкіндігі.
- Қолдау көрсетілетін перифериялық мүмкіндіктерді толық қамту.
Негізгі перифериялық пайдалану, мысалыamples
Бұл қабат бұрынғыны жабадыampтек HAL және BSP ресурстарын пайдаланып STM32 перифериялық құрылғылары арқылы құрастырылған.
1-деңгей
Бұл деңгей екі ішкі деңгейге бөлінеді:
- Орташа бағдарламалық құрал құрамдастары
- Exampорта бағдарламалық құрал құрамдастарына негізделген
Орташа бағдарламалық құрал құрамдастары
- Орташа бағдарламалық құрал – бұл Bluetooth® Low Energy (Linklayer, HCI, Stack), Thread®, Zigbee®,
- 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), екі функционалдық режимі бар ендірілген жүйелерге арналған.
- Bluetooth® Low Energy (BLE): Link және Stack қабаттары үшін Bluetooth® Low Energy протоколын жүзеге асырады.
- 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) ұсынады. Ол MCU не қолданылатынын білмей-ақ, өз функцияларын жүзеге асыру үшін аралық бағдарлама қабатын пайдалану сияқты қабаттарды құру принципіне мүмкіндік береді. Бұл кітапхана кодын қайта пайдалану мүмкіндігін жақсартады және басқа құрылғыларға оңай тасымалдануды қамтамасыз етеді.
- Сонымен қатар, өзінің қабатты архитектурасының арқасында STM32CubeWBA барлық STM32WBA серияларына толық қолдауды ұсынады.
- Пайдаланушы тек stm32wbaxx.h ішінде дұрыс макросты анықтауы керек.
- 1-кесте пайдаланылатын STM32WBA сериялы құрылғысына байланысты анықталатын макросты көрсетеді. Бұл макрос компилятордың препроцессорында да анықталуы керек.
Кесте 1. STM32WBA серияларына арналған макростарМакрос stm32wbaxx.h ішінде анықталған STM32WBA сериялы құрылғылар stm32wba52xx STM32WBA52CGU6, STM32WBA52KGU6, STM32WBA52CEU6, STM32WBA52KEU6 stm32wba55xx STM32WBA55CGU6, STM32WBA55CGU6U, STM32WBA55CGU7, STM32WBA55CEU6, STM32WBA55CEU7 - STM32CubeWBA бұрынғы нұсқалардың бай жиынтығын ұсынадыampкез келген HAL драйверін немесе аралық бағдарламалық құрал құрамдастарын түсінуді және пайдалануды жеңілдететін барлық деңгейдегі les және қолданбалар. Бұл бұрынғыamp2-кестеде көрсетілген STMicroelectronics тақталарында жұмыс істейді.
Кесте 2. STM32WBA серияларына арналған тақталарБасқарма STM32WBA қолдайтын құрылғылар тақтасы NUCLEO-WBA52CG STM32WBA52CGU6 NUCLEO-WBA55CG STM32WBA55CGU6 STM32WBA55-DK1 STM32WBA55CGU7 - STM32CubeWBA MCU бумасы кез келген үйлесімді жабдықта жұмыс істей алады. Пайдаланушы BSP драйверлерін берілген бұрынғы нұсқасын портқа жаңартадыampЕгер соңғысының аппараттық мүмкіндіктері бірдей болса (мысалы, жарық диоды, СКД дисплей және түймелер) болса, тақтадағы les.
Микробағдарлама пакеті аяқталдыview
- STM32CubeWBA бумасының шешімі 3-суретте көрсетілген құрылымы бар бір zip бумасында берілген. STM32CubeWBA микробағдарлама пакетінің құрылымы.
- Әрбір тақта үшін бұрынғы жинақamples бағдарламасы EWARM, MDK-ARM және STM32CubeIDE құралдар тізбегі үшін алдын ала конфигурацияланған жобалармен қамтамасыз етілген.
- 4-сурет. STM32CubeWBA бұрынғыampбіттіview NUCLEO‑WBA52CG, NUCLEO-WBA55CG және STM32WBA55G-DK1 тақталарына арналған жоба құрылымын көрсетеді.
- бұрынғыamples олар қолданылатын STM32Cube деңгейіне байланысты жіктеледі және олар келесідей аталады:
- 0-деңгей бұрынғыamples Ex деп аталадыamples, Examples_LL және Examples_MIX. Олар сәйкесінше HAL драйверлерін, LL драйверлерін және HAL және LL драйверлерінің ортаңғы бағдарламалық құрал құрамдас бөлігі жоқ қоспасын пайдаланады.
- 1-деңгей бұрынғыamples қолданбалар деп аталады. Олар әрбір аралық бағдарламалық құрал құрамдастарының әдеттегі пайдалану жағдайларын қамтамасыз етеді. Берілген тақтаға арналған кез келген микробағдарлама қолданбасы Templ ates және Templates_LL каталогтарында қол жетімді үлгі жобаларының арқасында жылдам құрастырылуы мүмкін.
TrustZone® қосылған жобалар
- TrustZone® қосылған Мысamples атауларында _TrustZone префиксі бар. Бұл ереже қолданбалар үшін де қолданылады (түпнұсқасы TrustZone® үшін болып табылатын TFM және SBSFU қоспағанда).
- TrustZone® қосылған Мысamples және Қолданбалар 5-суретте көрсетілгендей қауіпсіз және қауіпсіз емес қосалқы жобалардан тұратын көпжобалы құрылыммен қамтамасыз етілген. Көпжобалы қауіпсіз және қауіпсіз емес жоба құрылымы.
- TrustZone® қолдайтын жобалар CMSIS-5 құрылғы үлгісіне сәйкес әзірленген, жүйені бөлу тақырыбын қамтитын кеңейтілген. file бөлім_ .h, ол негізінен қауіпсіз атрибут бірлігін (SAU), FPU орнатуға және қауіпсіз орындау күйіндегі қауіпсіз/қауіпсіз үзілістерді тағайындауға жауапты.
- Бұл орнату қауіпсіз қолданбаның main() функциясын енгізбес бұрын іске қосу кезінде шақырылатын қауіпсіз CMSIS SystemInit() функциясында орындалады. Бағдарламалық құрал нұсқауларының Arm® TrustZone®-M құжаттамасын қараңыз.
- STM32CubeWBA микробағдарлама пакеті _ бөлімінде әдепкі жадты бөлуді қамтамасыз етеді. .h fileмына жерде қол жетімді: \Drivers\CMSIS\Device\ST\STM32WBAxx\Include\T үлгілері
- Бұл бөлімдерде files, SAU әдепкі бойынша өшірілген. Демек, қауіпсіздік атрибуты үшін IDAU жад картасы пайдаланылады. RM0495 анықтамалық нұсқаулығындағы TrustZone® технологиясын пайдаланып қауіпсіз/қауіпсіз бөлімдер суретін қараңыз.
- Пайдаланушы SAU қосса, бөлімде әдепкі SAU аймақтарының конфигурациясы алдын ала анықталған files келесідей:
- SAU аймағы 0: 0x08080000 – 0x081FFFFF (флэш-жадтың қауіпсіз қауіпсіз жартысы (512 Кбайт))
- SAU аймағы 1: 0x0BF88000 – 0x0BF97FFF (қауіпсіз жүйелік жады)
- SAU 2 аймағы: 0x0C07E000 – 0x0C07FFFF (қауіпсіз, қауіпсіз емес қоңырау шалуға болады)
- SAU аймағы 3: 0x20010000 – 0x2001FFFF (қауіпсіз SRAM2 (64 Кбайт))
- SAU аймағы 4: 0x40000000 – 0x4FFFFFFFF (қауіпсіз перифериялық карталанған жад)
- Әдепкі бөлімге сәйкестендіру үшін STM32WBAxx сериялы құрылғыларында келесі пайдаланушы опциясының байттары болуы керек:
- TZEN = 1 (TrustZone® қосылған құрылғы)
- SECWM1_PSTRT = 0x0 SECWM1_PEND = 0x3F (ішкі флэш-жадтың 64 бетінің 128-і қауіпсіз деп орнатылған) Ескертпе: Ішкі флэш жады TZEN = 1 параметрінде әдепкі бойынша толығымен қорғалған. SECWM1_PSTRT/ SECWM1_PEND пайдаланушы опциясының байты қолданбаға сәйкес орнатылуы керек. жад конфигурациясы (SAU аймақтары, егер SAU қосылған болса). Қауіпсіз/қауіпсіз қолданбалар жобасының сілтемесі files да туралануы керек.
- Барлығы бұрынғыamples құрылымы бірдей:
- Барлық тақырыпты қамтитын \Inc қалтасы files.
- Бастапқы кодты қамтитын Src қалтасы.
- \EWARM, \MDK-ARM және \STM32CubeIDE қалталарында әрбір құралдар тізбегі үшін алдын ала конфигурацияланған жоба бар.
- readme.md және readme.html бұрынғыны сипаттайтынampмінез-құлық және оның жұмыс істеуі үшін қажетті орта.
- ioc file бұл пайдаланушыларға микробағдарламаның көп бөлігін ашуға мүмкіндік бередіampSTM32CubeMX ішінде.
STM32CubeWBA қолданбасын бастау
Бірінші HAL эксample
Бұл бөлім бірінші экс-ді іске қосу қаншалықты оңай екенін түсіндіредіampSTM32CubeWBA ішінде. Ол иллюстрация ретінде 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\Мысamples.
- \GPIO, содан кейін \GPIO_IOToggle_TrustZone қалталарын ашыңыз.
- Жобаны таңдаулы құралдар тізбегімен ашыңыз. Тез біттіview бұрынғыны ашу, құру және іске қосу туралыample қолдау көрсетілетін құралдар тізбегі төменде берілген.
- Барлық қауіпсіз және қауіпсіз емес жобаларды ретімен қайта жасаңыз files және қауіпсіз және қауіпсіз емес кескіндерді мақсатты жадқа жүктеңіз.
- Бұрынғыны іске қосыңызample: жүйелі түрде қауіпсіз қолданба LD2-ні секунд сайын ауыстырады, ал қауіпсіз емес қолданба LD3-ті екі есе жылдам ауыстырады. Қосымша мәліметтер алу үшін Readme бөлімін қараңыз file бұрынғыampле.
- Бұрынғы файлды ашу, құру және іске қосуampҚолдау көрсетілетін құралдар тізбегінің көмегімен төмендегі қадамдарды орындаңыз:
- EWARM:
- Бұрынғы астындаample қалтасын ашыңыз, \EWARM ішкі қалтасын ашыңыз.
- Project.eww жұмыс кеңістігін іске қосыңыз
- xxxxx_S қауіпсіз жобасын қайта жасаңыз files: [Жоба]>[Барлығын қайта құру].
- xxxxx_NS қауіпсіз емес жобасын Белсенді қолданба ретінде орнатыңыз (xxxxx_NS жобасына тінтуірдің оң жақ түймешігімен басыңыз [Белсенді ретінде орнату])
- xxxxx_NS қауіпсіз емес жобаны қайта жасаңыз files: [Жоба]>[Барлығын қайта құру].
- Қауіпсіз екілік файлды [Жоба]>[Жүктеу]>[Белсенді қолданбаны жүктеп алу] арқылы жыпылықтаңыз.
- xxxxx_S белсенді қолданба ретінде орнатыңыз (xxxxx_S жобасына тінтуірдің оң жақ түймешігімен басыңыз [Белсенді ретінде орнату]).
- Қауіпсіз екілік файлды [Жүктеу және жөндеу] (Ctrl+D) көмегімен жыпылықтаңыз.
- Бағдарламаны іске қосыңыз: [Debug]>[Go(F5)]
- MDK-ARM:
- \MDK-ARM құралдар тізбегін ашыңыз.
- Multiprojects жұмыс кеңістігін ашыңыз file Project.uvmpw.
- xxxxx_s жобасын Белсенді қолданба ретінде таңдаңыз ([Белсенді жоба ретінде орнату]).
- xxxxx_s жобасын құрастырыңыз.
- xxxxx_ns жобасын Белсенді жоба ретінде таңдаңыз ([Белсенді жоба ретінде орнату]).
- xxxxx_ns жобасын құрастырыңыз.
- Қауіпсіз екілік файлды жүктеңіз ([F8]). Бұл флэш-жадқа \MDK-ARM\xxxxx_ns\Exe\xxxx_ns.axf жүктейді)
- Project_s жобасын Белсенді жоба ретінде таңдаңыз ([Белсенді жоба ретінде орнату]).
- Қауіпсіз екілік файлды жүктеңіз ([F8]). Бұл флэш-жадқа \MDK-ARM\xxxxx_s\Exe\xxxx_s.axf жүктейді).
- Бұрынғыны іске қосыңызampле.
- STM32CubeIDE:
- STM32CubeIDE құралдар тізбегін ашыңыз.
- Multiprojects жұмыс кеңістігін ашыңыз file .жоба.
- xxxxx_Secure жобасын қайта жасаңыз.
- xxxxx_NonSecure жобасын қайта жасаңыз.
- Қауіпсіз жоба үшін [STM32 Cortex-M C/C++ ретінде жөндеу] қолданбасын іске қосыңыз.
- [Конфигурацияны өңдеу] терезесінде [Іске қосу] тақтасын таңдап, қауіпсіз емес жобаның суреті мен таңбаларын жүктеңіз.
Маңызды: Қауіпсіз жоба қауіпсіз жобадан бұрын жүктелуі керек. - [Ok] түймесін басыңыз.
- Бұрынғыны іске қосыңызample on отладка перспективасы.
- EWARM:
Бірінші TrustZone® өшірілген іске қосу, мысалыample
- TrustZone® мүмкіндігін жүктеп, іске қоспас бұрын, мысалыample, бұрынғыны оқу міндеттіampмені оқы file кез келген нақты конфигурация үшін. Арнайы ескертулер болмаса, тақта құрылғысының қауіпсіздігі өшірілгеніне көз жеткізіңіз (TZEN=0 (пайдаланушы опциясы байты)). TZEN = 0 параметріне қосымша регрессияны орындау үшін ЖҚС қараңыз
- \Projects\NUCLEO-WBA52CG\Мысamples.
- \GPIO, содан кейін \GPIO_EXTI қалталарын ашыңыз.
- Жобаны таңдаулы құралдар тізбегімен ашыңыз. Тез біттіview бұрынғыны ашу, құру және іске қосу туралыample қолдау көрсетілетін құралдар тізбегі төменде берілген.
- Барлығын қайта құру files және кескінді мақсатты жадқа жүктеңіз.
- Бұрынғыны іске қосыңызample: [ПАЙДАЛАНУШЫ] түймесі басылған сайын LD1 ЖШД ауысады. Қосымша мәліметтер алу үшін Readme бөлімін қараңыз file бұрынғыampле.
- Бұрынғы файлды ашу, құру және іске қосуampҚолдау көрсетілетін құралдар тізбегінің көмегімен төмендегі қадамдарды орындаңыз:
- EWARM:
- Бұрынғы астындаample қалтасын ашыңыз, \EWARM ішкі қалтасын ашыңыз.
- Project.eww жұмыс кеңістігін іске қосыңыз (жұмыс кеңістігінің атауы бұрынғыдан өзгеруі мүмкінampбасқасына).
- Барлығын қайта құру files: [Жоба]>[Барлығын қайта құру].
- Жоба кескінін жүктеңіз: [Жоба]> [Оңдеу].
- Бағдарламаны іске қосу: [Debug]>[Go (F5)].
- MDK-ARM:
- Бұрынғы астындаample қалтасында \MDK-ARM ішкі қалтасын ашыңыз.
- Project.uvproj жұмыс кеңістігін іске қосыңыз (жұмыс кеңістігінің атауы бұрынғыдан өзгеруі мүмкінampбасқасына).
- Барлығын қайта құру files:[Жоба]>[Барлық мақсатты қайта құру fileс].
- Жоба кескінін жүктеңіз: [Debug]>[Debug сеансын бастау/тоқтату].
- Бағдарламаны іске қосу: [Debug]>[Run (F5)].
- STM32CubeIDE:
- STM32CubeIDE құралдар тізбегін ашыңыз.
- [БасыңызFile]>[Жұмыс кеңістігін ауыстыру]>[Басқа] және STM32CubeIDE жұмыс кеңістігі каталогына өтіңіз.
- [БасыңызFile]>[Импорттау] , [Жалпы]> [Жұмыс кеңістігіндегі бар жобалар] тармағын таңдап, [Келесі] түймесін басыңыз.
- STM32CubeIDE жұмыс кеңістігі каталогын шолып, жобаны таңдаңыз.
- Барлық жобаны қайта құру files: [Project Explorer] терезесінде жобаны таңдап, [Project]>[Build project] мәзірін басыңыз.
- Бағдарламаны іске қосыңыз: [Run]> [Debug (F11)]
- EWARM:
Теңшелетін қосымшаны әзірлеу
Ескерту: Бағдарламалық құрал флэш-жадтан 0 күту күйін орындауға және максималды өнімділікке және жақсырақ қуат тұтынуға жету үшін нұсқаулар кэшін (ICACHE) қосуы керек.
Қолданбаны әзірлеу немесе жаңарту үшін STM32CubeMX пайдалану
- STM32CubeWBA MCU пакетінде, барлық дерлік жоба бұрынғыampжүйені, перифериялық құрылғыларды және аралық бағдарламалық құралды инициализациялау үшін STM32CubeMX құралымен жасалады.
- Қолданыстағы жобаны тікелей пайдалану, мысалыampSTM32CubeMX құралындағы le үшін STM32CubeMX 6.10.0 немесе одан жоғары нұсқасы қажет:
- STM32CubeMX орнатқаннан кейін ұсынылған жобаны ашыңыз және қажет болса жаңартыңыз. Бар жобаны ашудың ең қарапайым жолы - *.ioc файлын екі рет басу file осылайша STM32CubeMX жобаны және оның көзін автоматты түрде ашады files.
- STM32CubeMX осындай жобалардың баптандыру бастапқы кодын жасайды. Қолданбаның негізгі бастапқы коды «ПАЙДАЛАНУШЫ КОДЫНЫҢ БАСТАЛУЫ» және «ПАЙДАЛАНУШЫН КОДЫНЫҢ СОҢЫ» түсініктемелерінен тұрады. IP таңдауы мен параметрі өзгертілген жағдайда, STM32CubeMX кодтың баптандыру бөлігін жаңартады, бірақ негізгі қолданбаның бастапқы кодын сақтайды.
- STM32CubeMX ішінде теңшелетін жобаны әзірлеу үшін қадамдық процесті орындаңыз:
- Қажетті перифериялық құрылғылар жинағына сәйкес келетін STM32 микроконтроллерін таңдаңыз.
- Барлық қажетті ендірілген бағдарламалық құралды pinout қақтығыстарын шешу құралын, сағаттар ағашының параметрінің көмекшісін, қуат тұтыну калькуляторын және MCU перифериялық конфигурациясын (GPIO немесе USART сияқты) және аралық бағдарламалық құрал стектерін (мысалы, USB) орындайтын қызметтік бағдарламаны пайдаланып конфигурациялаңыз.
- Таңдалған конфигурация негізінде инициализация C кодын жасаңыз. Бұл код бірнеше әзірлеу орталарында пайдалануға дайын. Пайдаланушы коды келесі код генерациясында сақталады.
- STM32CubeMX туралы қосымша ақпаратты STM32 конфигурациялау және инициализациялау C кодын жасау (UM32) үшін STM1718CubeMX пайдаланушы нұсқаулығын қараңыз.
- Қол жетімді жобаның тізімі үшін, мысалыampSTM32CubeWBA үшін қолданбалы жазбаны қараңыз STM32Cube микробағдарламасы бұрынғыampSTM32WBA серияларына арналған les (AN5929).
Драйвер қолданбалары
HAL қолданбасы
Бұл бөлім STM32CubeWBA көмегімен реттелетін HAL қолданбасын жасау үшін қажетті қадамдарды сипаттайды:
- Жоба жасаңыз
- Жаңа жобаны жасау үшін, \Projects\ астындағы әрбір тақта үшін берілген Үлгі жобасынан бастаңыз. \Үлгілер немесе \Projects\ астындағы кез келген қолжетімді жобадан \Мысалдар немесе \Жобалар\ \Қолданбалар (мұнда STM32CubeWBA сияқты тақта атауына сілтеме жасайды).
- Үлгі жобасы бос негізгі цикл функциясын қамтамасыз етеді. Дегенмен, бұл STM32CubeWBA жоба параметрлерін түсіну үшін жақсы бастапқы нүкте. Үлгі келесі сипаттамаларға ие:
- Ол HAL бастапқы кодын, CMSIS және BSP драйверлерін қамтиды, олар берілген тақтада кодты әзірлеу үшін қажетті құрамдастардың ең аз жинағы болып табылады.
- Ол микробағдарламаның барлық құрамдас бөліктеріне арналған жолдарды қамтиды.
- Ол CMSIS және HAL драйверлерін дұрыс конфигурациялауға мүмкіндік беретін қолдау көрсетілетін STM32WBA сериялы құрылғыларды анықтайды.
- Ол пайдалануға дайын пайдаланушыны қамтамасыз етеді fileтөменде көрсетілгендей алдын ала конфигурацияланған:
HAL Arm® негізгі SysTick көмегімен әдепкі уақыт базасымен инициализацияланған. SysTick ISR HAL_Delay() мақсаты үшін енгізілген.
Ескерту: Қолданыстағы жобаны басқа орынға көшіргенде, барлық қосылған жолдардың жаңартылғанын тексеріңіз.
- Пайдаланушы жобасына қажетті аралық бағдарламалық құралды қосыңыз (міндетті емес)
Дереккөзді анықтау үшін files жобаға қосылуы керек file тізім үшін әрбір аралық бағдарламалық құрал үшін берілген құжаттаманы қараңыз. \Projects\STM32xxx_yyy\Applications\ бөліміндегі қолданбаларды қараңыз. (қайда қай көзді білу үшін ThreadX сияқты аралық бағдарламалық құрал стекіне сілтеме жасайды files және қосу жолдарын қосу керек. - Микробағдарлама құрамдастарын конфигурациялаңыз
HAL және аралық бағдарламалық құрал құрамдастары тақырыпта жарияланған #define макростары арқылы құрастыру уақыты конфигурациясының параметрлер жинағын ұсынады. file. Үлгі конфигурациясы file жоба қалтасына (әдетте конфигурация). file xxx_conf_template.h деп аталады, жоба қалтасына көшіру кезінде _template сөзі жойылуы керек). Конфигурация file әрбір конфигурация опциясының әсерін түсіну үшін жеткілікті ақпарат береді. Толығырақ ақпарат әрбір құрамдас үшін берілген құжаттамада бар. - HAL кітапханасын іске қосыңыз
Негізгі бағдарламаға өткеннен кейін қолданба коды келесі тапсырмаларды орындайтын HAL кітапханасын инициализациялау үшін HAL_Init() API шақыруы керек:- Флэш жадын алдын ала алу және SysTick үзу басымдығының конфигурациясы (st m32wbaxx_hal_conf.h ішінде анықталған макростар арқылы).
- stm32wbaxx_hal_conf.h ішінде анықталған TICK_INT_PRIO SysTick үзу басымдылығында миллисекунд сайын үзіліс жасау үшін SysTick конфигурациясы.
- NVIC тобының басымдылығын 0-ге орнату.
- stm32wbaxx_hal_msp.c пайдаланушысында анықталған HAL_MspInit() кері шақыру функциясын шақыру file жаһандық төмен деңгейлі аппараттық инициализацияларды орындау үшін.
- Жүйе сағатын конфигурациялаңыз
Жүйе сағатының конфигурациясы төменде сипатталған екі API интерфейсін шақыру арқылы орындалады:- HAL_RCC_OscConfig(): бұл API ішкі және сыртқы осцилляторларды конфигурациялайды. Пайдаланушы бір немесе барлық осцилляторларды конфигурациялауды таңдайды.
- HAL_RCC_ClockConfig(): бұл API жүйелік сағат көзін, флэш жадының кешігуін және AHB және APB алдын ала масштабтауыштарын конфигурациялайды.
- Перифериялық құрылғыны іске қосыңыз
- Алдымен перифериялық HAL_PPP_MspInit функциясын жазыңыз. Келесі әрекеттерді орындаңыз:
- Перифериялық сағатты қосыңыз.
- Перифериялық GPIO құрылғыларын конфигурациялаңыз.
- DMA арнасын конфигурациялаңыз және DMA үзілуін қосыңыз (қажет болса).
- Перифериялық үзуді қосыңыз (қажет болса).
- Қажет болса, үзу өңдеушілерін (перифериялық және DMA) шақыру үшін stm32xxx_it.c файлын өңдеңіз.
- Перифериялық үзіліс немесе DMA пайдалану жоспарланса, жазу процесі толық кері шақыру функциялары.
- Пайдаланушы main.c file, перифериялық дескриптор құрылымын инициализациялаңыз, содан кейін перифериялық құрылғыны инициализациялау үшін HAL_PPP_Init() функциясын шақырыңыз.
- Алдымен перифериялық HAL_PPP_MspInit функциясын жазыңыз. Келесі әрекеттерді орындаңыз:
- Қолданбаны әзірлеу
- Бұл кезде сtage, жүйе дайын және пайдаланушы қолданбасының кодын әзірлеуді бастауға болады.
- HAL перифериялық құрылғыны конфигурациялау үшін интуитивті және пайдалануға дайын API интерфейстерін қамтамасыз етеді. Ол кез келген қолданба талаптарын қанағаттандыру үшін сұрауды, үзілістерді және DMA бағдарламалау үлгісін қолдайды. Әрбір перифериялық құрылғыны қалай пайдалану керектігі туралы қосымша мәліметтер алу үшін бай эксampSTM32CubeWBA MCU пакетінде берілген.
Абайлаңыз: Әдепкі HAL енгізуінде SysTick таймері уақыт базасы ретінде пайдаланылады: ол тұрақты уақыт аралықтарында үзілістерді жасайды. Егер HAL_Delay() перифериялық ISR процесінен шақырылса, SysTick үзуінің перифериялық үзуге қарағанда басымдылығы жоғары (сандық жағынан төмен) екеніне көз жеткізіңіз. Әйтпесе, қоңырау шалушының ISR процесі блокталады. Уақыт базасының конфигурацияларына әсер ететін функциялар пайдаланушыдағы басқа іске асырулар жағдайында қайта анықтау мүмкіндігін беру үшін __әлсіз деп жарияланады. file (жалпы мақсаттағы таймерді пайдалану, мысалыample немесе басқа уақыт көзі). Қосымша мәліметтер алу үшін HAL_TimeBase эксampле.
LL қолданбасы
Бұл бөлім STM32CubeWBA арқылы теңшелетін LL қолданбасын жасау үшін қажетті қадамдарды сипаттайды.
- Жоба жасаңыз
- Жаңа жобаны жасау үшін, \Projects\ астындағы әрбір тақта үшін берілген Templates_LL жобасынан бастаңыз. \Templates_LL немесе \Projects\ астындағы кез келген қолжетімді жобадан \Мысamples_LL ( NUCLEO-WBA32CG сияқты тақта атауына сілтеме жасайды).
- Үлгі жобасы бос негізгі цикл функциясын қамтамасыз етеді, ол STM32CubeWBA үшін жоба параметрлерін түсіну үшін жақсы бастапқы нүкте болып табылады. Үлгінің негізгі сипаттамалары келесідей:
- Ол LL және CMSIS драйверлерінің бастапқы кодтарын қамтиды, олар берілген тақтада кодты әзірлеу үшін қажетті құрамдастардың ең аз жиынтығы болып табылады.
- Ол барлық қажетті микробағдарлама құрамдастарына арналған жолдарды қамтиды.
- Ол қолдау көрсетілетін STM32WBA сериялы құрылғыны таңдайды және CMSIS және LL драйверлерінің дұрыс конфигурациясына мүмкіндік береді.
- Ол пайдалануға дайын пайдаланушыны қамтамасыз етеді files келесідей алдын ала конфигурацияланады:
◦ main.h: LED және USER_BUTTON анықтамасының абстракциялық қабаты.
◦ main.c: Максималды жиілік үшін жүйелік сағат конфигурациясы.
- Бар жобаны басқа тақтаға ауыстырыңыз
Басқа мақсатты тақтада бар жобаны қолдау үшін әр тақта үшін берілген және \Projects\ астында қолжетімді Templates_LL жобасынан бастаңыз. \Үлгілер_LL.- LL таңдаңызample: Тақтаны табу үшін LL examples орналастырылған болса, LL мысалы тізімін қараңызamples STM32CubeProjectsList.html.
- LL портын бұрынғыampле:
- Templates_LL қалтасын көшіріңіз/қойыңыз – бастапқы көзді сақтау үшін – немесе бар Temp lates_LL жобасын тікелей жаңарту.
- Содан кейін тасымалдау негізінен Templates_LL ауыстырудан тұрады fileЭксamples_LL мақсатты жоба.
- Тақтаның барлық арнайы бөліктерін сақтаңыз. Түсінікті болу үшін тақтаның арнайы бөліктері арнайы белгілермен белгіленеді tags:
- Осылайша, тасымалдаудың негізгі қадамдары мыналар:
- stm32wbaxx_it.h ауыстырыңыз file
- stm32wbaxx_it.c ауыстырыңыз file
- Негізгі.h ауыстырыңыз file және оны жаңартыңыз: LL үлгісінің жарық диодты және пайдаланушы түймелерінің анықтамасын BOARD SPECIFIC CONFIGURATION астында сақтаңыз. tags.
- Негізгі.c. ауыстырыңыз file және оны жаңартыңыз:
- SystemClock_Config() LL үлгісі функциясының сағат конфигурациясын BOARD SPECIFIC CONFIGURATION астында сақтаңыз tags.
- ЖШД анықтамасына байланысты әрбір LDx оқиғасын main.h ішінде қолжетімді басқа LDyмен ауыстырыңыз file.
- Осы өзгертулермен, бұрынғыample енді мақсатты тақтада жүгіреді
Қауіпсіздік қолданбалары
Бұл пакет қауіпсіздік қолданбаларымен бірге жеткізіледі.
SBSFU қолданбалары
- SBSFU, Secure Boot және Secure микробағдарламаны жаңарту функцияларын (MCUboot негізіндегі) қоса, Root of Trust шешімін ұсынады.
- Шешім қолданбаны орындау алдында қолданылады.
- Шешім бұрынғы нұсқаны бередіampҚауіпсіз қолданбадан оқшауланған қауіпсіз қызметтің (GPIO ауыстырып қосқышы). Орындалу уақытындағы қауіпсіз қолданба әлі де осы шешімді пайдалана алады.
TFM қолданбалары
TFM сенімді жүктеу және қауіпсіз микробағдарламаны жаңарту функцияларын қоса алғанда, сенім түбірі шешімін ұсынады.
(MCUboot негізінде). Шешім қолданбаны орындау алдында қолданылады. Шешім қауіпсіз емес қолданбадан оқшауланған TFM қауіпсіз қызметтерін ұсынады. Орындалу уақытындағы қауіпсіз қолданба әлі де осы шешімді пайдалана алады.
RF қолданбалары
РЖ қолданбасы осы қолданба ескертпесінде сипатталған: STM32WBA сериялы микроконтроллерлері бар сымсыз қолданбаларды құру (AN5928).
STM32CubeWBA шығарылым жаңартуларын алу
STM32CubeWBA MCU пакетінің соңғы шығарылымдары мен патчтары STM32WBA сериясынан қол жетімді. Оларды STM32CubeMX ішіндегі ЖАҢАРТУДЫ ТЕКСЕРУ түймешігінен алуға болады. Қосымша мәліметтер алу үшін STM3 конфигурациясы және инициализация C кодын жасау (UM32) үшін STM32CubeMX пайдаланушы нұсқаулығының 1718 бөлімін қараңыз.
Жиі қойылатын сұрақтар
- LL драйверлерінің орнына HAL тілін қашан пайдалануым керек?
- HAL драйверлері портативтіліктің жоғары деңгейімен жоғары деңгейлі және функцияға бағытталған API ұсынады. Өнім немесе перифериялық күрделілік соңғы пайдаланушылар үшін жасырылады.
- LL драйверлері оңтайландыруы жақсы, бірақ портативтілігі төмен төменгі деңгейлі тізілім деңгейіндегі API интерфейстерін ұсынады. Олар өнім немесе IP сипаттамалары туралы терең білімді талап етеді.
- HAL және LL драйверлерін бірге пайдалана аламын ба? Мүмкін болсам, қандай шектеулер бар?
- HAL және LL драйверлерін де пайдалануға болады. IP баптандыру кезеңі үшін HAL пайдаланыңыз, содан кейін LL драйверлерімен енгізу/шығару әрекеттерін басқарыңыз.
- HAL және LL арасындағы негізгі айырмашылық HAL драйверлері операцияны басқару үшін дескрипторларды жасауды және пайдалануды талап етеді, ал LL драйверлері тікелей перифериялық регистрлерде жұмыс істейді. Эксamples_MIX мысалыample HAL және LL қалай араластыру керектігін көрсетеді.
- LL баптандыру API интерфейстері қалай қосылады?
- LL инициализация API интерфейстерінің және байланысты ресурстардың (Құрылымдар, литералдар және прототиптер) анықтамасы USE_FULL_LL_DRIVER компиляция қосқышы арқылы шартталған.
- LL инициализация API интерфейстерін пайдалану үшін осы қосқышты құралдар тізбегі компиляторының препроцессорына қосыңыз.
- STM32CubeMX ендірілген бағдарламалық құрал негізінде кодты қалай жасай алады?
STM32CubeMX STM32 микроконтроллерлері, оның ішінде олардың перифериялық құрылғылары мен пайдаланушыға графикалық кескінді ұсынуға және *.h немесе *.c құруға мүмкіндік беретін бағдарламалық құрал туралы кірістірілген білімі бар. fileпайдаланушы конфигурациясына негізделген.
МАҢЫЗДЫ ЕСКЕРТПЕ – МҰҚИЯТ ОҚЫҢЫЗ
- STMicroelectronics NV және оның еншілес компаниялары («СТ») ST өнімдеріне және/немесе осы құжатқа кез келген уақытта ескертусіз өзгерістер, түзетулер, жақсартулар, өзгертулер және жақсартулар енгізу құқығын өзіне қалдырады. Сатып алушылар тапсырыс бергенге дейін СТ өнімдері туралы соңғы ақпаратты алуы керек. СТ өнімдері тапсырысты растау кезінде қолданыстағы СТ сату шарттарына сәйкес сатылады.
- Сатып алушылар СТ өнімдерін таңдауға, таңдауға және пайдалануға жауапты және СТ қолданбаға көмек көрсету немесе сатып алушылардың өнімдерінің дизайны үшін жауапкершілік көтермейді.
- Осы құжатта ST компаниясы зияткерлік меншік құқығына тікелей немесе жанама түрде ешқандай лицензия бермейді.
- Осы құжатта баяндалған ақпараттан өзгеше ережелері бар СТ өнімдерін қайта сату СТ осындай өнімге берген кез келген кепілдікті жояды.
- ST және ST логотипі ST сауда белгілері болып табылады. ST сауда белгілері туралы қосымша ақпаратты www.st.com/trademarks сайтынан қараңыз. Барлық басқа өнім немесе қызмет атаулары олардың тиісті иелерінің меншігі болып табылады.
- Осы құжаттағы ақпарат осы құжаттың кез келген алдыңғы нұсқаларында бұрын берілген ақпаратты ауыстырады және ауыстырады.
- © 2023 STMicroelectronics – Барлық құқықтар қорғалған
Құжаттар / Ресурстар
![]() |
STMicroelectronics STM32WBA сериясын бастау [pdf] Пайдаланушы нұсқаулығы STM32WBA сериясы Жұмысты бастау, бастау, бастау |