
SPI收不到数据 STM32F469问题及解决
用STM32F469与BMS1818做通信,读取寄存器值的时候,通信有问题。表现为可以MOSI可以发出正确的波形,但是MISO没有任何波形返回。最终通过端口配置解决。
·
用STM32F469与BMS1818做通信,读取寄存器值的时候,通信有问题。表现为可以MOSI可以发出正确的波形,但是MISO没有任何波形返回。
排查过程:
1.怀疑SPI的时钟频率有问题,是否速度太高,导致通信不正常,结果发现分频后的频率在1M以内,排除。
2.怀疑硬件连接,输入输出反接等,实在搞不明白可以调换试试,但不是这个原因,排除。
3.怀疑SPI时序的问题,可能字节之间需要加间隙?于是在字节间加了延时,波形清楚了一些,但是问题没解决。
4.最终是另一个小姐姐解决的,是基础错误,没开复用时钟,也就是初始化结构体的alternate这个,我以为GPIO口配置成复用推挽输出就完事了,最后打开这个时钟就收到数了。
总结:硬件基本不会有错,着手于软件里的一些基本的配置即可。
更多推荐
所有评论(0)