从零开始的stm32最小系统板——(3)外部时钟电路

一、为什么需要外部晶振

        众所周知,stm32f103c8t6是有两个内部晶振的,分别为内部高速晶振和内部低速晶振,为什么我们还要外接晶振呢,直接用内部晶振不香吗?

        我们需要了解一点内部晶振不香,因为这玩意频率误差很大,能达到1%到3%之间,这对于我们需要一些精密的场景,比如通信协议,USB通信要48MHz的时钟,而且误差要控制在0.25%内。内部晶振根本做不到;而且在一些特殊环境比如高温高压等,内部晶振稳定性就更差了,因此我们需要外接外部晶振。从而达到我们对精度和环境等要求。

二、外部晶振引脚

        查阅手册(数据手册)可知,stm32f103c8t6的外部晶振引脚有4个,分别是:

OSC32_IN对应引脚PC14、OSC32_OUT对应引脚PC15、这两个是外部低速晶振的接口

OSC_IN对应引脚PD0、OSC_OUT对应引脚PD1、这两个是外部高速晶振的接口

如图所示:

        对应的4个引脚就是我们外接高速和低速晶振的地方。 

三、外部晶振的选型 

        知道了如何外接晶振,我们该怎样选择这个外部晶振呢? 其实官方在STM32f103xB数据手册里给出了:

 

        我们只需要使用这个典型值组成外部高速晶振电路即可。那么同理外部低速晶振我们也可以得到参数: 

从而我们得到了外部高速晶振是8MHz,外部低速晶振是32.768kHZ,为什么是这个数呢?

        8MHz的外部晶振通常作为系统的主时钟源,通过PLL倍频后可以为STM32提供更高的系统时钟频率(如72MHz)。这种高频率的时钟信号能够满足CPU和各种外设的高速运行需求。

        32.768kHz晶振主要用于实时时钟(RTC)模块,为其提供稳定的时钟基准。32.768kHz等于2的15次方,经过15次二分频后可以精确地产生1Hz的秒信号,非常适合用于RTC模块。

四、外部晶振电路的设计

我们如何设计外部晶振电路呢?同样的数据手册里给出了我们典型应用:

         如图所示,其实就是外部晶振的两端分别接到外部晶振引脚,同时再分别接两个对地电容。现在的问题是,我们如何去设计电容呢?这里我们要明确3个概念,我们通过阅读手册引出:

 

 

 

【1】查阅数据手册可知,CL1和CL2通常具有相同参数,就是一模一样;

【2】在PCB板子上,PCB板和芯片引脚是有一定距离的,这个距离可以等效出一个电容,手册给出了外部高速晶振这个电容可以粗略的认为是10pf;

【3】CL1和CL2的计算公式是:CL = CL1 x CL2 / (CL1 + CL2) + Cstray,其中Cstray是引脚的电容和PCB板或PCB 相关的电容它的典型值是介于2pF至7pF之间。(对于低速晶振,高速晶振的说了粗略认为是10pf);CL是你所使用的晶振的参数,这个器材商会给出。

 由此我们可以根据这个公式和用到的晶振来计算CL1,CL2的值。

        由图可知,外部晶振为8MHZ的这个高速晶振CL为20pf,Cstray取10pf,代入公式不难算出CL1和CL2为20pf,因此对于外部高速晶振,我们选择的电容为20pf。

        同理,我们如果粗略的取取Cstray为2.5pf时,对于低速晶振,可以计算出所用电容也为20pf

五、总结

        综合上述内容,我们就已经完全得到了晶振电路的设计了。 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值