完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
阅读芯片文档
文档中硬件写入保护有这样的描述: WPEN位通电时的出厂默认设置为“0”,这将在通电后禁用WP#的写入保护功能。WPEN是一个非易失性位;一旦该位设置为“1”,WP#通电后继续启用WP#引脚的写保护功能。WP#引脚仅可保护 块保护寄存器和配置寄存器 不发生更改。 IOC位优先于配置寄存器中的WPEN位。当IOC位为“1”时,WP#引脚的功能被禁用,WPEN位没有任何功能。当IOC位为“0”,WPEN为“1”时,将WP#引脚拉低会禁止对写入块保护寄存器的操作。 如果WP#拉低(硬件上连接了地),IOC为“0”,WPEN设置成“1”了,我如何改WPEN位? 我知道通过WRSR指令给配置寄存器新值,我试过发送该命令,抓取的该指令波形也正常,读出配置寄存器(RDCR)仍然为0x88(见图)。并且发送RBPR指令读取块保护寄存器串口显示0xFFFF FFFF FFFF FFFF 5555(保护位全置为“1”了) ,抓取的波形图也是对应的波形。 可如图(写保护状态图)配置寄存器是处于保护状态的,WBPR指令是不允许执行的。 综上:相当于我锁住了flash,写也写不进,擦也擦不了。 目前有一个思路是硬件上直接将WP引脚拉高,但这个可能很麻烦。所以,大家有什么别的办法是在软件上可以解除这种保护,让我可以更改配置寄存器或者块保护寄存器中的保护位取消保护? 另外我想吐槽一下这种写入后就不能更改的设计(可能有些地方我根本不懂),这初始化配错了就得重新换一个吗?
|
|
相关推荐
1个回答
|
|
大家注意配置这个芯片的时候,配置寄存器第八位WPEN千万别写入1。如果写入1了,直接改硬件把WP#引脚拉高;软件程序上找很久没找到好办法,但如果块保护寄存器的保护位为0的话,写还是能写的。总之,芯片文档一定要去看。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
嵌入式学习-飞凌嵌入式ElfBoard ELF 1板卡-LCD显示图片编程示例之介绍mmap
238 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第二章 常用的C语言知识点
629 浏览 0 评论
【RA-Eco-RA2E1-48PIN-V1.0开发板试用】(第三篇)ADC采集+PWM输出
552 浏览 0 评论
《DNK210使用指南 -CanMV版 V1.0》第四十五章 人脸识别实验
552 浏览 0 评论
1074 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
11765 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 12:53 , Processed in 0.574168 second(s), Total 69, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号