工具与软件:
您好!
我正在运行 BQ76952、我已将其配置为400kHz CRC 模式(带 CRC 的 I2C FAST)。 我有一个定制电路板、设置有 STM 微控制器、并且 BQ76952在 I2C 总线上通信。 BQ76952处于稳定的环境工作条件(温度检测20C、电芯电压为3.3V、放电电流为0.003A)
我正在运行基本的 I2C 通信压力测试、其中 STM 重复发送"DEVICE_NUM"子命令、读取相关数据并检查是否存在错误。 我正在以~50Hz 的频率发送该子命令、子命令的"写入"和"读取"部分之间为40ms
经过一段长时间的随机(有时是数小时、数天或数周)后、BQ76952开始拒绝这些命令、并且后续的每个子命令都是 NAK 'd。 我已经在遇到 NAK 后成功添加了手动 I2C 通信延迟(即100毫秒延迟)、但这些延迟似乎只是降低了这些锁定的频率、而不是完全结束它们。 虽然、将整个电路板断电并将其放回锁定位置并允许进行进一步通信、但这对于该产品不是实用的解决方案
我在数据表中没有看到任何关于此行为的信息、是否缺少内容? 任何可能解决此问题的设置或命令? 我看到 BQ76952上有一个2s 超时、我可以将通信延迟这么长的时间、但这不是理想的解决方案、因为这是锁定在所有 I2C 通信之外的很长时间。 我还可以将 I2C 配置切换为启用超时的配置、但这也不理想、因为该产品需要 CRC 校验的准确性