搞了一天,发现移植官方的程序一直读LD_ReadReg(0x35)LD_ReadReg(0x1b)
LD_ReadReg(0xb3)
这几个寄存器都得到的是0,一直卡在LD_Check_ASRBusyFlag_b2()这个函数中的LD_ReadReg(0xb2)的值一直也是0,为繁忙
应该是时序问题导致的读写寄存器都出错,但是查了半天没查出来哪里的时序错误,官方源码是F1的,要移植到F4,不清楚两个关于SPI有什么注意的地方,有空的大神麻烦帮比较一下两者的初始化,要是有已经做过F4的LD3320,指点一下小的吧。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
下面总结一下,
1,经过这个操作,我发现F4对SPI初始化居然会因为在函数里对其他IO口初始化就影响了时序。。。。看起来完全不科学啊。
2,我再试了其他旧的F4板,发现就同一个程序,读写寄存器还是不行,电压不稳?电源适配器也接上了,但是还是不稳,是不是用久了板子对时序影响会很大啊,这个问题返修能解决吗?大概是晶振还是哪里的问题。
3,我用那旧的F4板,去下载原子“实验25 SPI实验”,完全没有问题,难道对这个LD3320模块特别严格吗?
@正点原子
上述类似的问题不知道有没有其他人遇到过,原子哥,这个如果对SPI时序真的很严格,只能新板才能实现,那我这个旧板返厂涉及到哪部分重新维修就可以正常使用回呢?
那我的问题会出在哪?用久了MCU对时序的处理没有那么精准?还是晶振或别的什么问题?
一周热门 更多>