FreeRTOS STM32H743ZI FPU Assembler Error
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2023-12-05 08:39 PM
Hi there,
I’m trying to compile a project using the STM32H743ZI2 Nucleo board with STM32CUBE Framework with FreeRTOS with PlatformIO.
The project can be found here:
Zafeer_FreeRTOSFromGroundUp/PlatformIO/17_WorkingWithQueueSets at main · ZafeerAbbasi/Zafeer_FreeRTOSFromGroundUp (github.com)
But basically, I’m using an extra script to add flags:
Import( “env” )
env.Append(CCFLAGS=flags, LINKFLAGS=flags, ASFLAGS=flags)
However I keep getting the following errors:
…\Local\Temp\ccTwSuW0.s: Assembler messages:
…\Local\Temp\ccTwSuW0.s:330: Error: selected processor does not support vstmdbeq r0!,{s16-s31}' in Thumb mode ...\Local\Temp\ccTwSuW0.s:332: Error: instruction not allowed in IT block -- stmdb r0!,{r4-r11,r14}’
…\Local\Temp\ccTwSuW0.s:352: Error: selected processor does not support vldmiaeq r0!,{s16-s31}' in Thumb mode ...\Local\Temp\ccTwSuW0.s:354: Error: instruction not allowed in IT block -- msr psp,r0’
*** [.pio\build\nucleo_h743zi\libe54\Source\portable\GCC\ARM_CM4F\port.o] Error 1
The exact instructions can be found in port.c of FreeRTOS Kernel:
I’m not too experienced but any help would be greatly appreciated!
Solved! Go to Solution.
- Labels:
-
STM32H7 Series
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2023-12-06 02:47 AM
The solution was based on PlatformIO platform.ini file, basically instead of:
and that did the trick!
( Also I used the CM7 Port instead of the CM4 port, S/O to @RomainR. for pointing that out!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2023-12-06 12:04 AM
Hello @rockybalboa__
I'm not familliar with PlateformIO IDE, but in errors you get, it seems you are using port.c of FreeRTOS Kernel for CM4. As STM32H7 is a CM7, you should use adequate FreeRTOS port.c for CM7.
Regards,
Romain,
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2023-12-06 02:45 AM
Thank you for pointing that out, it really did help!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2023-12-06 02:47 AM
The solution was based on PlatformIO platform.ini file, basically instead of:
and that did the trick!
( Also I used the CM7 Port instead of the CM4 port, S/O to @RomainR. for pointing that out!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2023-12-06 02:55 AM
Thank you @rockybalboa__
Does it mean "pre:add_hardfloat.py" is a typo ?
Regards.
Romain,
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
