STM32温度传感器断电

STM32 Temperature sensor power off

我正在使用内部 ADC 温度传感器,在没有处于停止模式的传感器的低功耗设备中,uController 消耗大约 4 uA,但是当温度传感器打开时,消耗上升到 8-9 uA 问题是我无法关闭传感器/我只是通过 stmcube

将其关闭来测量关闭电流

我正在寻找可以关闭温度传感器的代码 到目前为止,我已经测试了这些:

1-

HAL_ADC_Init(&hadc);
hadc.Lock=HAL_UNLOCKED;
__HAL_UNLOCK(&hadc);
HAL_ADCEx_DisableVREFINTTempSensor();

2-

ADC1->CR&=0X00000000;
ADC->CCR&=~(1<<23);

我更喜欢使用 HAL,它似乎不会降低传感器的功率

我觉得你的 ADC1->CR &= 0x00000000; 行不对,这取决于你使用的控制器。

通常需要设置一个禁用ADC的位,而不是全写0。请尝试 ADC1->CR = (0x01 << 1);。如果您有 ST Micro 为您的处理器编写的定义 ADC1->CR = ADC_CR_ADDIS; 应该是相同的但更具可读性。禁用 ADC 后,您将能够关闭 ADC->CCRTSEN 位。