CMSIS
Więcej informacji
- Twórca
- ARM
- Rok
- 2008
- Typ
- Standard interfejsu programowego
- Licencja
- Apache 2.0
- Kod źródłowy
- github.com/ARM-software
Niezależny od producenta standard ARM opisujący, jak oprogramowanie rozmawia z rdzeniem Cortex-M, bez względu na to, kto zbudował wokół niego układ.
Przed 2008 rokiem każdy producent krzemu dostarczał własne pliki nagłówkowe dla tego samego rdzenia ARM, z własnymi nazwami tych samych rejestrów. CMSIS-Core nadał im wspólne nazwy i funkcje — NVIC_EnableIRQ(), SysTick_Config(), __disable_irq() — dzięki czemu kod i wiedzę dało się przenosić między ST, NXP i Nordic bez przepisywania.
Z czasem urosła z tego cała rodzina: CMSIS-DSP do przetwarzania sygnałów i rachunku macierzowego, CMSIS-RTOS jako wspólne API nad różnymi jądrami czasu rzeczywistego, CMSIS-DAP jako otwarte oprogramowanie sond debugujących oraz CMSIS-Pack do dostarczania wsparcia dla układów. To, co producenci dokładają na wierzch, jak HAL od ST, to już co innego i znacznie mniej przenośne.