cancel
Showing results for 
Search instead for 
Did you mean: 

STM32G0 minimum ADC frequency

GrahamAU
Associate II

I'm configuring an STM32G031, using the STM32CubeMX perspective in STM32CubeIDE.  I want to optimise for low power consumption.  My device uses the ADC and I see the ADC has a minimum acceptable frequency, 140kHz according to the data sheet (data sheet table 57, fADC must be at least 0.14MHz).

I've configured the clock so that SYSCLK = 2MHz (HSI 16 MHz oscillator, divided by 8).  The ADC clock is also shown as 2MHz.  That makes sense.

But in the ADC configuration panel, the only clock options I can select are "sync divided by 1" or "async divided by 1".  I expected to be able to select higher dividers, down to "async / 8" (which would be 250kHz).  I can't even select "sync/async divided by 2" (which would be 1MHz).  All those slower options are greyed out, and when I mouse over them there's a tooltip that says something like "prescaler does not respect fADC fmin fmax conditions" or something like that.

Is this a configuration error in CubeMX, or have I misunderstood how the minimum ADC frequency works?  I couldn't find any app note that discussed minimum frequency, although there are plenty discussing maximum frequency!

2 REPLIES 2
Souhaib MAZHOUD
ST Employee

Hello @GrahamAU 

Thank you for bringing this issue to our attention.
I will escalate the issues to our CubeMX team for analysis and tracked by the Ticket 199353 (for internal follow-up).

BR,

Souhaib

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Can't you pace it at whatever rate you want via a TIM trigger?

The ADC clocking determines how it samples

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..