我正在使用 SF32LB525UC6 芯片设计一块自定义电路板,目前需要通过 sftools 对板子上的 NOR 闪存进行烧录,以便运行我的第一个程序。但不幸的是,sftools 完全无法工作,在读取和写入时都会报错。
我的 Flash 芯片是 W25Q16RVXHJQ,看起来工作正常,因为我可以通过 SifilUARTServer 访问它,并且可以直接在 Ozone 中读写内存和寄存器。复位后内存数据也能正常保持。我不能直接写入内存,必须先在 Flash 芯片上置位 WREN,但我不认为这是异常行为。
使用 sftool 读取内存时无法成功,在进度条达到 100% 后会收到 CRC 超时错误。
写入内存也不成功,会报错:“protocol error: write flash failed to start at 0x12000000”。
目前我怀疑 RAM stub 可能对当前连接的 NOR Flash 类型不满意。我正考虑自己编写一个 stub 程序,以验证是否可以通过编程方式读写 Flash。但在动手之前,我想先请教一下您,是否了解这个 Flash 芯片可能存在什么问题?或者您是否有关于 RAM stub 的更多资料,比如它是如何构建和工作的?例如,它的源代码是否在某个地方可以获取?
提前非常感谢您的帮助。
