本文主要是介绍STM32开发踩坑——使用仿真器对芯片进行写保护解除,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
STM32开发踩坑——使用仿真器对芯片进行写保护解除
成立这个文字专栏的目的是,记录自己在STM32嵌入式开发过程中,觉得值得记录的东西,例如方法、感悟,用来方便自己回顾。
文章目录
- STM32开发踩坑——使用仿真器对芯片进行写保护解除
- 参考资料链接:
- 图片示例:
- 操作解决方法:
- 扩展:
参考资料链接:
STM32的Flash写了保护怎么办?
图片示例:
在此情况下,使用程序烧写软件ST-LINK Utility连接STLink与目标板,会发现提示无法读取内存;
在此情况下,使用MDK烧写目标板,会发现提示Flash超时;
操作解决方法:
在使用STLink连接目标板的情况下打开程序烧写软件ST-Link Utility,在菜单栏的Target下选择connect,因为这时候Flash已经被锁住了,能看到如下图所示的错误提示。
下面来操作如何解除Flash保护。
1.请确保当前已经正确连接了STLink和目标板,在菜单栏Target里打开Option Bytes…选项,发现在这里Read Out Protection选项是Level 1,这个表示无法通过SWD读取STM32内部Flash的程序。
2.将Read Out Protection选项设置为Level 0,并点击Apply。 这时候Flash已经成功解锁了,内部Flash已经被擦除了,如下图红框中所示。
3.完成以上步骤之后,在菜单栏Target下选择Disconnect断开与目标板连接。重新进入MDK,可以正常对目标板烧写程序了。
扩展:
通过ST-Link Utility来设置Flash保护
在菜单栏Target里打开Option Bytes…选项,可以看到下面有Flash sector protection选项。选择Select all之后,发现所有Page的Protection项都已经变成Write Protection了,只要选择Apply选项就可以对Flash进行写保护,如上图所示。
这篇关于STM32开发踩坑——使用仿真器对芯片进行写保护解除的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!