[STM32U0] SPI明明收到了数据,但就是错?

[复制链接]
 楼主| Wordsworth 发表于 2025-4-15 07:32 | 显示全部楼层 |阅读模式
是不是CPOL和CPHA搞反了,还是主从设备配错了?
Clyde011 发表于 2025-4-15 07:35 | 显示全部楼层
CRC校验开了吗?有时候它会干扰数据。
公羊子丹 发表于 2025-4-15 07:36 | 显示全部楼层
CPOL和CPHA确认一下?主从必须一致。
帛灿灿 发表于 2025-4-15 07:37 | 显示全部楼层
是不是数据对齐问题?MSB/LSB搞混了?
童雨竹 发表于 2025-4-15 07:38 | 显示全部楼层
有时候时序差一拍,主频要调慢点。
周半梅 发表于 2025-4-15 07:39 | 显示全部楼层
NSS信号有没有抖动?
万图 发表于 2025-4-15 07:39 | 显示全部楼层
用逻辑分析仪抓一下就一目了然了。
 楼主| Wordsworth 发表于 2025-4-15 07:40 | 显示全部楼层
有的设备会多送一个Dummy Byte,小心偏移。
Bblythe 发表于 2025-4-15 07:41 | 显示全部楼层
I2C通讯对拉电阻值也敏感的。
Pulitzer 发表于 2025-4-15 07:42 | 显示全部楼层
看你用的是全双工还是只收模式?
Uriah 发表于 2025-4-15 07:43 | 显示全部楼层
SPI模式有时候比I2C还容易错位。
powerantone 发表于 2025-4-16 16:50 | 显示全部楼层
STM32U0 SPI接收数据错误最可能的原因是CPOL/CPHA配置不匹配或主从设备参数不一致。
stormwind123 发表于 2025-4-16 16:51 | 显示全部楼层
主从设备CPOL/CPHA设置必须完全一致,否则会导致采样时刻错位。
probedog 发表于 2025-4-16 17:20 | 显示全部楼层
检查MISO/MOSI/SCK/NSS引脚是否正确连接。
classroom 发表于 2025-4-16 20:06 | 显示全部楼层
也可能是缓冲区溢出导致的。
laocuo1142 发表于 2025-4-16 21:23 | 显示全部楼层
SPI模式错误,错误选择全双工、半双工或单向模式。
cr315 发表于 2025-4-16 21:30 | 显示全部楼层
用示波器观察波形,确认时序正确性。
两只袜子 发表于 2025-4-16 22:20 | 显示全部楼层
RXNE或TXE标志位未清除可能导致通信阻塞。
jcky001 发表于 2025-4-16 23:00 | 显示全部楼层
在中断服务函数中手动清除相关标志位试试。
benjaminka 发表于 2025-4-17 20:49 | 显示全部楼层
如果引脚连接错误,数据传输就会混乱。比如,MOSI 和 MISO 接反,主设备发送的数据会被自己当作接收数据,导致数据错误。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

144

主题

5773

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部