背景:一开始可以正常烧录,由于写了个文件的代码,编译正常,但是load的时候突然报错……后来换成了本来可以正常烧录的工程发现依然没办法烧录,遂明白自己把板子搞坏了……

错误提示:

Sequence : DebugDeviceUnlock -> CheckID
Context : Item #0: ::Line 11
Expression : “<username>\AppData\Local\Arm\Packs\Keil\STM32F3xx_DFP\2.1.0\Keil.STM32F3xx_DFP.pdsc”
E310 : Debug access failed - cannot read address 0xE00FFFE4 (accsize, ‘4’, AP ‘0x00000000’)
Cannot access Memory (@ 0x00000000, Write, Acc Size: 4 Byte)
Error: Flash Download failed - Target DLL has been cancelled

弹出这个错误的时候非常惊心动魄了,查了一圈唯一似乎可行的是外网的回答(一开始没看懂……操作了一遍发现不行真的慌死,因为看到其他答案有说解决不了让楼主节哀顺变的😂),喜提新单词” saviour “,所以确实不想搞硬件……我宁愿烧坏的不是板子而是我自己

下图是DFS解决过程(越来越慌的过程)
在这里插入图片描述
下面是我自己参考后成功的解决方案【中文博客,放心康

  • 首先,切换到正常的工程(原来导致load失败的工程千万不要再用啦,咱这是在修板子!),我们要做的是删除flash里面所有内容(之前代码有问题导致flash无法写入所以报这个错),需要长按开发板的RST键(复位键,我的是STM32F407ET6,总共四个按钮,其他板子可以参考对应手册)
  • 接着参考上述博客的内容,确保开发板正确连接,按照你自己的板子连接接口选择,比如JLink就是JLink的配置,这一步主要是确保开发板正确连接,排除电路等物理原因造成的load失败
    在这里插入图片描述
  • 其他设置保持原来即可,接着是Flash download选项改成这样,我们需要清空flash,设置好之后烧录文件”load“
    在这里插入图片描述
  • 这时候还有新的问题,那么参考这个”救世主“的发言即可(原答案链接
    在这里插入图片描述
  • 最后再次Load就成功啦!
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐