MDK 下载程序出现no target connected 导致下载失败

简介: MDK 下载程序出现no target connected 导致下载失败

作者:良知犹存

转载请注明作者来源

围观欢迎添加WX:Allen-Iverson-me-LYN

   这几天用Keil uVision调试STM32时候,刚开始还是正常下载,后面修改调试之后,再继续下载程序,无论是Jlink还是stLink发现都无法下载程序。在Debug的Setings中SW Device也显示无法找到芯片。分析参考一些文章,可以判定有以下几种情况:

1.下载器驱动损坏

2.下载器损坏或者接线松动

3.MCU的下载口被错误配置

4.芯片被写保护了

下面是我遇到的情况:

4edc953e2c684bbe819ffa954c899c08.png4edc953e2c684bbe819ffa954c899c08.png

  程序第一次可以下载成功,可是再次下载程序便失败了,并且经过第一次下载进去的程序正常运行。我用一块开发板进行测试,最后发现是代码配置的问题,因为开发板对应外部的电路很齐全。经过测试我发现是程序经过调试修改,改变了SWDIO与SWCLK的下载口配置,导致程序下载进去后,下载口无法识别。

   确定了问题,我们就着手进行纠正了。第一步修改代码,保证重新下载进去的代码后续可以正常运行,并保证MCU FLASH持续被烧写;第二步在当下错误IO配置,进行其他方法下载。

第一步:恢复下载引脚配置

错误代码,使用“=”导致 PA12 PA13引脚被进行设置为 04edc953e2c684bbe819ffa954c899c08.png

解决方法:

修改程序为       GPIOA->MODER | =

第二步:利用RESET引脚进行复位下载

解决方法:

将RESET 引脚接地并同时下载程序即可解决此问题。

 

实际下载时候RESET引脚接地效果如下图所示:

4edc953e2c684bbe819ffa954c899c08.png4edc953e2c684bbe819ffa954c899c08.png

下载成功

4edc953e2c684bbe819ffa954c899c08.png

目录
相关文章
|
10月前
|
C++
[c++][记录]编译libusb-win32过程
[c++][记录]编译libusb-win32过程
157 0
|
10月前
|
安全 Go 数据库
Navicat-Cracker NavicatCrackerDlg.cpp:332 -3All patch solutions are 解决Navicat 162版本注册问题的方法与分析【详细步骤】
Navicat-Cracker NavicatCrackerDlg.cpp:332 -3All patch solutions are 解决Navicat 162版本注册问题的方法与分析【详细步骤】
599 0
|
3月前
报错:Keil5执行文件之后显示Target not created
报错:Keil5执行文件之后显示Target not created
660 0
|
11月前
|
Python
pyinstaller打包exe后不能运行报Failed to execute script XXXX问题分析与处理
pyinstaller打包exe后不能运行报Failed to execute script XXXX问题分析与处理
355 0
|
iOS开发
Xcode如何编译Debug版和Release版​
Xcode如何编译Debug版和Release版​
|
安全
[经验]使用Keil MDK+Jlink-OB下载失败的解决办法
[经验]使用Keil MDK+Jlink-OB下载失败的解决办法
492 0
[经验]使用Keil MDK+Jlink-OB下载失败的解决办法
|
iOS开发 MacOS
全网首发:(解决办法)MAC OS Xcode给应用设置沙箱(Enable App Sandbox)之后,运行报错Illegal instruction: 4
全网首发:(解决办法)MAC OS Xcode给应用设置沙箱(Enable App Sandbox)之后,运行报错Illegal instruction: 4
716 0
全网首发:(解决办法)MAC OS Xcode给应用设置沙箱(Enable App Sandbox)之后,运行报错Illegal instruction: 4
|
内存技术 芯片
MDK st-link下载STM32程序出现Internal command error和Error:Flash download failed. Target DLL
MDK st-link下载STM32程序出现Internal command error和Error:Flash download failed. Target DLL   是因为目标板的芯片处于休眠的状态,在尝试连接目标板时候也会出现报错Internal command ...
3614 0
|
Shell C++
mac 使用终端用code ./打开项目方法
mac 使用终端用code ./打开项目方法
384 0