RT1052驱动镁光QSPI Flash的疑问
各位大神:各位大神,有使用过镁光的QSPI Flash的么?我使用的型号为MT25QU256ABA8ESF,驱动过程中发现配置Quad Mode一直不成功!
此芯片有两种方式配置进入Quad mode,一种是写non-volatile register,另一种是写enhance volatile register。
我使用第一种写non-volatile register后,发现所有对flash的操作都无法正确了,即使读取flash ID也不成功,然后non-volatile register是掉电不丢失的,写了3块板子情况都是这样,没写寄存器前,读取flash ID什么的都是正常的(单线方式),写完之后发现,不管使用单线,2线,4线模式,都无法正常了,写个寄存器能写废掉flash芯片?不至于吧。
接下来不敢写non-volatile register了,使用第二种方式,写enhance volatile register,这个是掉电就丢失的,不用担心写错,但是写的过程中发现写完后读取发现值没变,且状态寄存器中所有位都为1了(正确的话应该为0),写寄存器的操作都是:使能写操作 -- 写寄存器 --判定是否busy位自动清除。测试程序使用的就是RT1050官方提供的nor flash例程,只是按照flash手册修改了LUT表而已。
跪求大神解释!
另一个问题就是突然想到的关于使用nxp发布的关于使用flashloader工具配置寄存器的,官方提供了
program_flexspinor_image_qspinor_status_reg1_bit6.bd
program_flexspinor_image_qspinor_status_reg2_bit1.bd
program_flexspinor_image_qspinor_status_reg2_bit7.bd
。。。等等配置flash的,在配置进入quad mode中也就如下这些
# bit Quad Mode Entry Setting
# 0 - Not Configured, apply to devices:
# - With Quad Mode enabled by default or
# - Compliant with JESD216A/B or later revision
# 1 - Set bit 6 in Status Register 1
# 2 - Set bit 1 in Status Register 2
# 3 - Set bit 7 in Status Register 2
# 4 - Set bit 1 in Status Register 2 by 0x31 command
这些真能覆盖所有型号flash么?之前调试过ISSI的flash,进入quad mode是写状态寄存器,写值0x40 (reg1_bit6),默认为值0,
现在我使用镁光这个flash芯片,是在enhance volatile register,第7bit ,写值为0x7f(默认bit位值为1),是否说配置的时候使用program_flexspinor_image_qspinor_status_reg2_bit7.bd就好?确定不会将其他位写0了?求大神指点,谢谢!
帮顶下 可以试试这个:https://github.com/JayHeng/nxp-sec-boot-ui,希望你们喜欢 请问您之后是怎么解决的?我也遇到这个问题了 请问您之后解决了吗?怎么解决的?我也遇到同样的问题
页:
[1]