2019-06-24 03:20 PM
Hello,
I'm rather new at MCU programming but have been a SWE for 20+ years working in low-level Linux (libraries and device drivers) and I understand the basics of multi-threaded programming. I have several STM32 eval boards including P-Nucleo-STM32WB55 and Nucleo-32 STM32466RE and would like to delve into FreeRTOS middleware.
I have managed to create a microcode which flashes the LED every second running in a thread but I still feel like I'm missing quite a bit. I have been `googling` this topic for the last 2 days and have not found anything specific to the STM32CubeMX/TrueStudio toolchain.
I figured the best way to learn would be to ask those who know. That is why I came here to the ST forum for advice.
Thank you,
Michael Uman
Sr. SW Engineer
Wunder-Bar
2019-06-25 02:01 AM
My suggestion is to not use CubeMX flawed bloatware and use FreeRTOS directly. First get it running like in these examples:
http://www.radekdostal.com/content/freertos-610-minimal-example
http://www.pezzino.ch/freertos-hello-world/
And from there official FreeRTOS documentation is the help:
2019-06-25 10:44 AM
Hello Piranha,
Thank you very much for your prompt reply.
I had a quick look at the material you suggested and it seems helpful. In my short experience it seems that STMCubeMX adds a layer CMSIS (Cortex Micro-controller Software Interface Standard) to the project which provides an alternate API for thread creation and manipulation. I appreciate your link to the official FreeRTOS documentation.
Thank you,
Michael Uman
Sr. SW Engineer
Wunder-Bar
2019-06-25 04:13 PM
And some links explaining what is CMSIS and in particular CMSIS-RTOS:
https://developer.arm.com/tools-and-software/embedded/cmsis
http://arm-software.github.io/CMSIS_5/RTOS2/html/index.html
https://os.mbed.com/handbook/CMSIS-RTOS
Enjoy the reading.
-- pa
2019-06-25 06:03 PM
Hello Pavel,
Thank you for the links to the CMSIS documentation. I have started looking at them and find them very helpful to understand the FreeRTOS API.
Have a good day!
Michael