CMSIS
Meer info
- Gemaakt door
- ARM
- Jaar
- 2008
- Type
- Standaard voor softwareinterfaces
- Licentie
- Apache 2.0
- Broncode
- github.com/ARM-software
ARM's fabrikantonafhankelijke standaard voor hoe software met een Cortex-M-kern praat, ongeacht wie de chip eromheen heeft gebouwd.
Vóór 2008 leverde elke chipfabrikant voor dezelfde ARM-kern eigen headerbestanden mee, met eigen namen voor dezelfde registers. CMSIS-Core gaf hun gemeenschappelijke namen en functies — NVIC_EnableIRQ(), SysTick_Config(), __disable_irq() — zodat code en kennis konden meeverhuizen tussen ST, NXP en Nordic zonder herschrijven.
Inmiddels is het een hele familie: CMSIS-DSP voor signaalverwerking en matrixrekenen, CMSIS-RTOS als gemeenschappelijke API boven verschillende realtimekernels, CMSIS-DAP als open firmware voor debugprobes en CMSIS-Pack voor het uitleveren van chipondersteuning. Wat fabrikanten daar bovenop leggen, zoals ST's HAL, is iets anders en een stuk minder overdraagbaar.