Background / Project activities:
I use STM32CubeMX to generate code for STM32H753BIT6 Version V microcontroller.
At least four problems are encountered while using STM32CubeMX:
- I had to modify my Project to compile with help of Keil Compiler version 6. When I was using Keil Compiler version 5 (without modifying my code), the compile time was about 7 minutes.
- The STM32CubeMX imports the FreeRTOS version 10.2.1 with CMSIS-RTOS version 2.00 (and not FreeRTOS version 10.4.0)
- FreeRTOS Kernel cannot be compiled using Keil Compiler version 6.
- STM32CubeMX generated code uses the functions from CMSIS_OS.C file (which are rappers over the FreeRTOS functions) for creating tasks. Certain implemented APIs have minor issues (which I’ve reported on appropriate website / issue tracker).
I’ve created a project for understanding how to create tasks. Used FreeRTOS version is 10.2.1 with CMSIS-RTOS version 2.00. Based on this project I expect to update my project to use Tasks.
Concern with FreeRTOS-Kernel:
When using Keil ARM Compiler version 6 to compile the code, I am observing several concerns, possibly because the FreeRTOS-Kernel code is still compilable with help of Keil ARM Compiler Version 5 and not with Keil Compiler Version 6.
The files under question (port.c and portmacro.h) are available under folder:
I have made modifications to the files and brought them up to a level wherein the compiler is now not throwing errors. I however need your help with how to correctly use the extern variables inside the ASM code . I am also concerned about how to handle C variables in assembly.
(This page is preventing me upload code. I will try to upload port.zip again after chicking in / sharing my concern Maybe one can download the ZIP file from link https://github.com/FreeRTOS/FreeRTOS-Kernel/issues/154).
I have used the __CC_ARM macro to separate out the assembly code which can be compiled with Keil Compiler Version 5 from the one that can be compiled with Keil Compiler Version 6.
I hereby request you to please review the files and help me with an updated file ASAP (as it is crucial to my project.