单片机/MCU论坛
直播中

刘辉

7年用户 1056经验值
私信 关注

非标I2C,主机不回NACK信号如何改底层呢?

客户的I2C信号是个自定义的处理方式,在主机获得数据后不会NACK信号,这样EZI2C组件会一直报错,导致I2C重启信号丢失,这样的情况如何修底层程序?
                                                                                                                                                                                                                                                                                                                                                                                                

回帖(1)

康瑜玲

2024-2-21 14:09:35
主机读取数据的时候,在第8个bit位之后,如果给ACK信号,那么说明读取的不是最后一字节,如果是NACK说明是最后一个字节,接下来需要发送stop信号,结束当前通信状态。
你描述的主机在获取数据后不回NACK,那么回复的就应该是ACK,理论上应该是接着传送数据。
EZI2C的底层代码不建议修改。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分