stm32F103采用内部晶振8MHz时钟和外部晶振初始化代码

本文详细介绍如何使用STM32F10x系列MCU的HSE和HSI配置系统时钟,包括复位RCC寄存器、使能晶振、配置锁相环等步骤,并确保PLL稳定作为系统时钟。

使用HSE配置系统时钟(stm32F10x 系列 外部晶振一般为4M–25MHz,具体见芯片手册)
首先需要复位RCC寄存器!
使能HSE
判断HSE是否启动成功
使能预取指
设置FLASH等待周期
配置3条总线的倍频因子
配置锁相环,使能锁相环
等待锁相环稳定
选择锁相环输出为系统时钟,并等待其稳定

设置时钟流程:
1、将RCC寄存器重新设置为默认值  RCC_DeInit
2、打开外部高速时钟晶振HSE    RCC_HSEConfig(RCC_HSE_ON);
3、等待外部高速时钟晶振工作    HSEStartUpStatus = RCC_WaitForHSEStartUp();
4、设置PLL              RCC_PLLConfig
5、打开PLL              RCC_PLLCmd(ENABLE);
6、设置系统时钟          RCC_SYSCLKConfig
7、设置AHB时钟           RCC_HCLKConfig;
8、设置低速速AHB时钟      RCC_PCLK1Config
9、设置高速AHB时钟        RCC_PCLK2Config;
10、等待PLL工作          while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET) 
11、判断是否PLL是系统时钟  while(RCC_GetSYSCLKSource() != 0x08)
12、打开要使用的外设时钟   RCC_APB2PeriphClockCmd()/RCC_APB1PeriphClockCmd()

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值