CubeMx 生成的FreeRTOS 代码在ARM compiler6 编译__forceinline 报错的解决方法
生活随笔
收集整理的這篇文章主要介紹了
CubeMx 生成的FreeRTOS 代码在ARM compiler6 编译__forceinline 报错的解决方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、問題
如題,CubeMx 生成的FreeRTOS 代碼在ARM compiler6 編譯__forceinline 報錯的解決方法。
二、解決方法
第一種方法,將編譯器換回default compiler version 5。
第二種方法,更換freeRTOS移植源碼文件。
將FreeRTOS源碼xxx\FreeRTOSv10.3.1\FreeRTOSv10.3.1\FreeRTOS\Source\portable\GCC\ARM_CM4F 文件夾下的port.c和portmacro.h 替換掉CubeMx工程生成的FreeRTOS相應源碼,xxx\FreeRTOS_STM32F407\Middlewares\Third_Party\FreeRTOS\Source\portable\RVDS\ARM_CM4F,此時選擇ARM compiler 6 及其以上就不會出錯了。?
ARM Complier 6 以后只支持GNU風格的內聯,所以把RVDS接口換成GCC接口文件接口即可編譯成功。
其他的變動可以參考:
?
?
?
?
總結
以上是生活随笔為你收集整理的CubeMx 生成的FreeRTOS 代码在ARM compiler6 编译__forceinline 报错的解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 离线安装Silverlight 工具
- 下一篇: uci数据集_干货收藏!三大领域常用十大