作者david051576 (阿绿)
看板Electronics
标题[问题] STM32F407板子erase chip问题
时间Sat Jul 30 14:41:29 2016
这几天和朋友一起玩这块板子,
不慎erase chip (mass erase),read protectrion是在 Level 0的状态。
目前正在想办法使他回复正常,但是碰到一些问题。
因为把flash memory全部erase掉了,所以我们改用boot from system memory,之後再接
回boot from flash memory。这样好像才可以顺利开机。
开机之後,可以烧录东西进去,但是却无法执行。
想请问一下有无熟悉STM32Fxx系列的玩家可以替我们解惑,该如何让他回归正常,感激不
尽
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 59.115.189.40
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Electronics/M.1469860894.A.78C.html
※ 编辑: david051576 (59.115.189.40), 07/30/2016 14:42:06
1F:推 porpoisewise: 不能执行可能是起始位置有误或是code有问题07/30 16:39
了解,我们会再检查一下
2F:推 god145145: 正常是指?烧Demonstrations跟随便一个Examples都不行?07/30 19:50
後来的情况我们修正步骤後,是厂商给的Examples烧的进去(LED会亮,但是板子上的萤幕
没有东西)
他们这个example应该是要两个都有东西,想请问一下除了他们的code错误外,萤幕坏掉
外,是否还有其他可能。
很怕是我们删掉什麽原本的设定,导致之後出现不预期的问题。
3F:推 jfsu: 我不熟STM32xx,但我以一个Flash memory circuit RD来回答07/30 22:15
4F:→ jfsu: flash memory有protect sector/block,如果你的boot code07/30 22:15
5F:→ jfsu: 是放在这个受到保护的区块,那开机时可以指定这个位址给它07/30 22:16
6F:→ jfsu: 因为一般的Chip ERS是无法抹除掉这个区块,如果你下抹除07/30 22:17
7F:→ jfsu: 该区块的指令。 如果你的boot code或是资料是放在其他区域07/30 22:17
8F:→ jfsu: 那就会随着chip erase而被清掉(变成All "1")。07/30 22:18
9F:→ jfsu: 目前的情况是可以program进去,却无法执行,表示资料读不出07/30 22:19
10F:→ jfsu: 来,或是读到错的资料。你确定有给正确的address吗?07/30 22:19
感谢j大回覆,目前的情况如上。
传入的address是对的(有用st-link检查过)
另外想请问一下,data所谓的boot from flash或是boot from System memory的实际意义
是否是
"将板子上某个位置的boot loader烧录到这些地方,然後再做执行的动作"
11F:推 yudofu: 感觉是没有回到boot from flash07/31 01:12
感谢y大回覆。目前情况如上。
※ 编辑: david051576 (223.141.94.43), 07/31/2016 20:52:41
12F:→ narcissusli: 那就换一片版子试试看.... 我通常1次买2片 07/31 21:48
13F:推 god145145: 你烧这块板原厂提供的demo就会有萤幕了 07/31 21:57
14F:推 yudofu: 应该是先boot from memory、烧flash之後再boot from flash 08/01 21:19
15F:→ yudofu: 有确认过内部flash烧录跟bootup的位址吗? 08/01 21:19