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.

[参考译文] TMS320F28033:时钟发生故障后、系统时钟减少至1/3

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/841105/tms320f28033-system-clock-decreases-to-1-3-after-clock-fails

器件型号:TMS320F28033

客户在其系统中发现 F28033有一个奇怪的问题。 它们使用外部晶振 wtih 20MHz 作为系统时钟源。 当发生一些 干扰时、通过测量 PWM 频率和 CAN 波特率、系统时钟60MHz 降至1/3。 同时、当 MCLKSTS=1时、检测到缺少时钟。 奇怪的是、为什么20MHz 系统时钟会发出。  您对这种现象有什么想法吗? 谢谢你。

请检查寄存器状态:

正常工作:

SysCtrlRegs.PLLCR.all :0006

SysCtrlRegs.CLKCTL.ALL: 2505.

SysCtrlRegs.PLLSTS.All: 0101

检测到缺少时钟后:

SysCtrlRegs.PLLCR.all :0000

SysCtrlRegs.CLKCTL.ALL: 2500

SysCtrlRegs.PLLSTS.All: 0109

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

    尊敬的 Aki:

    这可能是跛行模式频率、但即使如此、也过高。 他们如何确定输出频率变为20MHz? 他们可以尝试 GPIO 切换吗?

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

    弗兰克、

    它们根据 PWM 频率进行判断、该频率降至前一个频率的1/3。

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

    Aki、

    此20MHz 是否持续或是否间歇性? 他们是否有任何示波器截图?

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

    弗兰克、

    他们说这是一个稳定的变化。 现在、他们希望使用自动切换至 INTOSC1功能。 您是否知道它将从检测到的时钟 fali 到触发 NMI 中断的时间有多长? 除了在 NMI_ISR 内部之外、还有其他任何方法可以重新配置 PLL? 在重新配置 PLL 之前、系统时钟将是多少?

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

    尊敬的 Aki:

    我已将此主题重新分配给对旧器件更熟悉的其他人。

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

    Aki、

    查看它们的配置、它们已在正常运行中关闭 INTOSC1。  假设该事件导致 XTAL 上的时钟故障、那么 MCLKSTS 位将被置位。  如果 INTOSC1被保持启用、正常运行将是切换到 PLL 的这个时钟与跛形模式。

    我感到惊讶的是、跛行模式会在这个 FAST 附近的任何位置生成一个频率、我想、由于 INTOSC1关闭、我们仍然从外部 XTAL 路径计时;由于 PLL 也由于缺少时钟而被复位为0。  不过、我仍然不清楚这是如何发生的。

    无论如何、如果客户保持 INTOSC1处于活动状态、则当外部时钟丢失时、缺少时钟硬件将自动切换至 INTOSC1。     触发器的 TRM (第76页 www.ti.com/.../sprui10)编码器是一个13位计数器(VCOCLK)、当它溢出时会触发该计数器。  跛行模式时钟的规格为1-5MHz。   

    因此、在最坏的情况下、一旦时钟物理丢失、则需要8192 * 1us = 8.1ms 来检测和切换回器件/对器件进行复位。

    这一切都假设时钟完全丢失、不会产生一些杂散等

    如果您有更多问题、请告诉我。

    最棒的
    Matthew

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

    Matt、Frank、

    谢谢你。 现在、我告诉他们启用 INTOSC1、以便   可以启用自动切换到 INTOSC1功能。 我将检查他们是否还有其他问题。