我有一个外部闪存,通过 SPI(双路而不是四路)连接到我的 STM32。 readID (JEDEC) 等初始通信正在运行。
我将状态寄存器从 QUAD 更改为正常 SPI,这应该是持久的,但在下一次尝试时会再次设置。
我的问题是写入、擦除不起作用。每次尝试从任何地址读取时,都会从闪存返回 readID 数据 0x(9d 60 18) 并填充提供的数据数组。
有人有使用这种类型闪光灯的经验吗?
致以诚挚的问候!
罗伯特
硬件答案:
当您从四路模式更改为双路/串行模式时,其他数据引脚将恢复其之前的功能。 其中之一是写保护。 如果您想使用双模式,则需要以正确的状态连接该引脚。 #WP(IO2) 必须为高电平才能启用写入。 我希望将此引脚设置为低电平甚至可以防止持续写入模式寄存器。
软件解决方法:
我希望您实际上不需要设置模式寄存器来禁用四模式。 由于每个命令都以串行发送的唯一字节开始,因此您仍然可以在启用四模式的情况下发送所有双命令和串行命令。 如果您不确定这些引脚的去向,请不要发送任何四路命令。