打印
[STM32F1]

W25Q16 写保护后如保解除?

[复制链接]
588|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
supernan|  楼主 | 2020-8-15 21:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
W25Q16 写保护后如保解除?

使用特权

评论回复
沙发
huwr| | 2020-8-15 21:55 | 只看该作者
楼主程序可以公开吗?贴程序看下吧,这么说看不出什么原因

使用特权

评论回复
板凳
supernan|  楼主 | 2020-8-15 21:59 | 只看该作者

大致如下:
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|  楼主 | 2020-8-15 22:04 | 只看该作者
write_data()
{
write_enable();
write_unprotect()
写数据,略
write_protect()
write_disbale()
}

使用特权

评论回复
5
bqyj| | 2020-8-15 22:45 | 只看该作者
看看WP管脚的状态

使用特权

评论回复
6
stly| | 2020-8-15 22:48 | 只看该作者
通常情况下WP都是被拉高的

使用特权

评论回复
7
dingy| | 2020-8-15 22:52 | 只看该作者
你这个程序时序有点问题吧

使用特权

评论回复
8
supernan|  楼主 | 2020-8-15 22:56 | 只看该作者
换个新的。

使用特权

评论回复
9
liuzaiy| | 2020-8-15 23:06 | 只看该作者
或者看看能否格式化。

使用特权

评论回复
10
ousj| | 2020-8-15 23:09 | 只看该作者
我把407也给弄的写保护了

使用特权

评论回复
11
morrisk| | 2020-8-15 23:13 | 只看该作者
我也很关心这个问题

使用特权

评论回复
12
kangzj| | 2020-8-15 23:16 | 只看该作者
是不是所有的都是一个道理啊

使用特权

评论回复
13
supernan|  楼主 | 2020-8-15 23:20 | 只看该作者
搞定了,呵呵,犯了低级错误…多谢各位

使用特权

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

本版积分规则

730

主题

10412

帖子

6

粉丝