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.

[FAQ] [参考译文] 【常见问题解答】LP5814:向 LP5814 / LP5815 / LP5816/LP5817 发送 I2C 命令时如何解决 NACK

Guru**** 2454880 points
Other Parts Discussed in Thread: LP5814, LP5816, LP5817, LP5815

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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1550723/faq-lp5814-how-to-solve-nack-when-send-i2c-command-to-lp5814-lp5815-lp5816-lp5817

器件型号:LP5814
主题中讨论的其他器件: LP5816LP5817、LP5815

工具/软件:

解决 I2C NACK 的四个步骤、

  1. 硬件检查
  2. 器件 I2C 从器件地址检查
  3. 实数输出 I2C 数据位检查
  4. SCL/SDA 高低电平检查

通常、在执行这四个步骤之后、应找到 I2C NACK 的根本原因、并且应解决问题。

但是、还有其他可能引入 I2C NACK 的因素、例如时钟频率超出范围、时序参数违反规范。 尤其是当使用 GPIO 来仿真 I2C 功能而不是使用控制器的标准 I2C 外设时。

1、硬件检查

  • 测量 LP5814/LP5815/LP5816/LP5817 VCC 引脚上的电压 、确保电压介于 2.5V 至 5.5V 之间
  • 测量 SCL/SDA 上的电压、确保在没有 I2C 通信时 SCL/SDA 保持在高电平状态、作为 VIO 的电压。 请注意、SCL/SDA 需要上拉电阻器。

2.器件 I2C 从器件地址检查

  • LP5814 和 LP5816 具有相同的 7 位独立从器件地址 0x2C
  • LP5815 和 LP5817 具有相同的 7 位独立从器件地址 0x2D
  • LP5814 / LP5815 / LP5816 / LP5817 具有相同的 7 位广播从器件地址 0x34

3.实际输出 I2C 数据位 检查

  • 通常、我们可能会看到代码中设置了正确的 I2C 地址、但仍然满足 NACK。 然后、我们可能需要怀疑 SCL/SDA 上的实际输出位没有映射代码数据
  • 使用示波器或数字分析仪捕获 SCL/SDA 上的位
  • 将捕获的位与代码数据进行比较

4. SCL/SDA 高电平低电平检查

  • 如果在检查电源轨和 I2C 地址是否正确后仍然接收到 NACK、则可能需要检查 SCL/SDA 的高/低电平是否满足规格
  • 对于 LP5814/LP5815/LP5816/LP5817、

–SCL/SDA 的电压电平大于 1.4V 可成功识别为高电平

–SCL/SDA 的电压电平低于 0.4V 可成功识别为低电平

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

    如果您对上述步骤有任何相关问题,请直接在此处发布您的问题或使用“+提出相关问题“按钮创建新帖子。