我正在使用MSP430FR5969并试图将其置于LMP4模式。我无法在启用全局中断的情况下进入LPM4模式。我使用的代码如下。是否有我遗漏或做错的事情?
整个代码可以在这个link中看到。
int main(void) {
Init_Clock();
Init_GPIO();
Init_UART();
printf("test \n");
__delay_cycles(1000);
EUSCI_A_UART_disable(EUSCI_A0_BASE);
reset_gpio();
PMMCTL0_H = PMMPW_H; // Open PMM Registers for write
PMMCTL0_L &= ~(SVSHE); // Disable high-side SVS
PMMCTL0_L |= PMMREGOFF; // and set PMMREGOFF
PMMCTL0_H = 0; // Lock PMM Registers
__bic_SR_register(GIE);
__bis_SR_register(LPM4_bits);
__no_operation();
}
字符串
1条答案
按热度按时间ryhaxcpt1#
我不是在阅读你的代码。但我会提醒你,某些外围设备和时钟对比可以干扰低功耗模式,甚至是一个挂起的中断。审查特定的数据表和家庭指南的低功耗模式部分。是的,你会更好地了解你的目标芯片。5969确实可以踢屁股,但它是最复杂的msp430的之一。