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.

[参考译文] TCA9517:ATMega328p -使用 TCA9517的 VL53L0x 传感器的 PU I2C 通信问题

Guru**** 2443660 points
Other Parts Discussed in Thread: TCA9517

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/671666/tca9517-atmega328p---pu-i2c-communication-problem-with-vl53l0x-sensor-using-tca9517

器件型号:TCA9517

大家好、

ATMega328p - PU、用于距离测量的红外传感器 VL53L0X 和 Nextion 3.5英寸触摸屏之间的 I2C 通信出现问题。 Atmega 由5V 电源供电、传感器由2.8V 电源供电、因此我决定使用 TCA9517进行逻辑电平转换。 我设计了自己的电路和 PCB。 但遗憾的是、我没有从传感器获得任何响应。 我每隔1秒调用一次传感器。 在示波器上、我看到 Atmega 在 SCL 和 SDA 线路上向传感器发送数据、但我没有从传感器接收任何测量数据。 一旦我连接传感器2.8V、电压就会降至1.9V。 触摸屏用于显示来自传感器的测量数据并使蜂鸣器静音1分钟。 当传感器测量特定距离时、蜂鸣器将打开。 这部分电路工作正常、我只会遇到 I2C 问题。 但是、当我拔出 Atmega 时、将其插入到带有 BSS138 MOSFET 和电阻器内置的外部逻辑电平转换器的 Arduino UNO 板中。 我对电路设计不是很了解、在花了很多天的时间尝试解决问题后、我真的不知道什么会导致这个问题。 在附件中、我还发送了原理图和 PCB。

是否有人会这么善良并尝试帮助我解决这个问题?

此致、

Petere2e.ti.com/.../arduino_5F00_TCA_5F00_sch.pdfe2e.ti.com/.../arduino_5F00_TCA_5F00_brd.pdf

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

    您好、Peter、

    我已经查看了您上传的原理图、但我没有发现我们的器件有任何问题。

    PCB 的布线对我来说有点令人担忧(与我们的器件无关)。 顶层上似乎有一条迹线连接到 C5、看起来它在 MCU 的焊盘之间运行。 该迹线非常靠近焊盘。

    注意:我不是功率器件方面的专家、因此我的解释可能会出错。

    我实际上认为这个问题与您的 LDO (MIC5307)有关。 输出(在本例中为2.8V)看起来像是连接到100nF 电容器、但是稳压器通常使用比较器来反馈输出上的电压、以调节其电压。 由于半导体器件并不完美、寄生效应会起作用、并可能导致反馈系统中不需要的极点和零点(运算放大器增益不是无限的原因)。 这会影响比较器的整体稳定性(您可以将它们视为运算放大器)。 经验法则是、如果两条曲线的1/B (通常为噪声增益)和开环增益相交、并且接近率(ROC)不小于20dB、则系统不稳定。 为了补偿不稳定性、您可以使用反馈系统上的分立式组件或在本例中使用输出来移动这些极点和零点。

    通过在输出端放置100nF 电容器、您无意中影响了反馈系统的极点和零点、并导致器件的输出不稳定(相位裕度已更改)。 我建议您在输出端放置一个2.2uF 的电容器、看看问题是否消失。 以下内容来自器件的数据表。

    如果您对更好地了解稳定性感兴趣、TI 提供有关以下主题的免费在线讲座视频:(有关运算放大器稳定性的第10节)

    谢谢、

    -Bobby

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

    您好、Bobby、

    感谢您提供非常详细和有充分论证的答案。 我已经更换了 MIC5305上的两个电容器、但它没有帮助。 但幸运的是、我发现压降的原因是 VL53L0X 传感器上 Vcc+Enable 引脚上的上拉电阻器。 我把它从电路中划掉了、现在一切都正常工作。

    再次感谢您的帮助;)

    Peter