APM32E030 I2C 从模式接收少 1 字节,常见原因:NUMBYT 配置值比实际传输少 1,或 SBCEN 单字节控制误使能;也可能是从机未及时响应 ACK、STOP 条件提前触发,或中断优先级冲突导致数据读取延迟。需核对 NUMBYT/SBCEN 配置,检查 ACK 时序与中断逻辑,确保字节计数和传输时序匹配。
总结
核心诱因:NUMBYT 配置错误、SBCEN 误使能或 ACK/STOP 时序异常;
排查重点:核对寄存器配置、校验 ACK 响应及时序;
解决思路:确保字节计数与传输需求一致,优化中断优先级。
|
|