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.

[参考译文] MSP430I2021:关于故障安全功能运行时的时钟

Guru**** 2548210 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1008940/msp430i2021-about-the-clock-while-the-fail-safe-function-is-running

器件型号:MSP430I2021

各位专家、您好!

我想知道 MSP430I20xx 的失效防护功能。

根据用户指南中的"4.2.1.3故障检测和失效防护"、在使用外部电阻器模式时、DCO 故障(例如、电阻器未连接或接地短路) 或电阻远离推荐值)、DCO 会自动切换到内部电阻模式。

问:用于"切换模式"和"更改寄存器内容"的时钟是什么?

我想 CPU 不会工作、除非提供某种时钟来操作电路。 由于 ROSC 错误导致生成主时钟的系统异常、我想请您检查切换到内部模式的系统时钟是多少。

ROSC 错误->系统时钟停止->它在哪个时钟上运行?

此致、
还不错

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

    各位专家、您好!

    很抱歉耽误你的时间。 您能告诉我们调查的状态吗?

    我的客户正在寻找答案、如果您能让我知道状态、我将不胜感激。

    此致、
    还不错

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

    您好、O.H、

    根据用户指南的该部分、如果 DCO 检测到问题、则会切换到内部电阻模式。   系统检测到错误、然后停止运行是没有意义的、因此我假设在内部电阻模式下运行时执行失效防护检查。  然后、如果未检测到故障、它将切换到外部电阻模式。

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

    尊敬的 Dennis Lahman:

    感谢你的答复。

    [引用 userid="114745" URL"~/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1008940/msp430i2021-about-the-clock-while-the-fail-safe-function-is-running/3733535 #3733535"]\n 系统检测到错误并停止运行是没有意义的、因此我假设在内部电阻模式下运行时执行失效防护检查。  然后、如果未检测到故障、它将切换到外部电阻模式。[/quot]

    在用户指南"4.2.4.3用例3:带有外部电阻器的 DCO 运行-启动时的故障"中、指出 DCO 故障检测延迟周期会在检测到故障时设置 DCOF 和 OFIFG、但这是否意味着器件实际上是在内部电阻模式下运行?

    此外、如果 DCO 已经在外部电阻器模式下运行、故障检测电路是否在内部电阻器模式下运行?
    在用户指南"F4.2.4.4.4用例4:使用外部电阻器的 DCO 操作-运行时发生故障"中、在步骤15中、我认为您是在外部电阻器模式下运行。

    再次检查用户指南后、我的视图如下所示。

    当 DCO 发生故障时、在检测到故障之前运行的时钟会将 DCOF 和 OFIFG 置1、并且时钟会停止。 之后、当执行失效防护功能时、模式切换不需要系统时钟、因为它是硬切换。 此外、在这之后、上述寄存器不会更改、因此也不需要系统时钟。

    抱歉。 我知道上述问题与原来的问题有差异、因为原来的问题是询问模式切换和寄存器切换使用了哪些时钟。 如果上述想法出现错误、如果您能告诉我、我将不胜感激。

    此致、
    还不错

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

    您好、O.H、

    好的-为了更好地理解问题的目的、客户为什么要要求了解故障切换的具体细节?  是否存在切换时间问题?  CPU 停止时间? 这是否合理?

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

    尊敬的 Dennis Lahman:

    感谢你的答复。

    目前、客户遇到 UART 通信在高温(40°C)下停止的现象。 异常通信的现象似乎是溢出。 由于通信频率较高、当我们更改 CPU 的处理负载时、通信异常的发生率下降、以便 CPU 能够在正确的时间执行接收处理。

    我们担心这个问题可能会发生、因为 DCO 模式切换在高温下发生、并且 CPU 在切换期间停止。

    如果您很难分享有关 DCO 模式切换行为的信息、请告诉我们 DCO 模式切换是否会对该问题产生任何影响。

    此外、在过去、在高温环境下、MSP430I2xx 系列时钟系统中是否曾发生过由 DCO 引起的通信错误?

    顺便说一下、以下"在线工具: 波特率计算器"是否已停产? (SLAA734A:3常见 UART 通信问题)
    对我缺乏理解表示歉意。 我想根据 DCO 在高温下的频率偏差计算误差率、但用户指南中的公式很难理解、因此一个工具会很有用。

    此致、
    还不错

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

    好的。 遗憾的是、这不是首先传达的。  据我所知、我不知道、但让我问一下。

    他们使用的波特率是多少?

    当客户说通信停止时:

    1、它们是否意味着它错过了几个字节、但仍在工作或完全停止工作?

    2.如果它正在停止、软件可以复位并重新启动通信、还是需要完全复位器件?

    3.如果停止、UART 是接收还是发送数据、还是两者同时接收?

    4、这是否发生在多个器件上?

    5.当接收到数据时,CPU 是否从低功耗模式切换至工作模式?  换句话说、CPU 在接收到一个字节之前是否处于一个较低模式、然后 CPU 唤醒并处理传入的数据?  如果是、哪种低功耗模式? LPM0、LPM1、LPM2、LPM3?

    波特率工具、是的。  TI 不再支持 Wiki。

    但是、软件团队确实发布了这一信息。  这是一款简单的在线计算器、可根据您的时钟源和所需波特率确定 USCI 或 EUSCI 参数。

    http://software-dl.ti.com/msp430/msp430_public_sw/mcu/msp430/MSP430BaudRateConverter/index.html

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

    右侧、

    客户使用什么值和容差电阻器?    他们是否执行推荐的校准过程?

    查看它们是否可以在其中一个 GPIO 引脚上输出 MCLK 或 SMCLK、并在温度接近40°C 时对其进行监控。  它们

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

    尊敬的 Dennis Lahman:

    感谢你的答复。 非常感谢您提供"简单的在线计算器"。

    我再次确认了他们的情况。

    当更改 CPU 处理负载以便能够在正确的时间处理传入的数据时、除了一次之外、问题不再出现。

    但是、他们希望知道单次故障的原因是什么、以便他们能够避免将来突然发生大规模故障。 因此、他们希望了解 DCO 模式切换的工作原理。 他们不确定这是否与此问题直接相关、因此如果无法获得此信息、他们只想了解过去的类似案例。

    [引用 userid="114745" URL"~/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1008940/msp430i2021-about-the-clock-while-the-fail-safe-function-is-running/3739842 #3739842"]

    他们使用的波特率是多少?

    当客户说通信停止时:

    1、它们是否意味着它错过了几个字节、但仍在工作或完全停止工作?

    2.如果它正在停止、软件可以复位并重新启动通信、还是需要完全复位器件?

    3.如果停止、UART 是接收还是发送数据、还是两者同时接收?

    4、这是否发生在多个器件上?

    5.当接收到数据时,CPU 是否从低功耗模式切换至工作模式?  换句话说、CPU 在接收到一个字节之前是否处于一个较低模式、然后 CPU 唤醒并处理传入的数据?  如果是、哪种低功耗模式? LPM0、LPM1、LPM2、LPM3?

    [/报价]

    这是重复的、但由于他们无法再重现、我将以之前的状态回答。

    波特率为38400。

    1.当他们使用线路监视器进行检查时,没有观察到任何数据,因此似乎通信已经停止

    2.有必要复位器件。

    这是接收溢出。

    4、器件数量未知、但都是原型板。

    5.我们没有检查功耗模式的因果关系。 我们将检查未来。

    [引用 userid="114745" URL"~/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1008940/msp430i2021-about-the-clock-while-the-fail-safe-function-is-running/3739938 #3739938"]

    客户使用什么值和容差电阻器?    他们是否执行推荐的校准过程?

    查看它们是否可以在其中一个 GPIO 引脚上输出 MCLK 或 SMCLK、并在温度接近40°C 时对其进行监控。

    [/报价]

    由于硬件配置原因、MCLK 和 SMCLK 的输出引脚无法使用、因此通过切换 GPIO 引脚左侧来伪检查 DCO 的振荡特性。 很抱歉、我的描述中出错了。 至于温度、温度为70°C、而不是40°C kΩ 的电阻值范围为几十 kΩ 至20 Ω 以上。 当电阻值较低时、振荡特性具有相对较大的裕度、但当它较高时、没有裕度。

    由于问题本身已经解决了一次、如果他们对 DCO 模式切换机制或过去类似情况有一些了解、但如果没有、他们就放弃了、那将会很有帮助。

    此致、
    还不错