打印

请教一个关于stm32 用JLINK烧写的问题

[复制链接]
18230|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
badchild|  楼主 | 2009-11-25 21:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
keil MDK V3.7+JLINK V8,cpu为STM32F103ZE,程序下载时提示: Flash download failed-"Cortex-M3"。
这是什么原因呢?
沙发
21ele| | 2009-11-29 22:11 | 只看该作者
看来这真的是个普遍问题,不知为什么不能引起版主注意呢?

我被这个问题折磨了一个星期了。今天终于有了进展!!

使用特权

评论回复
板凳
21ele| | 2009-11-29 22:39 | 只看该作者
本帖最后由 21ele 于 2009-11-29 22:57 编辑

我一直是用mdk + ulink2 , 用的好好的,前段时间有几个星期没有用,再用发现ulink2坏了,usb无法找到设备,找买家,已经过期了,买家让我短路三接管ce, 结果真的有找到设备了,但是恶梦开始了,就是Flash download failed-"Cortex-M3"提示,还有其他提示,反正是无法编程。

但是当我拿出最早的一批板子时,发现其中一块竟然是可以编程仿真的。新板子里也挑出了一块可以用的。

同时,我新买的jlnk v8 也到了,情况也差不多,大部分不能用,个别可以仿真。

于是上网搜索,能找的方法都试了,都没效果。

今天晚上的时候,看开始里jlink v8软件时竟然发现,有一个STM32解锁的小工具,一运行,提示已经解锁。再试,ulink jlink 都可以编程仿真了!!

不知道解锁的是什么锁,jtag引脚禁用的锁? 我一直以为全片擦除就可以恢复jtag引脚了。  

真的不知道这个stm32的小秘密呢还是我不知道的什么特性呢。

使用特权

评论回复
地板
21ele| | 2009-11-29 23:26 | 只看该作者
见鬼了,刚才解锁可以下载仿真的,又不行了。看来解锁也不是解决的办法。

使用特权

评论回复
5
mcuisp| | 2009-11-30 04:22 | 只看该作者
擦除读保护,呵呵

使用特权

评论回复
6
gxgclg| | 2009-11-30 09:32 | 只看该作者
出现这种问题,确实用的很郁闷,香主应该出来解答下

使用特权

评论回复
7
vigia| | 2009-11-30 10:35 | 只看该作者
TO:3楼,那个解锁应该是解除芯片的读保护,和JTAG脚无关。你的芯片加了读保护吗?

TO:6楼,出现这样的问题,有很多种可能。
比如板子的设计问题,芯片不能正常运行,自然不能烧录flash了。
或者是烧录时,出了问题。STM32烧录flash的机制是先向RAM写一段flashloader,然后运行这段flashloader,完成对flash的烧录。在运行flashloader的过程中,如果RAM段的数据被破坏了,那flashloader的运行就不可能成功,烧录flash也不可能成功。至于RAM段数据被破坏的原因,比如你先前烧录的代码使能了DMA,那么一旦上电了DMA就开始运行,向RAM某个位置不断的填数据。
总之,很多可能,要具体问题具体分析。

一般出现了不能烧录,把BOOT跳到RAM启动,比较容易分辨出问题。

使用特权

评论回复
8
鸥信电子| | 2010-1-28 21:18 | 只看该作者
使用Setup_JLinkARM_V410f,配合jlink就可以了

使用特权

评论回复
9
无冕之王| | 2010-1-29 14:55 | 只看该作者
香主给详细解答下吧

使用特权

评论回复
10
香水城| | 2010-1-29 14:57 | 只看该作者
看我的博客吧,我已经解释了无数遍:调试器不能连接到STM32的问题与解决办法

使用特权

评论回复
11
gxgclg| | 2010-1-29 21:39 | 只看该作者
嗯,博客里讲的很清楚

使用特权

评论回复
12
hnsw| | 2011-7-4 14:09 | 只看该作者
mark~~~~

使用特权

评论回复
13
jiaxinhui| | 2011-7-4 22:53 | 只看该作者
你把下载方式,选择准确了吗?

使用特权

评论回复
14
zgl_bjx| | 2012-8-18 18:04 | 只看该作者
我也遇到了同样的问题,不过经过检查验证解决了。
在一开始安装JLINK时,只用来下载程序,没有考虑在线仿真因此把它的目标接口模式选择为SWD。后来想用JLINK在keil环境下进行在线仿真,按照我的开发板参考手册设置option for target-->debug-->settings-->port设置为JTAG模式,这样再点击调试按钮时就出现了**JLink Warning: CPU core not found.这句。正确的设置方法是把上面路径中port设置为SWD模式,这样就能正常调试啦 。 我想如果两边都设置成JTAG模式应该也可以吧 ?希望大家多多验证。

使用特权

评论回复
15
秋风式街球| | 2012-9-7 00:59 | 只看该作者
受教了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

5

帖子

1

粉丝