打印
[STM32H7]

stm32h7芯片上锁,解除flash读保护状态

[复制链接]
466|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
现象
给芯片下载程序的时候,keil读取不到芯片,首先排查供电是否正常,烧录管脚接线是否正确,检查都无问题。考虑是芯片上锁了,flash进入到读保护状态。

解决办法
下载ST官方的ST-LINK Utililty软件
将芯片的四个管教与ST-LINK下载器接好,打开软件,点击connect,提示连接以后,读取到芯片的信息以后,下载一个已经编译好的hex文件,program进去。下载后,芯片可以正常读取。



未配置烧录管脚
使用stm32cubemx,弱没有配置serial wire在第一识别芯片以后也会让新芯片上锁,也可以使用以上方法解锁。



————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_44333690/article/details/145923796

使用特权

评论回复
沙发
tpgf| | 2025-4-9 12:17 | 只看该作者
是否考虑可以通过软件代码进行解锁的操作呢

使用特权

评论回复
板凳
flycamelaaa| | 2025-4-9 12:32 | 只看该作者
会不会擦除整个 Flash。

使用特权

评论回复
地板
yangjiaxu| | 2025-4-9 14:32 | 只看该作者
解锁一般都可以用ISP烧个简单的程序解决,如果不可以ISP的话,就用jlink试试解锁,实在不行,换芯片吧

使用特权

评论回复
5
dongnanxibei| | 2025-4-10 10:42 | 只看该作者
我有个开发板芯片被锁,不知道如何解。

使用特权

评论回复
6
磨砂| | 2025-4-11 17:18 | 只看该作者
在软件界面中找到“Option bytes”或相关设置选项,将读保护级别设置为“Level 0”,然后点击“Program”或“Apply”按钮,软件会自动将新的设置写入芯片,解除读保护状态

使用特权

评论回复
7
晓伍| | 2025-4-12 09:49 | 只看该作者
在代码中调用[size=0.875]FLASH_Unlock()函数,解锁Flash控制器,以便进行后续操作

使用特权

评论回复
8
八层楼| | 2025-4-12 12:05 | 只看该作者
FLASH_OBProgramInitTypeDef OptionsBytesStruct;
OptionsBytesStruct.OptionType = OPTIONBYTE_RDP;
OptionsBytesStruct.RDPLevel = OB_RDP_LEVEL_0;
HAL_StatusTypeDef status = HAL_FLASHEx_OBProgram(&OptionsBytesStruct);
if(status == HAL_OK){
    // 操作成功
}else{
    // 处理错误
}


使用特权

评论回复
9
观海| | 2025-4-12 14:37 | 只看该作者
为了防止误操作,在完成读保护解除后,可以再次调用[size=0.875]FLASH_Lock()函数锁定Flash控制器

使用特权

评论回复
10
guanjiaer| | 2025-4-12 16:57 | 只看该作者
可以使用ST-LINK Utility软件进行解锁

使用特权

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

本版积分规则

37

主题

140

帖子

0

粉丝