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.

[参考译文] MSPM0L1306:内部时钟输出

Guru**** 2393725 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1370797/mspm0l1306-internal-clock-output

器件型号:MSPM0L1306

工具与软件:

我将输出内部时钟(设置为4MHz)并使用示波器对其进行监控、但是
如下图所示、当 GPIO 输出切换至高电平或低电平时、内部时钟的输出波形变得奇怪。 (输出电压变为低电平、周期异常。)

橙色波形是 GPIO 输出、蓝色波形是内部时钟输出。

为什么会发生这种情况?
此外、我将内部时钟用于计时器操作、这是否会产生任何影响?
请检查。

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

    您好!

    您能分享您的代码吗、我会给大家做一个测试。

    此致、

    Zoey

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

    您好!

    感谢您提供的信息、我将逐步测试以找到根本原因。

    顺便说一下、您可以共享 syscfg 文件、我认为这是快速了解时钟配置的最佳方法。

    B.R.

    Zoey

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

    e2e.ti.com/.../syscfg.zip

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

    您好!

    我从我这边进行了测试。 当 MCU 进入 GPIO 中断而不触发计时器比较时、一切就顺利进行。 您 还能试一下吗?

    我想清楚地说明 橙色波形就是哪个 GPIO。  

    此致、

    Zoey

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

    「当 MCU 进入 GPIO 中断而不触发计时器比较时、一切就会顺利进行。」

    以上是什么意思? 我想知道更多关于它的信息。

    橙色波形使用 USER_LED_1 =引脚27作为输出。

    此外、引脚16和引脚17用作输出、
    如果任何输出被反转、则频率输出将是奇怪的。

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

    您好、 

    Zoey 在接下来的两周里为 OOO。

    我将帮助 Zoey 测试此问题。

    此致、

    Helic

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

    您好!  

    我已经重现此问题并尝试找到解决该问题的方法~

    可能是 SYSOSC 设置为4MHz 时 GPIO 中断引起的。

    e2e.ti.com/.../E2E_5F00_SYSOSC4MHz_5F00_CLKOutput_5F00_L1306_5F00_nortos_5F00_ticlang.zip

    此致、

    Helic

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

    感谢您的调查。
    我知道当发生 GPIO 中断时也会出现这个问题。
    首先、如果您能找到一种解决方案来防止当 GPIO 输出从高电平变为低电平或从低电平变为高电平时发生此问题、我将不胜感激。
    此外、如果在主程序中将输出反转、则可能不会出现该问题、但如果在 GPIO 中断后的子例程中将输出反转、则会出现该问题吗?
    提前感谢您。

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

    您好、 

    我正在联系设计团队以确认该时钟输出问题。

    回复可能需要一些时间。

    此致、

    Helic

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

    您好!  

    您可以在系统初始化完成后尝试运行此 API 吗?
    DL_SYSCTL_disableFastCPUEventHandling ()

    这将在发生中断时禁用 SYSOSC 从4MHz 到32MHz 的切换。 (用于更快地响应中断)

    我认为这会对您大有帮助、因为我测试了 SYSOSC=SYSOSC= 32MHz、不存在时钟输出问题。

    此致、

    Helic

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

    在当前程序中、这是否意味着当中断发生时频率会从4MHz 切换到32MHz?
    然后它在中断后返回到4MHz?
    这个频率开关是否是问题的原因?

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

    您好!  

    然后它在中断后返回4MHz?

    完成中断进入后、它应返回到4MHz。

    当运行中断处理程序(例如开关和 GPIO 切换)时、CPU 仍在4MHz 上运行。

    此频率切换是否是问题的原因?

    是的、 这可能是原因。

    此致、

    Helic