鉴于原 SDK 不同情况下需要配置不同的系统频率,导致频率相关的控制宏过多,调用的地方也多,维护起来非常麻烦,新版 SDK 引入自适应时钟策略,调用 clk_set() 函数会触发系统将系统频率调到最大,然后通过统计操作系统跑 idle 任务的时间,自动往下降。自适应模块默认最小时钟为 24M,外部可通过 clock_alloc()接口在叠加一个频率作为最小频率,系统降到最小频率后会停止检测。
杰理之自适应时钟【篇】
![](https://img-home.csdnimg.cn/images/20240711042549.png)
鉴于原 SDK 不同情况下需要配置不同的系统频率,导致频率相关的控制宏过多,调用的地方也多,维护起来非常麻烦,新版 SDK 引入自适应时钟策略,调用 clk_set() 函数会触发系统将系统频率调到最大,然后通过统计操作系统跑 idle 任务的时间,自动往下降。自适应模块默认最小时钟为 24M,外部可通过 clock_alloc()接口在叠加一个频率作为最小频率,系统降到最小频率后会停止检测。