使用nRF52832的GPIO(模拟i2c)和bq40z50通讯时,会出现读取电量错误的情况,例如50%的电量,前5次读取正确,第6次就会出错,出错的次数不是固定的,随机出现,但频繁出现,SDA和SCL的波形很好,从10K到100K都有这个问题,不知什么原因导致的,请支持,谢谢!
user5320919:
相关图片
user5320919:
回复 user5320919:
Hugo Zhang:
回复 user5320919:
出错时读到的数据是多少?上面的波形是出错时的波形吗?
user5320919:
回复 Hugo Zhang:
出错时,读到的电量很大很大,6万多安时;
user5320919:
回复 user5320919:
错误电量也不是固定的,有时会变成0
user5179111:
回复 user5320919:
请问你解决了吗?我也遇到类似的问题,我使用FPGA模拟的I2C,刚开始读还是好的,等一两个小时之后就不行了,电量一直为零,而且只有时钟为10k时能读出来。30k时电压啥的能读,电量读出来一直为零。
user5145355:
采用模拟IIC的时候,有等待ACK应答帧吗,没有的话可能会在连续读取或写入时出错。
user5179111:
回复 user5145355:
有的,我采用10k的时钟周期,每次ACK前后都有2到3个时钟的延迟。在我自己的系统内没有判读ACK应答,但都等有一定的时间。是因为我没有判读ACK吗?因为每次都判读ACK的话我的程序会卡死。