stm32中可以选择多种时钟源,可以参考stm32数据手册,这里手册中的时钟图
而在stm32f103系列的说明中,可知系统最高可以达到72M的主频,(f407等可以达到更高的主频),为了强大的性能,在不考虑功耗的前提下当然要选择72M作为我们系统的主频咯,关键是怎么来设置呢?
这里一般stm32外部有一颗8Mhz 的晶振作为芯片HSE时钟的输入,再配合PLL将HSE倍频到72M就ok了,具体怎么设置可以查看手册的相关寄存器,但这里就不劳神去看了,查看我们配置好的工程,在给的库中已经有相关的工作了。
打开starup_stm32f10x_md.s(不同芯片可能不同)文件,可以看见这是一个用来启动的汇编文件。
Reset_Handler PROC
EXPORT Reset_Handler [WEAK]
IMPORT __main
IMPORT SystemInit
LDR R0, =SystemInit
BLX R0
LDR R0, =__main
BX R0
ENDP
void SystemInit (void)
{
/* Reset the RCC clock configuration to the default reset state(for debug purpose) */
/* Set HSION bit */
RCC->CR |= (uint32_t)0x00000001;
/* Reset SW, HPRE, PPRE1, PPRE2, ADCPRE and MCO bits */
#ifndef STM32F10X_CL
RCC->CFGR &= (uint32_t)0xF8FF0000;
#else
RCC->CFGR &= (uint32_t)0xF0

这篇博客介绍了如何在STM32F103上设置系统时钟达到72MHz的主频。通过使用外部8MHz晶振并结合PLL进行倍频,详细讨论了配置过程,并指出在提供的库文件中已经包含了相关设置。重点查看了startup_stm32f10x_md.s启动汇编文件以及设置时钟频率的函数。
最低0.47元/天 解锁文章
2978

被折叠的 条评论
为什么被折叠?



