跳到正文

Wiki

常見問題

約 4 分鐘閱讀

本文由簡體中文內容確定性轉換,並受版本化術語表保護。

1.FreeRTOS使用ARMCLANG(AC6)編譯報錯的問題

  1. 如果你是使用的模板,那麼將模板中的“其他注意事項”資料夾中的Middlewares資料夾複製到根目錄即可。

  1. 如果你是自己從Windows上從0開始創立的工程(沒有使用模板),那麼需要你去尋找CubeMX下載的韌體原始碼

比如Linux中韌體原始碼在/home/tungchiahui(你自己的用户名)/STM32Cube/Repository/中。

假如你是F103,那麼開啟STM32Cube_FW_F1_V1.8.5資料夾。

如果你是F407,那麼開啟STM32Cube_FW_F4_V1.28.0資料夾。

找到路徑/home/tungchiahui/STM32Cube/Repository/STM32Cube_FW_F1_V1.8.5/Middlewares/Third_Party/FreeRTOS/Source/portable/

將這個GCC資料夾裡的ARM_CM3資料夾複製到 工程資料夾 對應的RVDS資料夾下。

2.錯誤執行cmake配置

如果遇到error cbuild: error executing 'cmake' configuration這種錯誤。則刪掉MDK-ARM資料夾下的tmp資料夾。再重新編譯即可。

#删除tmp文件夹
rm -rf ./tmp

3.修改組合語言的編譯器為ARMClang整合的彙編編譯器

這是個警告,不影響正常使用,但是咱們儘量可以修改一下。

Warning: A1950W: The legacy armasm assembler is deprecated. 
Consider using the armclang integrated assembler instead.
0 Errors, 1 Warning

暫時沒找到解決方案

4.出現某些工具沒被下載的情況

按下面的arm tools然後進入下面的介面選擇對應版本,再點選update tool registry即可.(最常見的就是編譯器和偵錯程式的庫沒自動下載.)

如果不知道需要哪些工具,建議可以全部都選上最新版本.(親測全選最新版本是可以正常使用的)