关于使用SWD下载时无法检测到STM32芯片问题的解决方案总结

本文详细总结了在使用SWD下载STM32芯片时遇到无法检测到芯片的问题及其解决方案,包括SWD线序、Jlink/Xlink故障、BOOT/RST电平、供电稳定性、芯片自锁和损坏情况的检查与处理方法。
摘要由CSDN通过智能技术生成

一、问题定位

1、SWD线序以及连接线本身通断的问题

2、Jlink/Xlink下载器本身的问题/JLink驱动安装问题

注意Jlink/XLink上的指示灯状态以及插入Jlink后keil是否有报错

3、BOOT引脚 / RST复位引脚的电平状态

正常的最小系统配置为:BOOT0和BOOT1引脚为低电平;RST复位引脚为高电平,复位按键按下为低电平。

4、最小系统的供电稳定性问题

正常最小系统供电为3.3V,典型值为3.23V-3.25V左右

5、芯片自锁(下载程序后自锁 / 误操作后自锁)

STM32单片机一般的连接方式是主闪存存储器flash启动模式,即BOOT0为0,这样在用JTAG或SWD写进程序时,如果该程序工程中芯片选型不正确或着程序中复用了JTAG或SW复用引脚导致程序执行后出现启动配置错误或者调试引脚被占用而引起的芯片锁死或Jlnk连接不上的问题
在这里插入图片描述
在这里插入图片描述

时钟配置问题:时钟频率设置太高,配置超出芯片主频工作范围,导致单片机自锁

程序跑飞:无限复位,无法正常启动

引用\[1\]:当我们使用STlink或者Jlink的SWDSTM32下载程序,通常会使用PA13和PA14两个引脚进行连接。然而,在某些情况下,我们可能会将这两个引脚复用为其他模式,导致再次使用STlink或者Jlink下载程序出现错误,提示未找到目标的STM32芯片。\[1\]引用\[2\]:解决这个问题的方法是在Jlink再次为STM32下载程序的一瞬间重启STM32,以确保代码在STM32执行到复用这条语句之前被下载进去。然而,重启间的把握是一个关键难点。如果重启间太晚,STM32尚未启动,Jlink将无法找到目标;如果重启间太早,两个引脚已经被复用,Jlink仍然无法找到目标。因此,重启间点的把握非常重要。\[2\] 综上所述,当使用STlink或者Jlink的SWD连接STM32,如果遇到无法找到目标芯片的错误,可以尝试在Jlink再次下载程序的一瞬间重启STM32,以确保代码在复用引脚之前被正确下载。然而,需要注意重启间点的把握,以避免过早或过晚导致无法连接到目标芯片。 #### 引用[.reference_title] - *1* *2* [STM32 SWD/JTAG引脚被占用 无法使用Jlink下载代码的解决方法](https://blog.csdn.net/qq_37500949/article/details/126868838)[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 ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值