STMF429ZI Clock Configuration

Hi everyone,

I’m trying to configure the clock frequency of the stmf32429zi board but don’t know how to do this. I’ve searched the entire documentation on Zerynth about this but can’t find it anywhere. Is it possible to change the clock frequency on this board? If not, is there a way for me to find out what the frequency is being ran at on Zerynth?

hi @swwalto1
How would you change the clock frequency of the board according to the documentation of the board?
It depends on the ways of changing it, maybe we can look for a way to implement it in Zerynth.

Hi, thank you for the reply.

I’m not sure how I would change the clock frequency which is why I am asking. It doesn’t matter if I change the frequency or not, most importantly I’d like to know what the clock frequency is when the Zerynth code is running (such as some function I could run that gets this information and outputs it to the user). From what I’ve found, the documentation just shows the device summary for the board (Clock Speed: 180MHz). Does this mean that this is the speed on the board when the Zerynth code is compiled and ran on or the max speed it can achieve?

Normally during the development of the VM of the device, The default frequency clock is used as-is, So if the 180Mhz is the default clock frequency then this is the one used by Zerynth VM.
But Let me check to be sure of the exact clock freqency and get back to you.

Okay sounds good. Thank you!

Hey,

I was just wanting to follow up. Were you able to find anything about the clock frequency?

Thanks.

Hello? I was just wondering if there was any update on this?

Hi
Sorry for the late reply.
You can use this variable to output the system clock.
Call this C function from python file as in C language example.

#define ZERYNTH_PRINTF                  //we define this macro to use "printf" function.
#include "zerynth.h"                    //this is mandatory

C_NATIVE(_my_c_function){
        C_NATIVE_UNWARN();              //must be included at the start of a called c function.

extern uint32_t SystemCoreClock;        
uint32_t system_clock;
system_clock= SystemCoreClock ;
printf("system_clock = %d",system_clock);


        return ERR_OK; //<-- execution ok                                       //the timeout is given as 0 millis.
}

The serial console will output the running clock frequency.