32位MCU J-Link使用问题汇总

在我们使用J-Link对MCU进行仿真调试时,通常会遇到设备无法识别或识别设备无法下载等问题,下文是我对遇到问题的汇总及解决方案。

J-Link问题主要分为两类:一、首次下载无法识别设备或识别设备无法下载;二、二次下载无法识别设备

一、首次下载无法识别设备或识别设备无法下载

1、识别设备无法下载

该情况可能是没有安装对应芯片pack包或没有正确选择芯片内核类型导致的,正确安装pack包并选择内核类型,如下图(以CH32F103为例)

2、无法识别设备

检查接线是否存在问题,当使用SWD下载方式时,注意接VCC、GND、SWCLK、SWDIO四根线。

注意J-Link版本问题,有可能J-Link版本过低导致无法识别芯片设备

 

二、二次下载无法识别设备

1、移植或下载程序后导致二次下载无法识别设备,检查移植程序时钟和当前芯片时钟是否匹配,若不匹配,或可导致无法识别设备。当遇到该情况时,解决方法如下:

a、可将BOOT0接VCC,或可识别设备,选择全擦,下载正确设备即可。

b、可使用ISP工具下载程序,下载成功后可再次使用J-Link下载

2、当程序含有执行睡眠操作时,若芯片睡眠,内核时钟关闭,可导致SWD无法通讯。当遇到该情况时,解决方法如下

a、可将BOOT0接VCC,或可识别设备,选择全擦,下载正确设备即可。

b、可使用ISP工具下载程序,下载成功后可再次使用J-Link下载

3、在使用STM32CubeMX编写程序下载时

注意配置STM32CubeMX SYS->Debug为Serial Wire:

重新生成工程, 编译, 仍然设置为SW口下载调试, 然后按下STM32的复位按键,保持按住复位按键, 点击Keil的下载按钮, 此时弹出窗口:

点YES, 约1s后松开复位按键, 此时应该可以下进去程序了. 如果失败, 可以多尝试几次.

 

posted @ 2021-11-16 13:38  ZaiLi  阅读(449)  评论(0编辑  收藏  举报