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.

[参考译文] MSP430FR5738:有时无法进入 LPM3.5

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1033928/msp430fr5738-can-not-enter-lpm3-5-sometimes

器件型号:MSP430FR5738

尊敬的团队:

以下是寄存器无法休眠时输出的值。 目前无法确定出什么问题

代码如下所示

if (SYSRSTIV == SYSRSTIV_LPM5WU) {
        //reset from LPM35
        clockInit();
        rtcReStart();
        __enable_interrupt();
        taskRun();
        enterLPM35();
    } else {
        //POR init
        clockInit();
        rtcInit();
        enterLPM35();
    }
}

static void enterLPM35(void)
{
    PMMCTL0_H = PMMPW_H;
    PMMCTL0_L &= ~SVSLE;
    PMMCTL0_L |= PMMREGOFF;
    PMMCTL0_H = 0;
    __enable_interrupt();
    __bis_SR_register(LPM3_bits + GIE);      // LPM3 + Enable interrupt
}

如果无法进入睡眠模式、程序将运行到无限循环中。 目前、它有时会进入无限循环。 不应出现此位置。 在正常情况下、CPU 内核电源将在_bis_sr_register (LPM3_bits + GIE)之后切断、并且不会继续运行。

从勘误表中可以看出、调试模式会导致睡眠故障。 我还尝试在 TEST 引脚上使用4.7K 下拉电阻器、以防止 TEST 被拉高。 四个 IO PJ0-PJ3都设置为输出、但仍无法进入睡眠模式。

请帮助检查此问题。

BR、

Susan

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

    让我们用中文线程来跟踪它  

    e2echina.ti.com/.../msp430fr5738-lpm3-5