狗啃模拟 发表于 2022-1-26 23:49

华大HC32L136--低功耗ADC功耗过高问题

1.进入低功耗前,关闭ADC对应的时钟

Sysctrl_SetPeripheralGate(SysctrlPeripheralAdcBgr, FALSE);
Bgr_BgrDisable();


狗啃模拟 发表于 2022-1-26 23:50

2.要重新初始化AD
// 使用直接赋值的方式
M0P_ADC->CR0 = 0x27F0;

martinhu 发表于 2022-1-27 14:33

顺序错了,进入低功耗模式前,先关BGR,再关外设时钟
Bgr_BgrDisable();
Sysctrl_SetPeripheralGate(SysctrlPeripheralAdcBgr, FALSE);

wubangmi 发表于 2022-1-27 16:29

在关BGR前,还要关ADC

drer 发表于 2022-2-7 13:03

只关闭ADC是不好使的

coshi 发表于 2022-2-7 13:51

应该说这样处理远远不够

kxsi 发表于 2022-2-7 14:43

只关闭时钟不行的

wiba 发表于 2022-2-7 15:23

现在功耗值是多少啊

qcliu 发表于 2022-2-7 15:53

其他未使用的资源也要进行关闭或者配置

天意无罪 发表于 2022-2-7 16:27

还有其它没使用的外设也要一起关掉才行,不能只关闭ADC,还有没有用的IO也要按照手册要求配置。
页: [1]
查看完整版本: 华大HC32L136--低功耗ADC功耗过高问题