[STM32F1] W25Q16 写保护后如保解除?

[复制链接]
 楼主| supernan 发表于 2022-9-3 13:02 | 显示全部楼层 |阅读模式
W25Q16 写保护后如保解除?
 楼主| supernan 发表于 2022-9-3 13:07 | 显示全部楼层

大致如下:
write_enable()
{
    cs = 0;
     write_byte(0x06);
    cs = 1;

}
write_disbale()
{
    cs = 0;
     write_byte(0x04);
    cs = 1;

}

write_protect()
{
    cs = 0;
     write_byte(0x01);
     write_byte(0x1c);//保护全部   BP2 =1, BP1=1, BP0 =1
    cs = 1;
}

write_unprotect()
{
    cs = 0;
     write_byte(0x01);
     write_byte(0x00);//解除保护
    cs = 1;
}


大概的函数如上,现在是这样,不加写保护的话,数据是非常正常的,可读可写可擦
现在改成,如下所示后,包括擦除函数也是,前加了解除保护,后加了保护后,变成可读不可写不可擦
大概意思就是想在写数据或擦数据写先解除保护,操作完后再加上保护,  写保护与解除保护有问题词吗??
 楼主| supernan 发表于 2022-9-3 13:09 | 显示全部楼层
write_data()
{
write_enable();
write_unprotect()
写数据,略
write_protect()
write_disbale()
}
jlyuan 发表于 2022-9-3 13:15 | 显示全部楼层
看看WP管脚的状态
dingy 发表于 2022-9-3 13:17 | 显示全部楼层

通常情况下WP都是被拉高的
pengf 发表于 2022-9-3 13:22 | 显示全部楼层
你这个程序时序有点问题吧
 楼主| supernan 发表于 2022-9-3 13:22 | 显示全部楼层
换个新的。
jiaxw 发表于 2022-9-3 13:25 | 显示全部楼层
或者看看能否格式化。
huangchui 发表于 2022-9-3 13:28 | 显示全部楼层
我把407也给弄的写保护了
jiajs 发表于 2022-9-3 13:31 | 显示全部楼层
我也很关心这个问题
zwll 发表于 2022-9-3 13:40 | 显示全部楼层
是不是所有的都是一个道理啊
 楼主| supernan 发表于 2022-9-3 15:03 | 显示全部楼层
搞定了,呵呵,犯了低级错误…多谢各位
eefas 发表于 2022-9-5 14:02 | 显示全部楼层
你把SRP[1:0]設成00, 當然WP就失去作用了.
mmbs 发表于 2022-9-7 17:27 | 显示全部楼层
这个还会被写死吗?
primojones 发表于 2022-9-7 19:59 | 显示全部楼层
通常使用时芯片端口WP接地保护。
Henryko 发表于 2022-9-11 21:57 | 显示全部楼层
是不是时序问题?
一只眠羊 发表于 2022-9-23 02:19 | 显示全部楼层
正常来说是可以用外部电平操作来实现的

失物招領 发表于 2022-9-23 02:41 | 显示全部楼层
这个问题还没遇到过的,你可以试试查一下手册,看看

温室雏菊 发表于 2022-9-23 06:03 | 显示全部楼层
换一个芯片吧,解除很麻烦的

白马过平川 发表于 2022-9-23 06:25 | 显示全部楼层
你看看手册,是不是有说明将那个引脚电平配置一下,就能解除写保护啊

您需要登录后才可以回帖 登录 | 注册

本版积分规则

730

主题

10412

帖子

6

粉丝
快速回复 在线客服 返回列表 返回顶部