cancel
Showing results for 
Search instead for 
Did you mean: 

ADC max clock for STM32H7(47) is wrong

Despair1337
Associate III

Hello,

STM32CubeIDE  1.5.1, latest H7 package for STM32Cube.

I have STM32H747-DISC1 board, and STM32CubeMX (in IDE) let me pick max. 36 MHz clock.

According to the datasheet STM32H747xI/G datasheet, ADC clock frequency get up to 50 MHz. I overriden frequency on ADC, and it works fine, so I guess this is a bug.

0693W000007CsutQAC.jpg

1 ACCEPTED SOLUTION

Accepted Solutions

Hi @Despair1337​ ,

Let me first inform you that there is known data refresh issue with ADC which is reported internally to be fixed. Sorry for the inconvenience.

Thus, I propose a simple workaround in order to save the modification once you change Power Regulator Voltage Scale :

1- Set the Power Regulator Voltage Scale to VOS0.

2- From the File menu click on Save Project (or use Ctrl-S Keyboard shortcut)

3- From the same File menu re-Load Project (or use Ctrl-L Keyboard shortcut)

I have attached a screen recording to more explain the process.

Khouloud.

View solution in original post

8 REPLIES 8

Hi @Despair1337​ 

Thanks for your feedback, but the problem doesn't seem so clear to me. Do you mean that you're not able to set the ADC frequency to its maximum value 50 MHz using STM32CubeMX ? Please correct me if I misunderstood.

Your precision will be helpful to find easier the issue.

Thanks in advance 🙂

Khouloud.

Dear Kholoud.

Exactly. When I set 50 MHz to ADC peripheral, in ADC configuration tab, I can pick clock prescaler only 2 and more.

When I set 36 MHz to ADC peripheral, I can set prescaler to 1. This means I can't use ADC to maximum frequency.

(Only if I override it).

0693W000007Cwl2QAC.png 

Thanks.

Hi @Despair1337​ ,

Thank you for this clarification. I still can't reproduce the issue from my side. Could you please attach your .ioc file for further check ?

But as far as I can guess , this can be related to RCC Settings in CubeMX. In fact backing to STM32H747 Reference manual and more precisely in 9.5.8 Kernel clock selection section, Table 61 shows the kernel clock that the RCC can deliver to the peripherals:

0693W000007CzvyQAC.png 

Please check the Power Regulator Voltage Scale in CubeMX:

0693W000007D0IdQAK.png 

Feel free to come back to me if your issue isn't resolved.

Khouloud.

Hi @Khouloud OTHMAN​ ,

Check .ioc in attachments. Also, I recorded video, I just can't set the frequency so ADC can have more than 36 MHz in final (after prescale).

Video is here .

Thank you for your time. With regards,

Marek Kraus

Hi @Despair1337​ ,

Let me first inform you that there is known data refresh issue with ADC which is reported internally to be fixed. Sorry for the inconvenience.

Thus, I propose a simple workaround in order to save the modification once you change Power Regulator Voltage Scale :

1- Set the Power Regulator Voltage Scale to VOS0.

2- From the File menu click on Save Project (or use Ctrl-S Keyboard shortcut)

3- From the same File menu re-Load Project (or use Ctrl-L Keyboard shortcut)

I have attached a screen recording to more explain the process.

Khouloud.

Find attached also the .ioc file with the changes I've done.

Hi @Khouloud OTHMAN​ ,

The data refresh issue was the problem!

Thank you for your time, problem solved! 🙂

Hi @Despair1337​ ,

Happy that the problem is solved 🙂 and sorry again for the inconvenience.

Feel free to raise any issue or feedback.

You're always welcome.

Khouloud.