Přeskočit na hlavní obsah

RAL CMSIS ST

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

Zrcadlo balíčku CMSIS Device Interface od STMicroelectronics (cmsis-device-<family>), který poskytuje hlavičkové soubory specifické pro dané zařízení, definice registrů a deklarace systému/startupu vždy pro jednu rodinu STM32. Používá se jako git submodul repozitáře Bsp-Ral, jedna větev pro každou rodinu/vydání STM32.


Přehled​

Upstream projektSTMicroelectronics/cmsis-device-<family> (např. cmsis-device-g4)
Role v Bsp-RalZávislost pouze na hlavičkových souborech — poskytuje hlavičkové soubory zařízení pro jednotlivá MCU, které využívá RAL_ST a překlad define MCU v nadřazeném sestavení
LicenceViz License.md, beze změn oproti upstreamu
Model údržbyZrcadleno z upstreamu pro každou rodinu; lokálně se neupravuje

⚠️ Tento repozitář doslovně sleduje oficiální zdrojové kódy CMSIS device od STMicroelectronics. Jeho obsah přímo neupravujte — logika nezávislá na zařízení patří místo toho do RAL_ST/Port.


Struktura větví​

Vzor větveÚčel
STM32<family> (např. STM32G4, STM32U5, STM32H7)Větev rodiny obsahující hlavičkové soubory CMSIS device pro danou rodinu STM32
STM32<family>_<major>.<minor>.x (např. STM32G4_1.2.x)Release větev odrážející jedno konkrétní vydání ST pro danou rodinu

Struktura repozitáře​

CMSIS_ST
├── Include
│ ├── stm32g4xx.h # Family dispatcher — selects the exact per-part header
│ ├── stm32g411xb.h # Per-part-number device header (register/interrupt definitions)
│ ├── stm32g411xc.h
│ ├── stm32g414xx.h
│ ├── ... # One header per part number in the family
│ └── system_stm32g4xx.h # System/clock initialization declarations
├── Source # System initialization sources (system_stm32g4xx.c, startup files)
└── License.md

(Názvy souborů výše odpovídají skutečnému obsahu větve rodiny STM32G4; ostatní větve rodin sledují stejné rozložení Include/Source s hlavičkovými soubory vlastní rodiny, např. stm32u5xx.h.)


Použití​

Při použití jako submodul Bsp-Ral se tento repozitář nesestavuje jako samostatný projekt CMake — dodává pouze hlavičkové soubory. CMakeLists.txt repozitáře Bsp-Ral přidává CMSIS_ST/Include do obou svých knihovních targetů (HAL_LL_Lib a Ral_Lib):

target_include_directories(Ral_Lib
PUBLIC
...
${CMAKE_CURRENT_SOURCE_DIR}/CMSIS_ST/Include # ST CMSIS Device files
)

Nadřazené sestavení (Build.cmake) navíc při konfiguraci parsuje dispatcher hlavičkový soubor rodiny (např. stm32g4xx.h) a extrahuje z něj řetězec #if/#elif defined(STM32...), aby pro cílové označení součástky určilo přesný define zařízení (např. STM32G411xB) — takže součástka chybějící v tomto hlavičkovém souboru způsobí selhání konfigurace CMake s jasnou chybou, a ne změť navazujících chyb kompilátoru.


Licence​

Distribuováno za podmínek uvedených v License.md, beze změn oproti upstream balíčku CMSIS device od STMicroelectronics.