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.

[参考译文] MSP430FR6989:MSP430Fr6989帧错误

Guru**** 2507065 points
Other Parts Discussed in Thread: MSP430FR6989

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/819076/msp430fr6989-msp430fr6989-framing-error

器件型号:MSP430FR6989

我只在 一个主器件和一个从器件之间使用简单的4线 SPI 通信。

我从 TI 得到:“组帧错误表示主器件和4线 SPI 模式中 STE 上的下降沿,表示总线冲突”。

之后 ,我从 TI 获得 了:”

四引脚 SPI 主控模式

在4引脚主控模式中、STE 被用来防止与另一个主器件的冲突。

当 STE 为高电平时、主器件正常运行。 当 STE 为低电平时:

_ SIMO 和 UCLK 被设定为输入并且不再驱动总线

_错误位 FE 被置位、表示通信完整性违规

由用户处理

然后、我开始通信、由于一些帧错误(我在 SW 中为此创建了计数器)、我感到奇怪。

我无法理解为什么我看到帧错误? 没有其他主设备... 为什么微控制器出现此错误?

非常感谢

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

    您好、Al、

    为了能够理解该问题或提供调试建议、我们需要一些更多信息。

    在错误情况下、SPI 信号的示波器截图会有所帮助。 另外、当标志与 SPY 信号状态一起出现时、更详细的解释也会很有帮助。

    然后、SPI eUSCI 模块的代码和初始化当然很重要。 您的代码是否基于我们的 SPI 代码示例之一? 尤其是在初始化时、写入控制寄存器的顺序至关重要。

    此致

    Peter

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

    您好 Peter。

    遗憾的是、这种错误是零星的-不是每个通信、而是每个小时。 实际上、不可能安排某人在错误情况下可以发挥作用。 这就是我 寻找/要求 提供信息的原因

    由开发人员(TI)提供。 假设控制器上的另一个活动可以导致此情况。(另一个外围设备中的另一个中断?)。 但是、在您描述成帧错误后-看起来不是这样。 抱歉、对于"Spy signal Status"、您的意思是什么? 是的、SPI 的初始化和使用 基于 TI Dokuentation 和示例。 在寄存器初始化之后、不会立即使用 SPI、并且在控制器的整个生命周期内仅使用一次 SPI。 对于 SPI 时钟、您会说什么? 根据 SPI 时钟、是否可能出现帧错误? 可能存在组帧错误的一些勘误表? 可能是帧错误与时钟/定时有一定的联系?

    此致

    Alex

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

    Alex、您好!

    当然、查看勘误表始终是一个好主意。 MSP430FR6989存在一些与 eUSCI 相关的勘误表。 一种是触摸您正在使用的模式、但它与错误的帧错误发生(USCI50)无关。

    理论上可能存在这样的情况、即此标志可能会被错误或意外设置。 第一个问题是 SPI 模块初始化错误。 由于模块的状态机很复杂、因此必须保持控制寄存器的指令序列、而不仅仅是确保正确的寄存器设置。 这就是为什么我问您的代码是否基于我们的代码示例、因为序列正确。

    另一个可疑的问题可能是在操作期间对 eUSCI 寄存器进行操作、据我所知、您没有执行任何操作。

    抱歉、"Spy"是一个拼写错误。 它应该是 SPI、这意味着我希望在发生故障时看到 SPI 的信号和工作模式。

    也会导致严重情况的是异步事件。 因此、了解时钟方案在您的应用中的表现会很有趣、这意味着 MCLK 的源是什么、SPI 的时钟源是什么、您是否使用 DMA、SPI 通信是否由 LPM 运行?

    我们了解到非常罕见的情况、因此还需要考虑一些外部干扰。 因此、我的下一个问题是关于您的测试设置。 您能给我们提供更多详细信息吗? 拓扑、供电、电缆连接长度...

    用一个示波器捕捉故障情况的一个可能性是将一个由组帧错误标志触发的针对 MSP430 GPIO 的切换指令添加到 ISR 例程代码中。 然后、示波器可以在单次触发模式下捕获出现错误标志时的 SPI 信号。

    此致

    Peter

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

     你(们)好。

    我有屏幕截图。 可能该信息会带来一些影响?

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

    您好、Al、

    非常感谢控制寄存器设置的屏幕截图、但这并不能帮助我们找出潜在的根本原因。 此外、SPI 在屏幕截图时处于复位模式。

    我们确实需要这些信息、我在上一篇文章中列出了这些信息。 否则,恐怕我们将无法为你做很多工作。

    此致

    Peter

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

    您好、Al、

    您能否向我提供您的侧状态以及您是否能够提供所需信息的更新信息? 感谢 Avdance。

    此致

    Peter

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

    你(们)好。

    非常遗憾、但我没有时间进行此操作。 在描述成帧错误后、无法进行通信。

    看起来客户也会与生产商进行测试。 有时它会发生-这次不是-遗憾。  我听说人们的频率从400kHz 下降

    至100kHz。 -没有帧错误。 我会说控制器硬件  无法正常工作。

    我查看/测试了 TI 示例、没有看到使用此类时钟(400kHz)的 SPI。

    此致。

    P.S 会让我很高兴(我很感兴趣)、如果 TI 自己(密切)也以更高频率的示例来看待这个问题。 您可能会看到效果本身。

    在示例中、仅列出无代码- Paar 符号操作。 更多的中断负载、更高的频率-一些操作和可能的组帧错误会显示出来。

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

    尊敬的 Alex:

    非常感谢您的更新。 虽然我理解您在这类调查中的观点和关注原则、但如果没有适合重现问题的代码示例、就不可能对此进行研究。 那么、让我提出以下建议。 我现在要关闭这个线程。 如果客户再次遇到问题、并能够将代码降低到合理的复杂性、在这种情况下、可以使用目标板或我们的 LaunchPad 重现问题、那么我们可以再次这样做。

    这是否符合您的需要?

    此致

    Peter

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

    你(们)好。

    我认为我不可能将代码提供给我。  为了减少代码、可能需要大量 时间。

    它应该在 不减少代码的情况下工作。 但在您的说明不符合要求之后、它看起来像是组帧错误。

    说明可能存在差距或控制器硬件有问题。 如果 您没有更多信息、请清除为什么报告错误

     只有一个主器件、您才能将其关闭。  

    此致

    Alex

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

    尊敬的 Alex:

    在这种情况下、我确实需要关闭该线程、因为在没有重复问题的设置或代码示例的情况下进行调查是没有意义的。 如果客户再次遇到问题、我们可以重新激活有关此主题的支持。

    此致

    Peter

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

    您好 Peter。 是的、关闭它。

    此致