STM32单片机外部晶振配置时钟设置

STM32单片机外部晶振配置时钟设置,第1张

学习野火的固件库UART1串口案例时,用的是SIM9008模块应用板上的STM32103F103RB芯片,使用的外部晶振是12M。

串口读取的是乱码

默认的外部晶振是8M

由于STM32的库默认是外部晶振8M的情况下实现的,所以配置串口波特率的时候也是按8M,包括主频。

如果采用外部晶振8M或12M,配置时钟为72MHZ 。

STM32单片机外部晶振配置时钟设置,STM32单片机外部晶振配置时钟设置,第2张

1)在system32_stm32f10x.c文件中的void SetSysClockTo72(void)里这样改:

8M:

RCC-》CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9);//8*9=72

12M:

RCC-》CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL6);//12*6=72

2)stm32f10x.h中修改:

8M:

#define HSE_Value ((uint32_t)8000000) /*!《 Value of the External oscillator in Hz */

12M:

#define HSE_Value ((uint32_t)12000000) /*!《 Value of the External oscillator in Hz */

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2611365.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-10
下一篇 2022-08-10

发表评论

登录后才能评论

评论列表(0条)

保存