May 2020
Intermediate to advanced
496 pages
13h 54m
English
There are a few noteworthy differences between programming with the CMSIS-RTOS API compared with doing so using the FreeRTOS API.
CMSIS-RTOS task creation functions take the stack size in bytes, as opposed to in words in FreeRTOS. So, making calls to xTaskCreate in FreeRTOS with a stack size of 128 words equates to calling CMSIS-RTOS osThreadNew with an argument of 512 bytes.
CMSIS-RTOS has fewer functions than FreeRTOS but relies on attribute structs as input to those functions. For example, in FreeRTOS, there are many families of functions that have FromISR equivalents. The FromISR variants typically won't block at all – they need to be called if an RTOS API call is made from inside an ISR, but they can also ...