RAL CMSIS
Zrkadlo oficiálneho repozitára CMSIS (Cortex Microcontroller Software Interface Standard) od ARM. Používa sa ako git submodul repozitára Bsp-Ral a dodáva hlavičky jadra Cortex-M a DSP, voči ktorým sa zostavuje Register Abstraction Layer (RAL_ST) aj surové ovládače ST HAL/LL.
Prehľad
| Upstream projekt | ARM-software/CMSIS_5 |
| Úloha v Bsp-Ral | Závislosť len s hlavičkami — poskytuje cesty pre include jadra Cortex-M (CMSIS/Core) a DSP (CMSIS/DSP) |
| Licencia | Apache License 2.0 — pozrite LICENSE.txt, nezmenená oproti upstreamu |
| Model údržby | Zrkadlené z upstreamu; lokálne sa neupravuje |
⚠️ Tento repozitár doslovne sleduje oficiálne zdrojové kódy CMSIS od ARM. Jeho obsah neupravujte priamo — zmeny patria do upstreamu alebo namiesto toho do rozhraniovej vrstvy
RAL_ST/Port.
Štruktúra vetiev
| Vetva | Účel |
|---|---|
CMSIS | Základná vetva, udržiavaná v synchronizácii s upstream repozitárom ARM CMSIS |
CMSIS_<major>.<minor>.x | Vetva vydania zrkadliaca jedno konkrétne oficiálne vydanie ARM CMSIS (napr. CMSIS_5.9.x) |
Štruktúra repozitára
CMSIS
├── CMSIS
│ ├── Core # Cortex-M core peripheral access layer
│ ├── Core_A # Cortex-A core peripheral access layer
│ ├── CoreValidation # Core header validation suite
│ ├── DAP # CoreSight Debug Access Port firmware
│ ├── DoxyGen # Documentation sources
│ ├── Driver # Generic peripheral driver interfaces for middleware
│ ├── DSP # DSP function library (fixed-point and floating-point)
│ ├── Lib # Prebuilt libraries
│ ├── NN # Neural network kernels
│ ├── Pack # CMSIS-Pack delivery format
│ ├── RTOS # CMSIS-RTOS v1 API + RTX reference implementation
│ ├── RTOS2 # CMSIS-RTOS v2 API
│ └── Utilities # Pack generation utilities
├── Device
│ └── ARM # ARM reference device templates
└── LICENSE.txt
Použitie
Pri použití ako submodul repozitára Bsp-Ral sa tento repozitár nezostavuje ako samostatný projekt CMake — dodáva len hlavičky. CMakeLists.txt repozitára Bsp-Ral pridáva nasledujúce cesty k obom svojim knižničným cieľom (HAL_LL_Lib a Ral_Lib):
target_include_directories(Ral_Lib
PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}/CMSIS/CMSIS/Core/Include # Cortex core functionality
${CMAKE_CURRENT_SOURCE_DIR}/CMSIS/CMSIS/DSP/Include # DSP functionality
...
)
V navazujúcich projektoch nie sú potrebné žiadne zmeny — použitie Ral_Lib alebo HAL_LL_Lib z nadradeného repozitára Bsp-Ral už tranzitívne sprístupňuje hlavičky jadra Cortex-M.
Licencia
Distribuované pod licenciou Apache License 2.0, identickou s upstream licenciou ARM CMSIS. Pozrite LICENSE.txt.