1
似乎无法写入SPI Flash
好吧,我已经坚持了一段时间,目前大概需要2-3周。我只是不确定自己在做什么错。我正在尝试对此spi flash部分进行写操作,现在我只是在运行例程来擦除,写和读以尝试隔离它,但到目前为止还算不上什么。当然,我已经解决了很多错误。 无论如何,我都将WP线绑在板上,并且将时钟频率降低到200khz,然后运行擦除例程,它看起来像这样: 首先,我仅检查ID以进行调试,即9F命令,然后使用06命令设置WREN,将C7整个芯片擦除,然后使用05检查状态位,这很明显。这东西的芯片擦除时间只有35ms。 现在,我重新加载代码并尝试写: 首先,我将WREN设置为06,检查状态以确保WREN设置为05,然后将页面编程命令02发送到地址0x000000。您可以看到,我正在将Deadcafe写为前几位。同样在此处未显示的是写入完成(一页或256字节)后,我发送了0x04命令来禁用WREN。我观察到了这一点,并且确实将页面缓冲区的最后四个字节设置为0xAA,0x55、0xAA,0x55,并且在CS变高之前我就看到了它们。 现在,停止重新加载代码并尝试运行读取周期: 发送0x03作为读取命令,发送0x000000作为地址,然后...从设备返回所有0xFF。 我可以看到设备响应我的读取ID并设置了WREN命令,因此我知道它可以听到我的声音并且可以响应。我目前不知道我在做什么错。我想我将重新阅读数据表,并尝试一些尝试,但是如果有人有任何见解,我将不胜感激。这将是又一个令人沮丧的周末,正在研究这个问题。