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.

[参考译文] TMS320F280049:热复位晶体振荡器行为

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1333254/tms320f280049-warm-reset-crystal-oscillator-behaviour

器件型号:TMS320F280049

您好!
晶体振荡器在复位期间是否停止? 并且即使在热复位后也必须进行恢复?
客户正在进行热复位(看门狗复位)、有时振荡器没有出现。

此致、Holger

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

    Holger、

    是的、当 XRSn 被置位时、它复位 OSCOFF 位、这会将 X2返回到 GPIO18中、所以客户需要重新完成振荡器启动过程。  但即使是 WD 复位也会强制代码通过其引导 ROM/过程和上电期间的相同设置例程返回。

    客户是否遵循 TRM 中的时钟设置过程:

    3.7.7使用外部晶体或谐振器
    X2引脚兼用作 GPIO18。 加电时、处于 GPIO 模式、而片上晶体振荡器断电。
    以下过程可用于将该引脚切换至 X2模式并启用振荡器:
    1.清除 XTALCR。 OSCOFF 位。
    2.等待晶振上电。 1ms 是典型的等待时间、但这取决于正在
    数据协议。
    3.通过向 X1CNT.CLR 写入1来清除 X1计数器,并继续清除直到
    X1CNT 寄存器不再饱和1023 (0x3ff)。
    4.等待 X1CNT 寄存器中的 X1计数器值达到1023 (0x3ff)。
    5.再重复步骤3-4三次。
    6.通过向 CLKSRCCTL1.OSCCLKSRCSEL 写入1来选择 XTAL 作为 OSCCLK 源。
    7.检查 MCDCR 寄存器中的 MCLKSTS 位。 如果被置位、则振荡器尚未完成上电、
    需要更多时间:
    a.通过向 MCDCR.MCLKCLR 写入1来清除缺少时钟的状态。
    b.重复步骤2-7。 请勿复位器件。 这样做将使振荡器断电、这需要
    从步骤1开始重新启动过程。
    c.如果振荡器没有在10毫秒内完成上电、则会发生实际的时钟故障。
    8.如果 MCDCR. MCLKSTS 清零、振荡器启动成功。 系统时钟现在源自
    XTAL。

    此致!

    马修