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.

[参考译文] MSPM0G3519:当以低于 32MHz 的电压运行时、ULPCLK 在 ADC 转换期间发生变化

Guru**** 2928930 points

Other Parts Discussed in Thread: MSPM0G3519

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1648764/mspm0g3519-ulpclk-changing-during-adc-conversion-when-operating-at-less-than-32-mhz

器件型号: MSPM0G3519

您好、

我将在 MSPM0G3519 评估板上进行测试。 SYSOSC 4MHz。 ADC CLK ULPCLK。 CLK_OUT ULPCLK/16。 测量内部温度。 温度读数正常工作。 我在 SYSOSCCFG 中和 ADC 配置中禁用了所有快速时钟请求。 我将获得 ULPCLK 开关频率。 如果我没有进入 STOP1、则频率在整个转换过程中保持较高。  

这对我来说是个问题、因为我想保持稳定的 SYSOSC 频率。  

处理器时钟似乎未按所述方式运行。 感谢您查看我的请求。

谢谢、

Stephen

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

    尊敬的 Stephen:

    您能否检查您的程序中是否有以下配置?

    • 将 SYSOSC 频率配置为 4MHz:DL_SYSCTL_setSYSOSCFreq(DL_SYSCTL_SYSOSC_FREQ_4M);
    • 通过以下方式禁用所有异步快速时钟请求:DL_SYSCTL_blockAllAsyncFastClockRequests()
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Pengfei、

    感谢您的反馈。 我检查了设置、它们符合您的建议。 USE4MHZSTOP=1、FREQ=1、即 4MHz BLOCKASYNCALL=。

    SYSOSCCFG:00010101 MCLKCFG:00401000 PMODECFG:00000000 SCR:00000004
    停止 1 温度:20 C

    在 ADC 转换开始之前、处理器在 4MHz 下运行。 这由 CLK_OUT 确认。 在 STOP1 期间、时钟返回到 4MHz。

    如果我没有进入 STOP1 并循环等待转换完成、则时钟会在整个转换时间保持在 32MHz、并仅在最后切换回 4MHz 如果我在参考指南第 1132 页底部阅读了“常见 ADC 用例“、我会看到如果在运行期间发生触发、在本例中就是这种情况、则转换应在不更改 SYSOSC 频率的情况下运行。 我很困惑。

    Stephen

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

    尊敬的 Stephen:

    我在“TRM 常见 ADC 用例“一章中看到、如果 MCU 从 STOP1 模式唤醒、则会强制使用 SYSOSC。 我不确定能否分享您的示例、该示例可以重现您提到的频率开关序列、这样我也可以从我这边进行测试和分析?

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

    Claude 帮助我隔离了一些测试代码。 请参阅随附的。 在 IAR 中编译。 可在 MSPm0G3519 评估板上运行。 将探头连接到 PB28 以触发时钟、并连接 PA7 以进行时钟。

    #define USE_STOP1_WAIT 1 //设置为 1 或 0 以进入 STOP1 模式或者不进入。

    我请注意、调试器可以在连接并激活时更改时钟。  

    如果我可以提供更多 info.e2e.ti.com/.../TEST_5F00_ADC.zip 帮助、敬请告知

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

    尊敬的 Stephen:

    我可以从我的测试中看到您的描述。 让我在内部进行检查。 谢谢。

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

    谢谢。 期待听到结果。  

    我认为 UART 可能会导致类似的频率凸点。  

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

    尊敬的 Stephen:

    当我在内部进行检查时、根据设计、SYSOSC 时钟将始终处于启用(如果已禁用)状态、并在收到 ADC 转换请求时切换到 32MHz。 即使 BLOCKASYNCALL 为 1、也会发生这种情况。

    我们计划修改技术参考手册中有关 ADC 转换期间 SYSOSC 频率行为的相应描述、由此给您带来的不便、我们深表歉意。

    对于 UART、如果  禁用了异步快速时钟请求、我认为 UART 传输不会导致我的测试中的 SYSOSC 问题相同。  

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

    嗨、Pengfei、

    谢谢。 由于时钟发生变化、这确实使得 ADC 采样和转换时间难以预测。 唯一可靠的方法是在使用 ADC 时将 SYSOSC 设置为 32MHz。 这会产生功率影响。 我期望最初仅在 SYSOSC 关闭时启用或更改 SYSOSC、并触发转换是应该的方式。

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

    尊敬的 Stephen:

    事实上在 ADC 转换期间将始终触发到 32MHz、因此您认为在 ADC 转换之前手动将 SYSOSC 切换为 32MHz 是可以接受的吗? 由于我们无法在 ADC 转换期间避免 SYSOSC 切换到 32MHz、因此通过手动切换 SYSOSC 频率、采样时间变得可预测。