Question
STM32U575CGU3: ADC_Init enables analog bias that cannot be disabled by ADC_DeInit?
Hi,
On STM32U575CGU3, calling MX_ADC1_Init() once increases the device current by about +200 µA. After that, even if I run HAL_ADC_DeInit(), reset ADC1, and disable VddA, the extra +200 µA current does not disappear.
Here is the minimal code:
c
int main(void)
{
HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
MX_GPDMA1_Init();
MX_ADC1_Init(); // <-- Base +200uA increase
MX_OCTOSPI1_Init();
MX_SPI1_Init();
MX_USB_OTG_FS_PCD_Init();
MX_USART1_UART_Init();
MX_ICACHE_Init();
// ADC Disable
HAL_ADC_DeInit(&hadc1); // <-- This does NOT reduce the +200uA
__HAL_RCC_ADC1_FORCE_RESET();
__HAL_RCC_ADC1_RELEASE_RESET();
HAL_PWREx_DisableVddA();
while (1) {
__NOP();
}
}
Question
Does ADC_Init enable an internal analog bias that cannot be fully disabled by ADC_DeInit, ADC reset, or VddA OFF? Is there any complete shutdown procedure to fully power down ADC/VREFBUF after initialization?
Thanks.
