以前设计晶振部分电路是按照网上原理图一大抄来的,平常应用没有问题,如果在对晶振频率要求比较高的场合就很有问题了,现在以我的观点来说说晶振的匹配电容是怎么计算来的,如果不想往下看,也可以记住一个经验值:大约为晶振数据手册的匹配电容的1.5倍左右
1、基础知识
1.1 晶振数据手册相关参数
以下所有参数来自于台湾晶技 HC-49SMD 8M 20pF 20ppm的无缘晶振,相关参数如下图所示:
1.1.1 Frequency Tolerance(频率误差)
频率误差也叫为调整频差,指的是在规定条件下,基准温度(25±2℃)时工作频率相对于标称频率所允许的偏差。每个器件都存在一定的误差, 该值也是表征频率值的误差,单位为PPM(百万分之一, 10的6次方),例如标称频率为10MHz的晶振,如果为1PPM,那么频率偏差为10Hz。上图我们看到误差为30PPM,标称频率为8M,那么误差为±240Hz。若晶振是74.25MHz,实际用频率计测量是74.24MHz。如果以该频率计测量结果为准的话,那么晶振的误差为:
(74.24-74.25)/74.25≈0.000135=135*10^-6,计算结果误差是135PPM。
1.1.2 Shunt Capacitance (C0)(寄生电容)
寄生电容指的是晶体两个管脚之间的寄生电容,在计算晶振的负载电容时需要将这个值考虑上,上图的晶振寄生电容为7pF。
1.1.3 Load Capacitance (CL)(负载电容)
这里涉及到晶振的一个非常重要的参数,即负载电容CL(Loadcapacitance),它是电路中跨接晶体两端的总的有效电容(不是晶振外接的匹配电容),主要影响负载谐振频率和等效负载谐振电阻,与晶体一起决定振荡器电路的工作频率,通过调整负载电容,就可以将振荡器的工作频率微调到标称值。一般负载电容的计算公式如下:
其中,CS为晶体两个管脚间的寄生电容(Shunt Capacitance)
CD表示晶体振荡电路输出管脚到地的总电容,包括PCB走线电容CPCB、芯片管脚寄生电容CO、外加匹配电容CL2,即CD=CPCB+CO+CL2。
CG表示晶体振荡电路输入管脚到地的总电容,包括PCB走线电容CPCB、芯片管脚寄生电容CI、外加匹配电容CL1,即CG=CPCB+CI+CL1。
有上述公式可知,我们在做PCB板时,只能控制晶振的匹配电容来调节负载电容, 负载电容的大小影响了晶振的工作频率。
1.2 晶振电路框图
晶振工作原理图如上图所示,芯片内部包含了增益很大的反相放大器,外部需要接一个反馈电阻Rf,(一般≥1MΩ),它使反相器在振荡初始时处于线性工作区,R2与匹配电容组成网络,提供180度相移,同时起到限制振荡幅度,防止反向器输出对晶振过驱动将其损坏。晶振、电容CG和CD构成是电容三点式电路的分压电容,接地点就是分压点。以接地点即分压点为参考点,输入和输出是反相的,但从并联谐振回路即石英晶体两端来看,形成一个正反馈以保证电路持续振荡,它们会稍微影响振荡频率,主要用与微调频率和波形,并影响幅度。 XTAL是晶体,相当于三点式里面的电感。
二、计算匹配电容
计算匹配电容的原则是尽量让CL接近晶振数据手册提供的负载电容,计算公式如下、
其中,CS为晶体两个管脚间的寄生电容(Shunt Capacitance)
CD表示晶体振荡电路输出管脚到地的总电容,包括PCB走线电容CPCB、芯片管脚寄生电容CO、外加匹配电容CL2,即CD=CPCB+CO+CL2。
CG表示晶体振荡电路输入管脚到地的总电容,包括PCB走线电容CPCB、芯片管脚寄生电容CI、外加匹配电容CL1,即CG=CPCB+CI+CL1。
CD一般和CG相等,为了简便计算,看做相等。
一般CS为1pF左右,CI与CO一般为几个皮法,具体可参考芯片或晶振的数据手册。上述数据手册上说CS最大为7pF,在这我们认为5pF,根据STM32的芯片手册得芯片管脚的寄生电容为5pF左右,CPCB电容一般为4pF。
比如规格书上的负载电容值为20pF,带入公式可得CD=CG=30pF,计算出来的匹配电容值CL1=CL2=20pF。
三、结论
上述过程是不考虑工艺上误差的情况,实际工程中上述过程的电容值参数并不是固定不变的, 为了便于记忆,我们取CL1=CL2=1.5*CL (CL表示为芯片手册上提供的参考负载电容值)。在实际调试过程中应该根据频率值来相对的增加和减少电容值