直接上时钟树
在学习STM32的时候时钟的配置是一直必不可少的过程,也许你用别人的代码很爽,但是真正的做项目还是使用自己建立的工程最靠谱。
上图为用的原子哥的一张时钟树的图片。
下面是经常用到的全局宏定义,在是时钟树的配置中必不可少。
更换晶振第一步
然后要了解外部时钟的更改地点,现在使用的是8MHz晶振,用的时候更改为自己对应的晶振大小。
定义系统时钟晶振
系统时钟定义
使能外部时钟
将第17位置1刚好是使能外部时钟
在外部时钟初始化完成之后进行Flash的时钟配置,因为Flash的速度没有CPU的快,所以CPU要等待两个周期
在这里就是设置时钟树的分频系数,首先设置HCLK=SYSCLK这样做的目的也就是设置相应的AHB预分频器为不分频。
第二行代码是设置PCLK2=HCLK这样做的目的就是设置APB2预分频系数为1,也就是不分频。
同理第三行的代码就是设置PLCK1最大为36MHz这就就是设置为两分频,官方给的备注应该是错误的但是代码是正确的,可以直接按照代码来说就是设置APB1预分频为两分频。
下面介绍前半部分时钟源的选取;
这个是CFGR寄存器的各个位的介绍
更换晶振第二步
这个是OneNET开发板使用12MHz晶振后更改的晶振源设置,将相 应的倍频系数更改为6,这样就能够达到设置系统时钟为72MHz,的目的。
下面对CFGR寄存器的各个位进行介绍31-27为保留位
在行面的进行完之后就完成更换自己的晶振了;
下面是更换晶振第三步,也就是最后的一步,就可以完成晶振的更换
将建投所指的地方该成自己的外部晶振的大小;
在这些之后,就尽情享受更改晶振之后使用符合自己板子的库吧!