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.

[参考译文] LP-MSPM0G3507:关于 I2C 扩展问题

Guru**** 2482225 points
Other Parts Discussed in Thread: LP-MSPM0G3507

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1242554/lp-mspm0g3507-about-i2c-stretch-issue

器件型号:LP-MSPM0G3507

您好、TI 专家!

我有一个采用1MHz I2C 速度的应用与一个从器件。

使用另一台主机时的正常 I2C 读取波形如下:

您可以看到在第8个 SCK 等待从器件 ACK 后有一点伸展。

和 LP-MSPM0G3507 I2C 读取波形如下所示:

它没有拉伸、我获得了 NACK 中断。

我已启用控制器时钟延展和 I2C 配置、如下所示:

是否缺少其他设置?

BTW、当我减速至400kHz 时、它正常工作。 (波形无拉伸)

谢谢。

Br、

NIAN

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

    您好!

    对于 1MHz I2C、您可能需要 增加 MCLKOCNTLOAD.cNTL、以便为时钟延展具有更长的超时限制。

    此致、

    现金豪

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

    现金、您好!

    我在哪里可以找到"MCLKOCNTLOAD.cNTL"的定义

    我遇到了问题: "I2C_Regs"中没有名为"MCLKOCNTLOAD"的成员

    Br、
    NIAN

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

    您好!

    对于 PG2.0器件、它应更改为 TIMEOUT_CTL 和 TIMEOUT_CNT 寄存器。

    此致、

    现金豪

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

    现金、您好!

    我已经为 SCL 低电平超时设置了超时 A (CNT=5或更大)。

    但 波形仍然相同、并且没有超时 A 中断。

    我是不是漏掉了 其他?

    Br、

    NIAN

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

    您好!

    让我在下周早些时候进行测试。  

    此致、

    现金豪

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

    您好!

    我已经测试了拉伸函数。  

    通过延伸启用、SCL 频率低至约695kHz。 如果没有它、SCL 频率为1MHz。 那么拉伸函数是有效的。  

    ACK 状态的长等待时间与拉伸功能无关。  

    此致、

    现金豪

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

    现金、您好!

    我不明白你的意思。。。

    如果我启用 Stretch、那么 ACK 上的长等待时间 不 起作用?

     当 I2C 速度为1MHz 时、我的从器件需要延伸、如上所示。

    但我看不到 I2C 波形有任何拉伸。

    Br、
    NIAN

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

    您好!

    哦、抱歉、我是对拉伸问题的误解。  

    这些是我通过更多测试获得的结果。 扩展功能时、我会发生这种情况。 在推荐书之后没有任何拖延。 如果我在目标侧启用拉伸功能。 在推荐书之后将会有延误。 我还更改了目标器件的 MCLK、尝试充当慢 I2C 节点。 根据测试结果、拉伸更长。

    此致、

    现金豪

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

    现金、您好!

    感谢您的更多测试。

    从您的结果来看、MSPM0G 的拉伸功能很好。

    您的测试延展发生在从器件 ACK 之后。 (在读取数据之前)

    但是、我的器件延展发生在从器件 ACK 之前。 (在第8个 SCK 和第9个 SCK 之间)

    MSPM0G 是否仍可以处理它?

    Br、

    NIAN

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

    您好!

    我不知道如何配置 SCK 第8个时钟和第9个时钟之间的 M0拉伸。 我需要向团队核实我们是否支持这一职能。

    此致、

    现金豪