【華爲雲技術分享】使用keil5打開GD32F450i的MDK項目出現的問題以及J-Link無法燒錄程序對應的解決方案

問題1:使用keil5打開後綴名爲.uvproj的MDK項目出現無法打開的問題

image.png

對應解決方案:上述問題主要是keil的版本不兼容問題造成,因此可以直接將項目名稱後綴名稱由.uvproj更改爲.uvprojx即可,這樣使用keil5.28即可打開。

問題2:之後直接點擊編譯,出現34個錯誤,編譯不成功,具體錯誤如下所示:

..\..\..\Library\Firmware\CMSIS\GD\GD32F4xx\Include\gd32f4xx.h(257): error:  #5: cannot open source input file "core_cm4.h": No such file or directory

 #include "core_cm4.h"

image.png

對應解決方案:該問題主要是我們找不到頭文件,這裏直接添加對應的文件名即可,這裏添加的是core_cm4.h。

點擊keil5的工具欄中的options to target按鈕,選中C/C++選項,添加對應的頭文件目錄,此處注意要明確到具體的文件所在的目錄文件夾,不能爲上一層文件夾。

1png.png

1png.png

添加到對應的文件即可,編譯成功,出現類似的問題只需要添加對應的文件即可,上面就是添加的具體步驟。

問題3:安裝J-Link驅動後,依然無法燒錄程序,報錯Flash Download failed “Cortex-M4”以及The connected J-Link is defective。。。

對應解決方案:前者通過在keil中配置Jlink即可,後者由於keil5.25及更高版本默認安裝高版本的J-Link驅動,需要將keil5.25自帶的J-Link.exe文件(默認C:Keil_v5\ARM\Segger)替換爲自己安裝目錄下的J-Link.exe文件即可。同時要注意J-Link驅動的版本,可能需要更低級別的版本驅動。

問題4:燒錄的時候**JLink Warning: Mis-aligned memory read: Address: ......”

對應解決方案:將C:Keil_v5\ARM\Segger目錄下的JL2CM3.dll文件用更低版本的JL2CM3.dll文件進行替換即可。文件見附件

問題5:出現Error Flash DownLoad failed - "Cortex-M4",如果有人出現這種奇葩的錯誤可以嘗試以下的方式。

image.png

對應解決方案:個人覺得這個有點奇怪,顯示的應該是Jlink配置的問題,打開查看一下自己的Jlink設置,查看一下Reset狀態是否是Normal,如果是也點擊一下,具體如下圖所示。點擊options for Target。。。之後點擊Debug→Settings→Reset選擇Normal即可。

1572854859346557.png

JL2CM3.rar

作者:星辰27

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章