请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号: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