华大HC32L136--低功耗ADC功耗过高问题
1.进入低功耗前,关闭ADC对应的时钟Sysctrl_SetPeripheralGate(SysctrlPeripheralAdcBgr, FALSE);
Bgr_BgrDisable();
2.要重新初始化AD
// 使用直接赋值的方式
M0P_ADC->CR0 = 0x27F0; 顺序错了,进入低功耗模式前,先关BGR,再关外设时钟
Bgr_BgrDisable();
Sysctrl_SetPeripheralGate(SysctrlPeripheralAdcBgr, FALSE); 在关BGR前,还要关ADC 只关闭ADC是不好使的
应该说这样处理远远不够
只关闭时钟不行的
现在功耗值是多少啊
其他未使用的资源也要进行关闭或者配置
还有其它没使用的外设也要一起关掉才行,不能只关闭ADC,还有没有用的IO也要按照手册要求配置。
页:
[1]