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.

[参考译文] MSP430F5172:用于 DMA 和定时器的 CPUOFF

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1021520/msp430f5172-cpuoff-for-dma-and-timers

器件型号:MSP430F5172

当我们有一个低功耗模式中断时会发生什么情况? 我正在使用 DMA 获取 ADC 值、每当发生这种情况时、LPM0都会启用。 当我在 main 的 while 循环中注释这行代码时、我无法获得正确的 ADC 值。

 _bis_SR_register (CPUOFF + GIE);// LPM0、ADC10_ISR 将强制退出

while (1)

while (ADC10CTL1 & BUSY);//如果 ADC10内核处于活动状态则等待
ADC10CTL0 |= ADC10ENC + ADC10SC;//采样和转换准备就绪
//_bis_SR_register (CPUOFF + GIE);// LPM0、ADC10_ISR 将强制退出

//__delay_cycles (5000);//序列转换之间的延迟
__no_operation ();//断点;检查 ADC_Result

在 ADC 中使用 DMA 时、CPU 是否需要关闭? 应使用哪种低功耗模式?

我担心这一点、因为我将使用 ADC 值来生成占空比以控制电源转换器。 当 CPU 关闭时、计时器模块会发生什么情况? 这会影响转换器的运行吗?

谢谢你。   

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

    DMA 的任何一种方式都可以正常工作、因此问题必须在代码中的其他位置。

    ADC 也无关。 它可能关心它的时钟源。

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

    感谢您的回复、但启用 CPUOFF 模式后会发生什么情况? PWM 生成是否会停止或计时器模块是否会变为未激活状态?

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

    关闭 CPU 对计时器所依赖的时钟没有影响。 CPUOFF 仅执行它所说的操作、不再执行。

    本手册对此进行了详细介绍。

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

    是的、器件手册对此进行了说明。  我查看了用户指南。

    实际上、我把它与低功耗模式相混淆、低功耗模式 可以禁用内部时钟、而 CPUOFF 不禁用内部时钟。 谢谢你。