STM32下载不成功问题汇总

在某宝上买了五个最小系统核心板是STM32F103C8T6的芯片,刚拿到手准备下载程序调试,上电后板子自带LED闪烁,这是商家自己下载的示例程序,说明芯片工作着,用KEIL4进行下载自己程序,把自己编译好的程序下载。用的JLINK的四线下载调试下载口,SW的调试接口,点击下载后发现擦除成功,下载失败,提示:

Load "..\\Output\\STM32-DEMO.axf" 
Set JLink Project File to "F:\文件\RFID\程序\电机\USER\JLinkSettings.ini"
* JLink Info: Device "STM32F103T8" selected (64 KB flash, 20 KB RAM).
 
JLink info:
------------
DLL: V4.56 , compiled Oct 22 2012 19:40:04
Firmware: J-Link ARM V8 compiled Nov 28 2014 13:44:46
Hardware: V8.00
S/N : XXXXXXXX 
Feature(s) : RDI,FlashDL,FlashBP,JFlash,GDBFull 
 
* JLink Info: Found SWD-DP with ID 0x1BA01477
* JLink Info: Found SWD-DP with ID 0x1BA01477
* JLink Info: TPIU fitted.
* JLink Info: FPUnit: 6 code (BP) slots and 2 literal slots
* JLink Info: Found Cortex-M3 r1p1, Little endian.
ROMTableAddr = 0xE00FF003
 
Target info:
------------
Device: STM32F103T8
VTarget = 3.300V
State of Pins: 
TCK: 0, TDI: 0, TDO: 0, TMS: 1, TRES: 1, TRST: 1
Hardware-Breakpoints: 6
Software-Breakpoints: 8192
Watchpoints:          4
JTAG speed: 500 kHz
 
Erase Done.
Programming Failed!
Error: Flash Download failed  -  "Cortex-M3"

弹出窗口提示:


下载不成功但是把原来的程序擦了,LED也不亮了,我的世界瞬间变暗了。想了想是不是这块板子的问题,懒得上万用表,直接下一块板子,把剩下的四个最小系统板都下载了都是这种情况,出厂的程序全成功擦除,但是自己程序下载不了,这次五个小板上的LED全灭了。开始百度找原因。

其中常见错误链接:http://www.stmcu.org/module/forum/thread-566492-1-1.html

http://www.elecfans.com/emb/danpianji/20120905287381_15.html

度娘的原因差不多都试过了但对我的板子没有作用,分析可能芯片原因,正好手头有这个型号的芯片,就拿风枪吹下来,换了个stm32,上电用jlink下载,心情异常激动啊,点击下载,成功了。果断给客服打电话,客服说联系技术人员,这一联系,没影了,还是自己动手解决吧,继续分析,把原因定位到芯片上了,可能是由于之前不当操作导致进入读写保护状态,导致无法擦写芯片,可以据说用jlink中Unsecure chip 选项就行了~~我用的是方式isp试的

这是STM32下载的三种方式 http://blog.chinaunix.net/uid-20788517-id-263475.html

我用的是其中的第二种 ,在用isp下载之前一定要把跳线BOOT1置0,BOOT0置1,BOOT具体功能:

BOOT1=x   BOOT0=0   从用户闪存启动,这是正常的工作模式。
BOOT1=0   BOOT0=1   从系统存储器启动,这种模式启动的程序功能由厂家设置。
BOOT1=1   BOOT0=1   从内置SRAM启动,这种模式可以用于调试。

用下载方式的第二种isp下载即串口下载,果然发现了问题,确实被保护了。看图真相


点击Remove protection那个解除保护即可。剩下的按照链接的做就行了。

boot0和boot1全跳到0;改用Jlink成功下载。剩下的几块都用isp下载后,也全好了。

浪费了一下午的时间,都是写保护惹的祸。晚上又是不眠之夜,还有很多code没写。

刚才看了有关文章不用isp方式解除写保护,用jlink就行,至于如何操作这个软件,看那个stm32的三种下载方式里的教程的链接。

前提是先 Connect 成功。怎么设置该软件的参数,看本文链接。如果连接不成功检查boot引脚。

Target->connect.这里要先连接板子才可以进行unsecure chip 操作.连接的时候我一开始连接不上,很郁闷.但是不小心把启动方的跳线冒弄掉了,却发现可以了.也就是说,我是在从片bootloader的启动方式下(即使用串口的那种方式)连接上的.连接上之后.targer->unsecure chip.提示成功.如图:


4.正常用Keil里的下载方式就可以下载了。


gpio_adc

2016.01.22

根据引用\[1\],当使用JLINK进行下载时,需要确保JLINK驱动已经成功安装,并且电脑能够正确识别JLINK设备。如果JLINK灯一直闪烁,表示驱动没有安装成功;如果JLINK灯不闪烁,表示驱动安装成功。 根据引用\[2\],在Keil MDK中添加芯片Device Pack后,会自动加载芯片对应的flash文件。如果无法加载flash文件,可以尝试将flash文件放到Keil安装路径下的ARM/Flash文件夹中。确保flash文件以.flm后缀结尾。 根据引用\[3\],使用软件DownLoader进行下载时,需要确保脱机设备通过USB线与电脑成功连接,并且软件设备处显示Downloader表示连接成功。然后选择对应的STM32芯片,打开要下载的HEX文件,选择好配置参数,最后点击编程。 根据提供的错误信息"Error: Flash Download failed - Could not load file 'E:\STM32pro\stm32program\led\Objects\led点亮.axf'",可能是下载过程中无法加载文件的原因。请检查文件路径是否正确,并确保文件存在。 综上所述,可能导致"Error: Flash Download failed - Could not load file 'E:\STM32pro\stm32program\led\Objects\led点亮.axf'"错误的原因有:JLINK驱动未安装成功、flash文件未正确加载、文件路径错误或文件不存在。请检查这些可能的原因并进行相应的修正。 #### 引用[.reference_title] - *1* *2* *3* [电子工程应用记录](https://blog.csdn.net/weixin_43559366/article/details/100929463)[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^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值