完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
您好,我有一个与这个线程类似的问题:http://www..hip.com/for./m908372.aspx在我的情况下,我可以使用0x5A命令读取SFDP签名。问题是我不能读取状态寄存器(CMD 0x05)或配置寄存器(0x35)。MISO线路保持很高。我试着在读之前使用ULBPR(全局块保护解锁),但它没有帮助。硬件配置是正确的,因为我可以做SFDP。这个内存的正确初始化方案是什么?现在我执行以下操作:RSTEN(复位启用)RST(复位)WREN(写入启用)ULBPR(全局块保护解锁)SFDP(签名被正确读取)RSDR(不能读取状态寄存器)这里出了什么问题,我忘记执行任何命令还是按照错误的顺序执行命令?我会感谢所有关于这件事的帮助。
|
|
相关推荐
19个回答
|
|
|
我使用的是常规SPI模式0。{ WP和XY保持引脚被绑定到VCC(由于某些原因,在编辑我的主题时被拒绝访问,所以我在这里添加了信息)。
|
|
|
|
|
|
请小心使用诸如“常规SPI模式0”之类的术语,因为这不像您期望的那样翻译成CKP、CKE和SMP位设置。通常在一个奴隶数据表中张贴的图,它是由Microchip为设备/家族发布的图表。
|
|
|
|
|
|
参见:http://www1.micro..com/downloads/en/DeviceDoc/SST26VF032B.zipI,假设您将其置于SPI模式,并且不将其设置为SQI模式。我编写10个0x00到0x42(WBPR)以启用100个10块进行写入。然后读取(0x05)RDSR,它就可以工作。直到ti说read,您才需要机智。AVESST26VF032 BNoSDS26VF032
|
|
|
|
|
|
你好,谢谢你的回答。为了澄清,我的主设备将时钟线设置为低空闲状态,并且它正在第二时钟边缘(在这种情况下上升)捕获数据。上面的图像呈现这种模式(CPOL=0)。NKurtzman,我试图按照您的建议去做,但是它没有解决我的问题。我仍然无法读取状态寄存器。请你解释一下这个句子中的意思是什么意思?”在TI说“我应该像我一样重置芯片吗?”我确信SPI部分工作,因为我可以阅读JEDEC和SFDP。是的,我在SPI模式下离开设备,而不是把它设置为SQI。我将非常感谢进一步的支持。
|
|
|
|
|
|
对不起,这句话不多。你需要继续阅读状态寄存器直到它改变为止。如果你能读懂正确的JEDEC代码,那么你的阶段是正确的。尝试我所做的,看看你得到了什么。我清除写锁读取JEDEC代码,然后发出写入。你看过微芯片样本代码了吗?
|
|
|
|
|
|
是的,他们从WREN+读状态寄存器开始,然后读JEDEC。我不知道一开始重置芯片是不是一件好事。如果我正确地理解了数据表,ULBPR应该解锁所有块。好,现在我将写十次00到WBPR,并保持读取状态寄存器的循环。
|
|
|
|
|
|
所以现在我已经完成了以下场景:RSTEN(复位启用)RST(复位)WREN(写入启用)WBPR(用00写块保护寄存器10次(十六进制SPI序列:420000000000000000000000)RDSR(每1ms 100次)每个RDSR(状态寄存器读取)都给我0xFF……你知道还有什么可能吗?我真的怀疑这一点,但有没有任何可能的内存芯片损坏在任何点…?我把硬件连接图附在原理图和PCB上,只是为了说明电路中芯片是如何连接的:还有一件事:如果我理解正确的话,块解锁命令可以解锁擦除和写入。为什么首先需要解锁它们来读取状态寄存器?
|
|
|
|
|
|
我有一些新消息。显然,我能够做扇区擦除(0x20),页面程序(0x02)和读取(0x03)。在各种组合中,我已经成功地在地址0下写入了4个字节的数据,然后读取它,擦除扇区,再次读取,并且它是0xFF的,因此可以工作。这仍然是一个我无法解决的问题,它涉及状态寄存器。这次(请不要问我改变了什么,在这么长时间之后我迷失了方向…)当我进行状态寄存器读取时,我只得到了0。我一直希望看到WEL位被设置,但是不管我调用WREN(写启用)或WRDI(写禁用)多少次,我总是会实现这一点D 0在状态寄存器中。我可以擦除和编程,所以写作必须启用吗?但是为什么我不能看到在状态登记册…我会感谢进一步的帮助。
|
|
|
|
|
|
我没有在我的应用程序中发送重置命令。
|
|
|
|
|
|
当你读状态寄存器时,你看到WEL位集了吗?
|
|
|
|
|
|
您只对我的代码进行了检查,检查是位7。
|
|
|
|
|
|
但在设置鹪鹩之后,应该不咬1(WEL)吗?
|
|
|
|
|
|
当写入完成时,它被清除。
|
|
|
|
|
|
是的,但是我试着在写任何东西之前读它。我设置了WREEN和读取状态寄存器,返回0,WEL位没有设置。
|
|
|
|
|
|
您好,请问我能为您提供一些支持吗?当我发送WREEN,但在写/擦除任何东西之前,我应该读取状态寄存器吗?
|
|
|
|
|
|
我现在注意到为什么我在读取状态寄存器之前得到0xFF,现在我得到0x00…状态阅读仍然不起作用。不同之处在于,我的范围探头连接到MISO线路。没有探针,我就有了0xFF。用探针我得到0x00,因为它是一个轻微的下拉线。读状态寄存器后,存储器芯片的MISO线保持高Z,因此我仍然不能读它。擦除、读和程序命令正常工作。这里可能是什么情况?我真的没有主意了,我会感激所有的支持。
|
|
|
|
|
|
您确定您正在声明芯片选择吗?
|
|
|
|
|
|
我可以肯定,芯片选择是“togLED”在代码中只有一个地方-每个函数使用它(程序,读取,擦除等)。我还检查了它的范围,我在MoSi上发送了5号(这是读状态寄存器)。在此之前,CS是低的。在5个字节之后,我发送一个虚拟字节,在那个时候我应该收到MISO上的状态reg,但是miso是高Z的。紧接着第二个字节#CS回到高状态。读状态寄存器和配置寄存器是迄今为止唯一不适用于我的命令,我不知道。
|
|
|
|
|
|
还有其他想法吗?
|
|
|
|
|
只有小组成员才能发言,加入小组>>
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
473 浏览 0 评论
5793 浏览 9 评论
2334 浏览 8 评论
2224 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3530 浏览 3 评论
1121浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
1095浏览 1评论
我是Microchip 的代理商,有PIC16F1829T-I/SS 技术问题可以咨询我,微信:A-chip-Ti
872浏览 1评论
MPLAB X IDE V6.25版本怎么对bootloader和应用程序进行烧录
473浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 18:42 , Processed in 1.162064 second(s), Total 107, Slave 91 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1762