Preskočiť na hlavný obsah

Prehľad BSP

Podporované rodiny STM32: G4 · H5 · H7 · L4 · U5

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 U5
    • STM32H5 – obsahuje BSP pre rodinu H5
    • STM32H7 – obsahuje BSP pre rodinu H7
    • STM32G4 – 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​

Príspevky sú vítané! Otvorte prosím pull request.


Podpora rodín​

G4H5H7L4U5
Linker✅✅✅✅✅
Docs✅✅——✅
RAL✅✅✅✅✅
MCAL✅✅✅✅✅