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.

[参考译文] TMS320F2.8033万:时钟缺失

Guru**** 2524290 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/666965/tms320f28033-clock-missing

部件号:TMS320F2.8033万

大家好,我的客户正在使用F2.8033万来构建直流/直流转换器,在某些情况下电路将停止工作,发现F2.8033万当时停止工作。

我们检查了XRS,XCLKOUT和VDDIO,波形如下所示。

XRS-blue,XCLKOUT-yellow,VDDIO-red.

可以看出,XCLKOUT将具有短脉冲的时钟输出,然后会重复出现约3.5毫秒的高时钟输出。

放大后,波形如下所示,XCLKOUT输出始终为60MHz=SYSCLK:

它们使用外部晶体。 从波段中我们可以知道,F2.8033万在XCLKOUT=SYSCLK之后的这段时间内没有重置,如果重置,XCLKOUT=SYSCLK/4。

所以他们很好奇  

1.我们能否确定是外部晶体缺失的输入时钟导致XCLKOUT持续偏高? 外部晶体是否仍在工作,但XCLKOUT输出恒定高电压(无时钟脉冲)?

2.为什么没有时钟时F2.8033万不能重置? 我们需要如何配置寄存器,以便在缺少时钟输入时让MCU重置?

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

    霍华德

               您如何确定"F2.8033万停止工作"? "停止工作"的确切含义是什么?

     

    在第一个示波器图中,您提到“可以看到XCLKOUT将具有短脉冲的时钟输出,然后具有高时钟输出,持续时间大约3.5毫秒,重复”。 但是,在第二个范围图中,您提到“XCLKOUT输出始终为60MHz=SYSCLK”。 哪一项是正确的? 您是否在显示XCLKOUT = 60 MHz?

     

    如何配置MCD? 是否配置为在时钟丢失时立即执行重置?

     

    我们能否确定是外部晶体缺失的输入时钟导致XCLKOUT持续高电平?

    答-->首先,请说明XCLKOUT是恒定高频率还是恒定60 MHz。 您在帖子中提到了这两个问题。

     

    外部晶体是否仍在工作,但XCLKOUT输出恒定高电压(无时钟脉冲)?

    答-->如果外部晶体工作时没有停止,则未发生时钟丢失事件。 在这种情况下,除非XCLK寄存器损坏,否则XCLKOUT不会突然消失。 参考指南中的内容:如果未使用XCLKOUT,则可以通过在XCLK寄存器中将XCLKOUTDIV位设置为3来将其关闭。

     

    为什么缺少时钟时F2.8033万不重置? 我们需要如何配置寄存器,以便在缺少时钟输入时让MCU重置?

    答案-->这取决于代码如何处理缺少时钟的情况。 请参阅有关如何配置MCU以在时钟缺失时重置的文档。

     

    另请参阅SPRUH18或SPRUHE5了解缺失时钟检测(MCD)电路的说明。 该部分已在这些文档中重写。 这些更改将很快纳入2802x/2803x参考2803参考指南。 MCD在这些设备上的行为非常相似。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Hareesh,
    在第一个图中,XCLKOUT将有一个短时钟脉冲,然后高时钟脉冲约3.5毫秒。 第二个图是时钟输出生成的第一个图中短时间的放大,该期间的频率为60MHz。
    "停止工作"是指:他们将有一个ISR来更新DC/DC转换器的控制逻辑,在ISR开始时,GPIO将输出1,ISR结束时,GPIO将为0,LED将连接到此GPIO。 当转换器正常工作时,LED将闪烁,但他们观察到LED在工作一段时间后停止闪烁。 所以他们进行我上面描述的测试来检查时钟信号。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果片上零针振荡器(INTOSC1)用作时钟源,是否会出现此问题?

    是否确定-XRS引脚没有脉冲? 有时,如果在测量完全不同频率的信道上触发示波器,则很容易错过事件。 能否仅探测-XRS针脚并断开所有其它通道?

    应用程序中是否使用了看门狗?

    仿真器是否出现问题? 如果是,是否可以停止执行以查看程序计数器的位置?

    是否在多个设备中出现这种情况?

    是什么引起了这种行为? 此问题是否可重复出现?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    当他们发现问题时,他们使用外部晶体。 昨天他们也尝试了振荡器,但问题仍然存在,即使振荡器正在正确生成时钟。
    我确信XRS不会发出脉冲。 这是有意义的,因为时钟缺失检测复位不会根据TRM将XRS降低。
    如果没有仿真器,则会出现该问题,并且在某些主板中也会出现该问题。

    我在TRM中找到了以下句子:
    软件应在重置后检查PLLSTS[MCLKSTS]位,以确定设备是否由重置
    MCLKRS由于缺少时钟条件。 如果已设置MCLKSTS,则固件应采取措施
    适用于系统,例如系统关机。 可通过写入清除缺失的时钟状态
    PLLSTS[MCLKCLR]位的1。 这将重置缺失的时钟检测电路和计数器。

    这是否意味着在重置一次后,我必须将1写入PLLSTS[MCLKCLR]位,否则丢失的时钟检测将继续重置设备?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您指的是哪个TRM? 提供文献编号。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    SPRUH18第91页。 MCLKRS仅为内部复位。 MCLKRS未将设备的外部XRS引脚拉低。
    第92页:
    软件应在重置后检查PLLSTS[MCLKSTS]位,以确定设备是否由重置
    MCLKRS由于缺少时钟条件。 如果已设置MCLKSTS,则固件应采取措施
    适用于系统,例如系统关机。 可通过写入清除缺失的时钟状态
    PLLSTS[MCLKCLR]位的1。 这将重置缺失的时钟检测电路和计数器。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    这是否意味着在重置一次后,我必须将1写入PLLSTS[MCLKCLR]位,否则丢失的时钟检测将继续重置设备?

     

    TRM明确地说:"如果写入MCLKCLR位后OSCCLK仍然丢失,则VCOCLK计数器再次溢出,该过程将重复"。

     

    但是,我们是否正在处理时钟缺失的情况仍然不清楚。 您尚未提供以下问题的答案:

     

    应用程序中是否使用了看门狗?

    仿真器是否出现问题? 如果是,是否可以停止执行以查看程序计数器的位置?

    是否在多个设备中出现这种情况?

    是什么引起了这种行为? 此问题是否可重复出现?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Howard:
    问题是否已解决?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的,谢谢。