Arm CMSIS & Pico]OS Cortex-M port

CMSIS is a software library that can be provided by Arm Cortex-M chip manufacturer to help programmer to deal with hardware implementation. Instead of programming chip registers directly as usual, one just calls higher-level functions provided by CMSIS. Function calls are same for all chips but internal implementation can of course be different.

Pico]OS Cortex-M port uses CMSIS library to configure SysTick timer, which is used to provide a steady timer interrupt for operating system. CMSIS is also used to for console output during debugging session.

It is possible to build CMSIS by hand, but to make job easier this module contains example Pico]OS -style Makefiles to do it more easily. Examples are provided for NXP LPC11xx and ST Microelectronics stm32f10x (this has been tested with Olimex STM32-H103 board)

Before attempting build library, download source code from chip manufacturer and extract it into right subdirectory in library. The actual CMSIS variant that is built is selected by CMSIS makefile variable.

Source code is available at Github.

Ari Suutari

Father of three 🙂
{ Electronics | Music | Computer | Motorbike } hobbyist.
Factory IT professional.
FreeBSD since day one.

Facebook LinkedIn