别着急,坐和放宽
由于 GD32 没有 stm32 那样简单的图形化时钟树,芯片手册里的时钟树似乎也和代码中对不上。分频倍频后各个总线上的主频具体是多少需要额外检查。
使用以下方法
uint32_t uclk;
uclk = rcu_clock_freg_get(CK_APB1); // APB1总线时钟
uclk = rcu_clock_freg_get(CK_APB2); // APB2总线时钟
uclk = rcu_clock_freg_get(CK_AHB); // AHB总线时钟
uclk = rcu_clock_freg_get(CK_SYS); // 系统时钟
以及其他类似的时钟枚举量。
另外在类似 gd32f30x.h
这样芯片同名头文件中有 HXTAL_VALUE
宏决定外部晶振频率。