STLINK下载失败可能的原因,实测有效

        最近在学习数字舵机时遇到了一个问题,和舵机控制本身关系不大:我使用keil5打开淘宝商家的例程代码,经过修改后,我把他烧录进入stm32f103c8t6,第一次烧录正常,随后我进行了代码优化,但是当我第二次烧录的时候,keil5软件显示没有连接stlink,我当时认为( 

),但是经过我的一一排查,这些都不是导致我烧录不成功的原因,于是我开始查看代码是不是有什么问题,比如引脚重映射啥的,确实如此,

GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable , ENABLE);

这一行代码使得引脚的映射 GPIO_Remap_SWJ_Disable SWJ 完全禁用(JTAG+SW-DP),我们用stlink下载程序时就是通过SWCLK与SWDIO这两个引脚,当这两个引脚被重映射为普通GPIO口时,我们就无法通过这两个引脚进行烧录了,这就是为什么我第一次烧录是正常的,之后的每一次烧录都不能正常烧录。
        那是不是只能用串口进行烧录了呢,就不能用stlink进行烧录了?当然不是,还是有解决方法的。查阅手册和资料可以发现,STM32上电复位瞬间I/O口的电平状态默认是浮空输入,我们可以在这段时间内进行烧录。具体操作:将GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable , ENABLE);这行代码删去或者注释掉,按住STM32的复位键,在keil5点击烧录,等待1s后松开复位键,即可正常烧录,可以多试几次。



        第一次写文章,其实也算不上什么文章,只为了将自己遇到并解决的问题记录下来,防止以后再次遇到时忘记,同时也尽可能为遇到相同问题的伙伴一个可以尝试的解决方法与思路,鉴于作者本身能力非常有限,有什么错误或者问题欢迎评论区留言,我们一同进步。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
STLINK下载连接失败原因可能有几种可能性。首先,可能是由于ST-LINK的驱动没有正确安装。您可以尝试安装ST-LINK Utility及其驱动来解决这个问题\[2\]。其次,可能是由于开发板上原来存储的程序占用了相关引脚,导致ST-LINK无法连接。您可以将开发板上的BOOT0和BOOT1引脚都置高,然后使用ST-LINK Utility连接并擦除片内程序。然后断开连接,将BOOT0和BOOT1引脚都置低,再次连接,就应该可以成功连接到ST-LINK Utility\[2\]。最后,您还可以参考一篇博客文章,其中提供了解决"Error: Flash Download failed - Target DLL has been cancelled"错误的方法\[3\]。希望这些解决方法能够帮助您解决STLINK下载连接失败的问题。 #### 引用[.reference_title] - *1* *2* [ST-LINK V2无法连接和下载失败原因解析](https://blog.csdn.net/STM89C56/article/details/124275032)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [GD32F470VIT6使用STlink下载失败](https://blog.csdn.net/weixin_44047173/article/details/130748121)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值