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.

[参考译文] MSP430G2553:I2C 主器件-启动后出现毛刺脉冲

Guru**** 2540720 points
Other Parts Discussed in Thread: MSP430G2553

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/921663/msp430g2553-i2c-master---glitch-after-start

器件型号:MSP430G2553

我有一个使用 AS3935雷击检测器的小电路、该检测器通过 I2C 通过3.6V/4k7上拉电阻连接到 Atm8。 我想用 MSP430G2553替代"其他"MCU 会很容易、但会立即出现 I2C 连接问题。 当'G2553 USCI/I2C 在 DS1307中正常工作时、尝试访问 AS3935将失败、并从 NACK 开始。 我探测电路(构建在具有相关杂散电容的无焊试验电路板上)并开始工作;我很快意识到 SDA 线路上的小附加电容会使其正常工作;移除了探针并在 SDA 接地端找到10p 将使其正常工作。 'G2553放置在无焊试验电路板上;后来的实验在 LaunchPad 上包含'G2553。 在这两种情况下、应充分旁路"G2553 Vcc/GND。

驱动程序代码经过轮询并可按需提供、但此问题完全与硬件中的 START 条件生成有关。

当然、我拍了一张照片-上部布线是 SDA、下部布线是 SCL -请注意、随着 SCL 下降、SDA 在启动条件之后会立即出现急剧尖峰:

该尖峰不是漏极开路 I/O 的结果-它具有大约~60ns 至~1.5V 的线性上升时间、表示逻辑"1"。 将其作为地址/RW 字节的 MSB 计时实在太早了、但我怀疑它会导致 AS3935忽略启动条件(这似乎违反了 I2C 时序/滤波、当然)。 我还注意到在后来的 SCL 下降时 SDA 毛刺较小、但这应该是良性的。

这是 I2C 模式下 MSP430Gx2xx USCI 的已知行为吗? 除了在 SDA 线路上放置一个小电容器外、还有没有其他方法可以消除这种干扰? 小型电容器肯定会通过将毛刺脉冲的前缘延迟一点(少量 NS)来解决此问题。

谢谢、

Dana

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

    [引用用户="Dana Myers16512"]

     

    当然、我拍了一张照片-上部布线是 SDA、下部布线是 SCL -请注意、随着 SCL 下降、SDA 在启动条件之后会立即出现急剧尖峰:

    [/报价]

    错误、这不起作用。 让我再试一次:

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

    您好 Dana、

    这与下面的主题中讨论的问题类似。  请告诉我这是否有助于解决您的问题。   

    https://e2e.ti.com/support/microcontrollers/msp430/f/166/t/346885

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

    实际上、这似乎正是我所看到的问题。 我将进行仔细检查、但我记得、如果只是4k7上拉充电 SDA 电容、毛刺脉冲的上升时间比预期的要快、并且它看起来是线性的-就像一个电流源。 我很想、I2C 逻辑中有一个状态变化、短暂地打开端口驱动器、但这可能会有一个更快的上升时间。

    非常感谢您的帮助。

    Dana