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.

[参考译文] MSP430F5438A:可疑的 I2C 停止连接

Guru**** 2554420 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/602867/msp430f5438a-suspicious-i2c-stop-contion

器件型号:MSP430F5438A

您好!

此问题适用于每月300Ku 的客户。

它们在系统中使用 I2C、主 DSP 是主 DSP、MSP430是从 DSP。

当它们使用 I2C 时、SCL 会长时间保持低电平。

发生这种情况时、MSP430似乎将其识别为停止条件。 这是波形。 蓝色为 SCL、紫色为 SDA、黄色为 GPIO、按停止条件中断。

我知道、如果 SCL 为低电平、它不是停止条件。 但是、在实际停止条件之前触发停止条件中断 、这会在其系统中产生严重错误。 当他们使用 Renesas MCU 时、没有遇到此错误。

以下 是我的问题。

1. 当 SCL 长时间保持低电平时被识别为停止条件-这是正常操作吗?

2.当 SCL 长时间保持低电平时、如何阻止停止条件中断?

此致、

TED

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在受控模式下、UCSTPIFG 只应在 I2C 模块检测到一个停止条件(由主器件生成)时置1、而不受时钟扩展的影响。 您能否确认 UCSTPIFG 是否确实在这种状态下被置位? 是否可能同时为其他 ISR 提供服务? 客户可能会遇到来自 USCI39勘误表的问题吗?

    此致、
    Ryan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    采取上述行动的其他原因是... 客户在 ISR 中插入了 printf()。 我没有注意到这一点。
    谢谢

    TED