問題記錄:
我使用的是STM32F407,Keil的版本是MDK-RAM_v5.25.2,然後下載程序的時候老是出現JLINK INFO的字樣,如下:
- JLink Info: Reset: Reset device via AIRCR.SYSRESETREQ.
- JLink Info: Reset: Halt core after reset via DEMCR.VC_CORERESET.
並且仿真的時候會出現The connected J-Link is defective,Proper operation cannot be guaranteed…的彈窗。
解決:
上網查了一些資料,發現是V5.25 KEIL默認安裝高版本的J-Link驅動,與我們使用的J-Link不匹配造成的,具體做法如下:
在之前KEIL的安裝目錄下(默認C:\Keil_v5\ARM\)找到Segger(調試工具),然後用V4.90安裝目錄下(默認C:\Program Files (x86)\SEGGER\JLink_V490)的文件進行替換即可。
但是替換之後又出現了新的問題,下載完程序後出現
**JLink Warning: Mis-aligned memory write: Address: 0x20000000, NumBytes: 2, Alignment: 2 (Halfword-aligned)的錯誤
網上推薦的方法是重裝MDK,還有一種方法,直接覆蓋c:\Keil_v5\ARM\segger(Keil安裝目錄)下的JL2CM3.dll,只要使用老版替換即可。參考方法