工具/软件:Code Composer Studio
大家好、我使用 MSP430FR2433、我尝试使用 LPM4来省电。 然而、我的电流消耗为17uA、并且应该在 LPM4中禁用时钟、但我可以看到 PWM 为 P1、1。
您能就此问题发表评论吗?
是否可以在 LPM4和 LPM3之间切换?
我想使用 LPM4保持低功耗模式、然后比较器产生的高电平信号发送到中断引脚、LPM4被更改为 LPM3以在 P1.1上生成 PWM、但我无法确定。
如果有人评论这一点、我真的很感激!
谢谢你。
#include 短推 ADCValue; 短电流 ADCValue; 短 peakADCValue; 短引用值; int main (空) { WDTCTL = WDTPW + WDTHOLD; //停止看门狗计时器 PM5CTL0 &=~LOCKLPM5; P1DIR = 0xFF; //将所有 P1引脚的方向设置为输出 P2DIR = 0xFF; //将所有 P2引脚的方向设置为输出 P3DIR = 0xFF; P1OUT = 0; //将所有 P1引脚设置为低电平 P2OUT = 0; P3OUT = 0; _bis_SR_register (SCG0); //禁用 FLL CSCTL3 |= SELREF_REFOCLK; //将 REFOCLK 设置为 FLL 基准源 CSCTL0 = 0; //清除 DCO 和 MOD 寄存器 CSCTL1 &=~(DCORSEL_7); //首先清除 DCO 频率选择位 CSCTL1 |= DCORSEL_3; //设置 DCOCLK = 8MHz CSCTL2 = FLLD_1 + 121; // FLLD = 1、DCODIV = 4MHz _DELAY_CYCLES (3); _BIC_SR_register (SCG0); //启用 FLL while (CSCTL7 &(FLLUNLOCK0 | FLLUNLOCK1)); //轮询直到 FLL 锁定 CSCTL4 = SELMS_DCOCLKDIV | SELA_REFOCLK; //设置 ACLK = XT1 = 32768Hz、DCOCLK 作为 MCLK 和 SMCLK 源 CSCTL5 |= DIVM1; // SMCLK = MCLK = DCODIV/2 = 1MHz,默认情况下 P1DIR |= BIT1; // P1.1 P1SEL1 |= BIT1; // P1.1选项选择 TA0CCR0 = 320; TA0CCR1 = 85; TA0CCTL1 = OUTMOD_7; TA0CTL = tassel_1 | MC_1; // ACLK TA0CCTL0 &=~CCIE; _bis_SR_register (LPM4_BITS + GIE);//启用中断的 LPM4 }