Prehľad BSP
Modul BSP poskytuje všetky potrebné komponenty na inicializáciu a podporu hardvéru mikrokontrolérov STM32 pre danú rodinu MCU.
Každá rodina STM32 je dostupná v samostatnej vetve Gitu. Napríklad vetva STM32U5 obsahuje všetky komponenty BSP potrebné pre rodinu U5.
Štruktúra
-
Linker Module
Generuje linker script podľa typu MCU, ktorý zvolí používateľ. -
Startup Module
- Volá vstupný bod používateľskej aplikácie.
- Inicializuje pamäťové sekcie (RAM, .data, .bss atď.).
- Spúšťa konštruktory C++, ak sa C++ používa.
-
MCAL Module
Poskytuje nízkoúrovňové ovládače a prístup k periférii MCU. -
RAL Module
Poskytuje jednotný prístup k perifériám cez knižnice (abstrahované hlavičky LL/CMSIS) naprieč všetkými rodinami MCU. -
HAL Module
Poskytuje vysokoúrovňovú hardvérovú abstrakciu pre jednoduchšie ovládanie periférií. -
CMake Configuration
Modul BSP nastavuje kompilátor a voľby zostavenia podľa zvolenej rodiny MCU.
Každá vetva rodiny obsahuje príslušný toolchain CMake a konfiguráciu pre danú rodinu.
Použitie
- Naklonujte repozitár BSP a prepnite sa na vetvu zodpovedajúcu cieľovej rodine MCU, napr.:
git clone <repo_url> bsp_project
cd bsp_project
git checkout STM32U5
- Potrebné moduly BSP zahrňte do projektu cez
CMakeLists.txt. - Linker script, štartovací kód, MCAL, RAL a HAL sa automaticky nakonfigurujú podľa zvolenej rodiny MCU.
Stratégia vetvenia
- Každá rodina STM32 má vlastnú vetvu:
STM32U5– obsahuje BSP pre rodinu U5STM32H5– obsahuje BSP pre rodinu H5STM32H7– obsahuje BSP pre rodinu H7STM32G4– obsahuje BSP pre rodinu G4- … a ďalšie
Vďaka tomu môže používateľ pracovať s rovnakým rozhraním BSP a pritom podporovať viacero rodín MCU prostredníctvom vetiev.
Poznámky
- Nemiešajte súbory z vetiev rôznych rodín MCU.
- Projekt vždy zostavujte z vetvy zodpovedajúcej cieľovému MCU.
- CMake automaticky vyberie správny toolchain a príznaky kompilátora pre zvolenú rodinu.
Licencia
Tento projekt je licencovaný pod licenciou Creative Commons Attribution–NonCommercial 4.0 International (CC BY-NC 4.0).
Toto dielo môžete slobodne používať, upravovať a zdieľať na nekomerčné účely, pokiaľ uvediete primeraný zdroj.
Úplné znenie podmienok nájdete v LICENSE.md alebo na creativecommons.org/licenses/by-nc/4.0.
Autori
- Mr.Nobody — embedbits.com
Príspevky sú vítané! Otvorte prosím pull request.
Podpora rodín
| G4 | H5 | H7 | L4 | U5 | |
|---|---|---|---|---|---|
| Linker | ✅ | ✅ | ✅ | ✅ | ✅ |
| Docs | ✅ | ✅ | — | — | ✅ |
| RAL | ✅ | ✅ | ✅ | ✅ | ✅ |
| MCAL | ✅ | ✅ | ✅ | ✅ | ✅ |