首页 > 其他 > 详细

STM32F103 ------ 时钟配置

时间:2018-07-14 21:54:10      阅读:245      评论:0      收藏:0      [点我收藏+]

由于stm32的库默认是外部晶振8M的情况下实现的,所以配置波特率的时候也是按8M,包括主频,如果用12M晶振就需要改动几个地方: 
在system_stm32f10x.c中找到相应类型的文件,进行如下修改。 
1)72M主频: 
8M时: 
RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9); 
12M: 
RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL6); 
2)stm32f10x.h中修改: 
*#define HSE_Value ((uint32_t)12000000) /!< Value of the External oscillator in Hz /*

技术分享图片 
技术分享图片

如果调试时遇到串口输出不正确的时候,可以直接查看stm32的内部时钟是多少。 
举例说明: 
/*

*/ 
void RCC_GetClocksFreq(RCC_ClocksTypeDef* RCC_Clocks); 
RCC_ClocksTypeDef ClockInfo; 
int main(void) 

RCC_GetClocksFreq(&ClockInfo);

/* Infinite loop */
  • 1
  • 2

while ( 1 ) 
{

}
  • 1
  • 2


通过观察ClockInfo这个结构体,可以清楚直观的看到配置的内部时钟信息。

STM32F103 ------ 时钟配置

原文:https://www.cnblogs.com/god-of-death/p/9311043.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!