[APM32E0] 在使用I2C从模式接收数据时,少一个字节

[复制链接]
479|30
FrostShimmer 发表于 2025-10-28 10:06 | 显示全部楼层 |阅读模式
在使用E030做SMBus从接收数据时少了一个字节,没有收到结尾的PEC校验数据。
中断状态都可以get到,系统也没有卡死。
这个会是哪里的问题?大家有遇到吗?

szt1993 发表于 2025-10-29 15:35 | 显示全部楼层
确定是少i了?是不是与时序数量有关系
发光的梦 发表于 2025-11-1 21:50 | 显示全部楼层
是不是接收中断有溢出的情况?
天鹅绒星星 发表于 2025-11-2 17:35 | 显示全部楼层
接收中断函数查查吧!
人家设计的肯定没有问题
观星者宁静 发表于 2025-11-3 11:28 | 显示全部楼层
I2C的中断频率高,要把其中断优先级配置尽量高才可以。
对于master模式要使用DMA方式。
星云狂想曲 发表于 2025-11-4 14:17 | 显示全部楼层
是不是接收到stop后需要再读一次data寄存器。
minzisc 发表于 2025-11-5 10:35 | 显示全部楼层
接收缓冲区的大小不足以容纳所有数据。
albertaabbot 发表于 2025-11-5 12:18 | 显示全部楼层
从机在收到最后一个字节前错误地关闭了接收
mickit 发表于 2025-11-5 13:40 | 显示全部楼层
接收缓冲区 是否足够大?              
亿年回响 发表于 2025-11-5 17:02 | 显示全部楼层
楼主不要收到stop中断就退出I2C的序列,要等待总线释放才可以的。
pentruman 发表于 2025-11-5 17:29 | 显示全部楼层
丢失最后一个字节?              
alvpeg 发表于 2025-11-5 19:28 | 显示全部楼层
使用示波器或逻辑分析仪捕获SDA/SCL波形
claretttt 发表于 2025-11-6 21:38 | 显示全部楼层
使用中断方式接收I2C数据?              
天体书记 发表于 2025-11-7 17:32 | 显示全部楼层
看看是不是最后一次的中断触发流程未做对
deliahouse887 发表于 2025-11-8 14:36 | 显示全部楼层
根据I2C协议,主机每发送一个数据字节,从机都必须回复一个ACK
adolphcocker 发表于 2025-11-8 20:53 | 显示全部楼层
I2C总线上的硬件问题              
tifmill 发表于 2025-11-9 07:57 | 显示全部楼层
有没有可能因为指针错误导致数据被覆盖或读取错误?
maudlu 发表于 2025-11-9 11:07 | 显示全部楼层
NACK应该只在从机无法处理当前数据
louliana 发表于 2025-11-9 16:28 | 显示全部楼层
从机在最后一个数据字节后发送了NACK
GalaxyStroll 发表于 2025-11-10 11:01 | 显示全部楼层
楼主 如果对I2C时序或事件处理需要更多资料,可以参考其它型号或者竞品的Reference。里面有更详细的说明。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

47

帖子

0

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