STM32L4 系列J-Link下载固件后不断电重新上电内核电压在STOP2模式下存在问题的解决

         现象:使用J-Link下载代码后,STM32L4进入STOP2模式,内核电压1.28V依旧存在,STOP2下内核调压器、大部分时钟应该全关闭,以达到最低功耗。

        解决思路:断电,重新上电开机,进入STOP2模式正常。但实际上,电池供电,一般不会轻易断电。因此通过调试,发现了解决方法,为STM32L4 DEBUG寄存器配置问题。

 

      J-Link下载后,会打开STM32L4 DEBUG寄存器里的调试功能,也就是可以让STM32L4 在Sleep、STOP、StandBy模式下,可以调试MCU。

        开机初始化时,关闭DEBUG的调试功能,就可以解决这个问题。

 


void stm32_disable_dbgmcu(void)
{
	HAL_DBGMCU_DisableDBGStopMode();
	HAL_DBGMCU_DisableDBGSleepMode();
	HAL_DBGMCU_DisableDBGStandbyMode();
}

经过实际验证,固件使用J-Link下载后,不断电,系统进入STOP2模式,STM32内核电压关闭了。功耗正常。

 

你可能感兴趣的:(嵌入式软件)