This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] BQ28Z610-R1:I2C ACK 位时序问题

Guru**** 2391265 points
Other Parts Discussed in Thread: BQ28Z610-R1, BQSTUDIO, EV2400, BQ28Z610

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1451606/bq28z610-r1-i2c-ack-bit-timing-issues

器件型号:BQ28Z610-R1
主题中讨论的其他器件: BQ28Z610BQSTUDIOEV2400

工具与软件:

您好:)

-

我遇到了 BQ28Z610-R1 及其 I2C 通信行为问题;

具体来说、它会在将确认(ACK)位锁存为低电平之前引入延迟、这会在 同一总线上使用 I2C 电平转换器(如 FXMA2102)时导致问题。

-

如下图所示、BQ28Z610-R1在 ACK 位上引入了非常小的延迟(~2us):

(正常操作、EV2400 + bqStudio)

-

这个较小的延迟会导致 I2C 线路上出现脉冲/尖峰、这对于像 FXMA2102这样的 I2C 电平转换器来说太快了、无法正常趋稳、从而导致其出现故障:

-

当前设置:

  • I2C 总线速度: 100kHz
  • 上拉电阻器: 1.5K 至3.3V
  • BQ28Z610 'I2C Configuration'寄存器: 0x08 (仅针对400kHz 总线速度启用了'XL')

我已经 尝试启用/禁用 "I2C 配置"寄存器中的"TO_STRETCH_EN"、"FLASH_BUSY_WAIT"和"XL"位、当全部启用后、延迟会有所降低、但仍然不够(即使在400kHz 总线速度下)。

我还尝试 在 SCL 和 SDA 线路(100欧姆+ 200pF)上添加串联电阻器+电容器、但遗憾的是、这也未能解决该问题。

-
BQ28Z610-R1是否有任何额外的设置或技术可以延长或消除 ACK 位的延迟?

非常感谢您提供任何见解或建议!

-

谢谢!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    该问题 已经得到解决、实际上不是由 ACK 位的延迟引起的、而是由 数据表中为 BQ28Z610-R1推荐的 I2C 总线滤波器(浪涌保护)引起的。

    具体而言、是100欧姆的电阻值、过高会导致逻辑低电平不足以正确寄存。
    而是使用铁氧体磁珠和10 Ω 电阻器解决了该问题。