我正在使用带有jn5148 MCU的m25p40闪存。在这个闪存的数据表中,写道:
擦除功能:
我在覆盖存储在一页扇区中的数据时遇到问题。那么,如何擦除一个页面,并在该页面中写入新数据?是否有任何解决方案可以擦除一页扇区,而不删除同一扇区的其他页面?
答案 0 :(得分:1)
使用PAGE一次可以将存储器编程为1到256个字节 PROGRAM命令。它被组织为8个扇区,每个扇区包含256个扇区 页面。每页的宽度为256字节。
虽然我不知道它是否真的有效,但我无法测试它,但我也发现有人已经这样做with an avr µC,如果你有一个示例函数write(address, word)
不想阅读页面程序序列(数据表第27页)并编写自己的程序。
答案 1 :(得分:0)
以下是m24p40
文档中引用的扇区擦除程序SECTOR ERASE命令将所选位内的所有位设置为1(FFh) 部门。在接受SECTOR ERASE命令之前,写一个WRITE 必须先前已执行ENABLE命令。写完之后 ENABLE命令已解码,器件设置写使能 锁存(WEL)位。通过驱动芯片进入SECTOR ERASE命令 选择(S#)LOW,然后是命令代码和三个地址字节 关于串行数据输入(DQ0)。该部门内的任何地址都是有效的 SECTOR ERASE命令的地址。 S#必须被驱动为低电平 整个序列的持续时间。在#之后必须将S#驱动为高电平 最后一个地址字节的第8位已被锁存。否则为 不执行SECTOR ERASE命令。一旦S#被驱动为高电平, 启动自定时SECTOR ERASE循环;周期的持续时间 是SE。当SECTOR ERASE循环正在进行时,状态 可以读取寄存器以检查正在写入的值(WIP) 位。在自定时SECTOR ERASE循环期间WIP位为1,并且是 循环完成时为0。在某些未指定的时间之前 循环完成后,WEL位复位。 SECTOR ERASE命令是 如果它适用于硬件或软件的扇区,则不执行 保护。
答案 2 :(得分:0)
您无法重写一页。你必须至少重写一个部门。 因此,如果您想要更改a.k.a在选择的扇区中的任何页面中重写至少一个字节,您可以执行以下操作: