标题: HC32L130F8UA华大单片机低功耗问题 [打印本页]

作者: 张松松    时间: 2020-3-31 14:37
标题: HC32L130F8UA华大单片机低功耗问题
单片机上电初始化相关外设,比如UART0、ADC、TIME0,然后再调用__WFI();使单片机进入深度睡眠模式,发现单片机的耗电电流2ma左右。如果上电时,不初始化UART0、ADC、TIME0这些外设配置,单片机进入深度睡眠模式后,耗电电流就为70ua左右。这是什么原因喔?外部那些没用的引脚也都配置为输出低电平的,使用了的引脚都配置成和外部电路等电位。

作者: hubj627    时间: 2020-3-31 15:51
进入睡眠前,比如ADC,先关闭内部参考电源M0P_BGR->CR_f.BGR_EN = 0x0u;,然后关闭ADC时钟Adc_Disable();Sysctrl_SetPeripheralGate(SysctrlPeripheralAdcBgr, FALSE);;串口先把复用功能修改为普通IO功能,再关闭串口时钟,其他外设参考这样。唤醒后,需要的功能再配置一下,如ADC操作Sysctrl_SetPeripheralGate(SysctrlPeripheralAdcBgr, TRUE);Adc_Enable();M0P_BGR->CR_f.BGR_EN = 0x1u;注意唤醒和进入睡眠的这几句的顺序。你这个70ua功耗也还是大,外围硬件可能也需要优化,整个板级能降低到20ua以下。
作者: 张松松    时间: 2020-4-1 10:28
hubj627 发表于 2020-3-31 15:51
进入睡眠前,比如ADC,先关闭内部参考电源M0P_BGR->CR_f.BGR_EN = 0x0u;,然后关闭ADC时钟Adc_Disable();Sy ...

谢谢,按照你的上面说的,我试了下,ADC外设进入深度睡眠前这样配置,功耗确实降了一些。        M0P_BGR->CR_f.BGR_EN = 0x0u;
        Adc_Disable();
        Sysctrl_SetPeripheralGate(SysctrlPeripheralAdcBgr, FALSE);但是TIMER定时器外设,我在进入深度睡眠模式前,关闭了它的时钟,发现功耗还是没降下去。
作者: renjieyanhong    时间: 2020-8-3 08:43
您好!请问我用的引脚该如何配置?假如我使用过的的spi引脚,我做低功耗处理的时候,我是要将引脚重新配置成普通IO
作者: 天机菜鸟    时间: 2022-8-10 11:55
张松松 发表于 2020-4-1 10:28
谢谢,按照你的上面说的,我试了下,ADC外设进入深度睡眠前这样配置,功耗确实降了一些。        M0P_BGR->CR_f. ...

您好,我现在也是遇到了一样的问题,外设就用了ADC,TIM2,ADTTIM6,但是进深度休眠时功耗在140mA,请问您还收集到其他降低功耗的方法吗




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1