你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
watercici 发表于 2018-5-16 14:01 WP和HOLD硬件连接都是接的高电平,写使能就是单片机给flash发送一个0X06的指令,从机应该是没有回复的,但 ...
stm1024 发表于 2018-5-16 14:20 W25Q16 Flash似乎在写入数据之前需要将BLock或者Sector先格式化一下,直接写数据并不能将原始数据覆盖,你 ...
stm1024 发表于 2018-5-16 14:32 另外,这个芯片还带有Write Protect功能,检查一下,写数据之前, WP的状态
butterflyspring 发表于 2018-5-16 14:52 从你的分析仪来看,应该是flash的操作问题了,因为实际的返回就0x00.而且仅是read操作的,如果你读版本号是正 ...
anobodykey 发表于 2018-5-16 15:13 的确看你第二个波形是不对,那你试下这个代码 看下这个波形是否正确,如果还不行的话,实在想不出哪里出 ...
watercici 发表于 2018-5-16 15:20 好的,谢谢!麻烦您了
watercici 发表于 2018-5-16 17:14 我现在有一个迫切想解决的问题,就是您看的时序的那个问题,按说发了0X05读取状态值为0X03,说明总线忙, ...
anobodykey 发表于 2018-5-16 18:02 这个看时序你MISO口收到的状态字节是0X03,理应是不往下走的,那你可以在你代码的读取字节函数中增加打印 ...
watercici 发表于 2018-5-17 18:53 我今天弄了一天,我发现他能写进去,可是他是读的字节有问题,比如:时序上抓取的结果是发完读指令0X03之 ...
这个问题加了一个延时,莫名其妙的脉冲没有了,但还是写不进去,@anobodykey,您帮我看看吧
好的,谢谢!我看看
如果您说的这个写保护是指WP引脚的话,它一直都是高电平无效,还有我在写之前加的擦除,还是不行。我抓取的时序图发现擦除的好快,而且时序上有点问题,不知道擦了没有。我给您贴张图
我再看看程序吧
的确看你第二个波形是不对,那你试下这个代码
看下这个波形是否正确,如果还不行的话,实在想不出哪里出问题了就,你也对比下st自带的flash读写示例,看下是否正常
好的,谢谢!麻烦您了
不好意思,我试了你给的代码,还不行,上哪里找ST自带的FLASH 代码
我现在有一个迫切想解决的问题,就是您看的时序的那个问题,按说发了0X05读取状态值为0X03,说明总线忙,就不应该发下一个写使能指令,但是他却发了?还有就是在发写使能指令的时候,MISO上居然有数据,我在想是不是判断语句的问题,可是按照你发的例程改了之后,还是这样。我对照了ST自带的FLASH程序,我感觉整体都一样啊?我已经黔驴技穷了。。。。
这个图是在检测到总线忙的时候,居然发了读指令,而且在发读指令的时候,MISO上居然有数据
这个看时序你MISO口收到的状态字节是0X03,理应是不往下走的,那你可以在你代码的读取字节函数中增加打印信息把收到的字节输出,查看是否与波形图一致,还有就是在写入时必须得进行擦除操作,才能够执行正常的写入操作。你还可以使用库例程把IO口改成你现有的然后烧录,查看结果是否正常
你好,我加了printf和串口发送数据,这俩是先后分别都试了试,可是不行,会导致时序不对,且串口助手也收不到数据
我今天弄了一天,我发现他能写进去,可是他是读的字节有问题,比如:时序上抓取的结果是发完读指令0X03之后,读取的是0X55,0X55,但我读到的数据是0X00,0X55,如果我把我的存储空间增加一个字节,那么读取的就是0x00,0X55,0x55,这是说明我是写进去可,可是读的却出了问题,好像多了一个dummy字节似的
哦,那说明读写操作应该是正常的,那你换个地址测试下看看是否依然存在这个问题,或许是你代码逻辑上有所疏忽,程序中读到的数据应该是与你逻辑分析仪抓到的数据一致才对。