STM32如何测量运行的时钟频率

前言

环境:

芯片:STM32F103C8T6

Keil:V5.24.2.0


一、简介STM32F103C8T6的时钟源

①HSI 内部高速时钟,RC振荡器,频率为8MHz,精度不高。
②HSE 外部高速时钟,可接石英/陶瓷谐振器,频率范围为4MHz~16MHz,一般是8MHZ。
③LSI 内部低速时钟,RC振荡器,频率为40kHz,精度不高。
④LSE 外部低速时钟,接频率为32.768kHz的石英晶体。

⑤SYSCLK系统时钟,三个来源HSI(8M)、PLLCLK(4M-128M)、HSE(4-16M)。一般是通过PLLCK倍频设置为72M,即SYSCLK=PLLCK=72M

二、查看运行频率

在main()函数里增加以下代码

复制代码
 if(1)
 {                
        RCC_ClocksTypeDef rcc_clocks; //定义结构体变量
      
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);          //设置NVIC中断分组2:2位抢占优先级,2位响应优先级

        RCC_GetClocksFreq(&rcc_clocks);//获取不同时钟频率
          while(1)
        {        

        }         
 }

在while循环中断里打红点中断,之后查看rcc_clocks参数的值,我的结果如下,换算后是24Mhz

相关推荐
chao1898441 小时前
STM32 HAL库驱动AT24C02 EEPROM例程
stm32·单片机·嵌入式硬件
不会武功的火柴2 小时前
SystemVerilog语法(8)-有限状态机(FSM)
嵌入式硬件·fpga开发·自动化·ic验证·rtl·uvm方法学
猫猫的小茶馆4 小时前
【Python】函数与模块化编程
linux·开发语言·arm开发·驱动开发·python·stm32
feifeigo1234 小时前
STM32矩阵键盘驱动(库函数版)实现
stm32·矩阵·计算机外设
嵌入式小站5 小时前
STM32 零基础可移植教程 05:按键消抖,为什么按一次会触发好几次
chrome·stm32·嵌入式硬件
czhaii5 小时前
跟我动手学FX系列PLC GX2环境
嵌入式硬件
拾知_H6 小时前
STM32/Delay延时函数编程思路
stm32·单片机·时钟·延时
2zcode7 小时前
基于STM32的智能扫地机器人设计与实现
stm32·嵌入式硬件·机器人
jllllyuz8 小时前
单相并网逆变器控制代码实现(STM32版)
stm32·单片机·嵌入式硬件
冉卓电子9 小时前
GD32C103RBT6 misc 内核驱动库极简解析
单片机·嵌入式硬件