2020-04-22 02:52 AM
Is it possibile to choose the CMSIS Version in Cube? What's a good way to manage CMSIS updates? Copy/Paste manually?
I'am using Keil µVision 5.29 (Keil Project manually generated -> Reference to copied STM32CubeMX Files).
STM32CubeMX 5.6.1
Cube MCU Package 1.16 for STM32F7
Updated CMSIS in Cube to 5.6.0, files copied in the path STCubeGenerated\Drivers\CMSIS are from CMSIS 5.1.0.
Thank you and kind regards
Lasse
2020-04-22 06:41 AM
> What's a good way to manage CMSIS updates?
Personally, I use the latest available when I start the project, then never update unless there is a compelling reason.
Copying files over manually works, just be sure you get them all. That's what I do. Not sure how CubeMX does this.
2020-04-25 02:58 PM
2020-04-25 08:08 PM
> Updated CMSIS in Cube to 5.6.0, files copied in the path STCubeGenerated\Drivers\CMSIS are from CMSIS 5.1.0.
So this is what you see? In the Cube repository it is 5.6.0, but copied into generated project is 5.1.0? Where could CubeMX copy that from?
-- pa
2020-04-26 11:04 AM
My point is - just take the latest release from ARM and don't wait what and when ST will repack.
2020-04-27 12:04 AM
Hello,
I've found my problem. I was thinking that the defines __CM_CMSIS_VERSION_MAIN and __CM_CMSIS_VERSION_SUB reflect the CMSIS Version 5.3.0, 5.4.0 etc. but they are useless in my opinion. The both defines have the following values.
CMSIS 5.3.0 _MAIN: 5 _SUB: 1
CMSIS 5.4.0 _MAIN: 5 _SUB: 1
CMSIS 5.5.0 _MAIN: 5 _SUB: 1
CMSIS 5.5.1 _MAIN: 5 _SUB: 1
CMSIS 5.6.0 _MAIN: 5 _SUB: 3
CMSIS 5.7.0 _MAIN: 5 _SUB: 4
With the new versions (since 5.6.0) the defines get an update. They are distinguishable, but I think it's easier with defines referenced to the "Main" CMSIS Version.
Are there other defines which I can use?
Thank you for your answers. To get the source from github is the best idea 🙂
2020-04-27 01:26 AM
But if I push the button "GENERATE CODE" in STM32CubeMX (5.6.1) with STM32F7 Package 1.16 and only CMSIS 5.6.0 and 5.7.0 in the repository:
The newer versions are not used. There is another CMSIS Driver folder which Cube copies to the project files under /RTE/
and this CMSIS Version is very old. But because of the useless VERSION Defines it's not easy to find out which version of CMSIS is in the package Cube package. After a little research I only know the version in the newest Cube package for STM32F7 controllers is equal or older than CMSIS 5.4.0.
The new question is:
For what you can download CMSIS Packages from ARM in STM32Cube?
Best regards
Lasse