STM32CubeMX配置STM32F103外部时钟源

1.硬件配置介绍

使用的是正点原子的精英STM32F103开发板,型号为STM32F103ZET6。
该开发板的HSE外接的时钟是8M的晶振;

LSE外接的是频率为 32.768kHz 的石英晶体,这个主要是 RTC 的时钟源。

2.STM32CubeMx配置时钟源

打开CubeMx后,默认配置大致如下图所示:

可以看到,默认在时钟源配置界面并不能进行设置HSE和LSE,需要在Pinout&Configuration界面的RCC中使能对应的高低速时钟配置,如下图所示:

高速和低速配置均有三个选项:

 直接选第三个即可,第二个BYPASS Clock Source是旁路时钟源,指无需使用外部晶体时所需的芯片内部时钟驱动组件,直接从外界导入时钟信号,使用外部晶振时不能选择旁路时钟源。

将高速和低速的都选择Crystal/Ceramic Resonator后,切换到时钟配置界面,如下:

发现HSE可以选择外部时钟源了,但LSE仍然不能选择,因为LSE主要是给RTC用的,所以是不是还需要配置RTC使能呢?

重新在Pinout&Configuration界面使能RTC,勾选activate clock source即可,其他无改动:

 再切换到时钟配置界面,发现可以对LSE进行配置了,将HSE和LSE配置,其他参数默认即可,暂时不需要调节时钟频率,重新生成代码即可。

 


 

### 配置STM32F103C8T6内部时钟 #### 使用STM32CubeMX配置内部时钟 在启动新的项目并选择了目标微控制器STM32F103C8T6之后[^1],接下来可以按照如下方式配置内部时钟: #### 设置系统核心频率 进入Clock Configuration选项卡,在这里可以通过图形界面调整PLL(锁相环)、AHB/APB总线预分频器以及SYSCLK源的选择。对于大多数应用来说,默认的HSI振荡器可能已经足够;然而为了获得更高的精度和稳定性,通常会选择HSE作为系统的主时钟源。 如果希望启用内部高速RC振荡器(HSI),则无需额外操作因为它默认开启。要提高性能或满足特定需求,则可以选择外部晶振(HSE)并通过PLL倍频得到所需的最终工作频率。 #### 修改时钟树参数 - **选择时钟源**:点击System Core Clock旁边的下拉菜单,可切换不同的时钟源如HSI, HSE等。 - **配置PLL设置**:当使用HSE时,需设定合适的MUL(乘法因子)与DIV(除法因子),从而计算出期望的核心运行速度。 - **更新所有外设时钟**:确保所有必要的外设都得到了适当的速度分配,这一步骤会自动完成,但仍建议检查各部分的具体数值是否符合预期。 #### 应用更改并生成代码 完成上述配置后保存工程文件,并让STM32CubeMX自动生成初始化程序片段。这些代码将会被嵌入到项目的main.c文件中,负责在应用程序开始前正确地初始化硬件资源,包括所选中的时钟体系结构。 ```c // 示例:生成的部分时钟初始化代码位于stm32f1xx_hal_msp.c内 void SystemClock_Config(void){ RCC_OscInitTypeDef RCC_OscInitStruct = {0}; RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; // 初始化RCC Oscillators... } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值