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.

[参考译文] RTOS/TM4C1294NCPDT:Tiva C 振荡器启动时间

Guru**** 2468610 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/676162/rtos-tm4c1294ncpdt-tiva-c-oscillator-startup-time

器件型号:TM4C1294NCPDT

工具/软件:TI-RTOS

您好!

Tiva C 示例代码的 TIRTOS 是否考虑晶体振荡器的启动时间?

目前、我们使用的是 tirtos_tivac_2_16_01_14中的以太网示例代码、
但无法找到晶体设置的确切位置、  它是否包含晶体启动时间的适当延迟?

所有示例代码都具有以下初始化函数、但没有时钟设置。

Board_initGeneral();
Board_initGPIO();
Board_initEMAC();

此致
巴杜语

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

    您好!

     您可以在引导模块中看到时钟配置。 请参阅下面的内容。 我想 TI-RTOS 会在启动期间推断正常的 TivaWare 时钟配置代码。

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

    感谢您的快速回复。

    但我在 cfg 脚本或 RTOS 相关源中找不到为振荡器分配的等待时间以使其稳定。
    我们不应该考虑时钟稳定时间? 根据数据表、晶体至少需要8ms 才能稳定。
    我无法理解如何在 RTOS 中处理它。

    此致
    巴杜语
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Paddu、
    正如我提到过的、TI-RTOS 重新使用了大量 TivaWare 启动代码。 考虑到这一点、将考虑振荡器启动时间。 例如、如果你转到针对 SysCtlClockFreqSet()的 TivaWare API 源、你将找到下面的片段来等待振荡器启动时间。

    //
    //使用传统延迟值超时。
    //
    ui32Delay = 524288;

    while ((HWREG (SYSCTL_RIS)& SYSCTL_RIS_MOSCPUPRIS)==0)

    ui32 Delay--;

    if (ui32Delay = 0)

    中断;


    //
    //如果主振荡器启动失败,则不要切换到
    //它并返回。
    //
    if (ui32Delay = 0)

    返回(0);