Перейти до основного вмісту

RAL CMSIS

Дзеркало офіційного репозиторію ARM CMSIS (Cortex Microcontroller Software Interface Standard). Використовується як git submodule репозиторію Bsp-Ral і постачає заголовки ядра Cortex-M та DSP, на основі яких збираються Register Abstraction Layer (RAL_ST) і «сирі» драйвери ST HAL/LL.


Огляд​

Вихідний проєктARM-software/CMSIS_5
Роль у Bsp-RalЗалежність лише із заголовків — надає шляхи include для ядра Cortex-M (CMSIS/Core) та DSP (CMSIS/DSP)
ЛіцензіяApache License 2.0 — дивіться LICENSE.txt, без змін відносно оригіналу
Модель супроводуДзеркалюється з оригіналу; локально не змінюється

⚠️ Цей репозиторій дослівно відстежує офіційні джерела ARM CMSIS. Не редагуйте його вміст безпосередньо — зміни слід вносити в оригінальний репозиторій або в інтерфейсний рівень RAL_ST/Port.


Структура гілок​

ГілкаПризначення
CMSISБазова гілка, синхронізована з оригінальним репозиторієм ARM CMSIS
CMSIS_<major>.<minor>.xРелізна гілка, що дзеркалює один конкретний офіційний реліз ARM CMSIS (наприклад, CMSIS_5.9.x)

Структура репозиторію​

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

Використання​

Цей репозиторій не збирається як окремий проєкт CMake, коли використовується як submodule Bsp-Ral — він лише постачає заголовки. CMakeLists.txt репозиторію Bsp-Ral додає такі шляхи до обох своїх бібліотечних цілей (HAL_LL_Lib і 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
...
)

У проєктах-споживачах жодних змін не потрібно — підключення Ral_Lib або HAL_LL_Lib з батьківського репозиторію Bsp-Ral уже транзитивно відкриває заголовки ядра Cortex-M.


Ліцензія​

Поширюється за Apache License 2.0, ідентичною ліцензії оригінального ARM CMSIS. Дивіться LICENSE.txt.