Author: Jackie Long
很多硬件工程师面试官都会问一些"看似比较偏"的技术问题,比如,晶振的匹配电容计算公式。然而,看似偏的技术问题其实并不是真正的偏,是因为真正(去)理解的人比较少。
有些读者说:我就是不会这个计算公式,也不需要知道这个知识,但我的水平依然还是Biang Biang声厉害,你咬我?
其实,这就是普通工程师与优秀工程师之间的区别!有太多的东西实际应用起来差别并不大,优秀工程总会比普通工程师要懂得多一些,比如晶体,51、AVR、STC、PIC、STM32等单片机典型应用电路一大堆,照着画原理图就是了,无论是大牛还是菜鸟,使用起来大家都一样!
但事实是:1%的那部分知识就能决定你的技术层次,而其它99%的知识大多数地球人都知道,这与二八法则是有多么地相似。大多数人的工作内容都是很相似的,然而能解决其它人所不能解决的人才是公司最需要的,换言之,从面试单位的角度判断,如果你理解某个"看似很偏"的技术问题,从概率上来讲,你的水平比那些不理解的工程师要高很多(当然,我没有说是绝对,也许你走狗屎运恰好知道这个知识点,而其它都不知道,么么哒~~)。
大多数电子工程师都见过单片机中如下图所示的形式,一般单片机都会有这样的电路。晶振的两个引脚与芯片(如单片机)内部的反相器相连接,再结合外部的匹配电容CL1、CL2、R1、R2,组成一个皮尔斯振荡器(Pierce oscillator)
上图中,U1为增益很大的反相放大器,CL1、CL2为匹配电容,是电容三点式电路的分压电容,接地点就是分压点。以接地点即分压点为参考点,输入和输出是反相的,但从并联谐振回路即石英晶体两端来看,形成一个正反馈以保证电路持续振荡,它们会稍微影响振荡频率,主要用与微调频率和波形,并影响幅度。 X1是晶体,相当于三点式里面的电感
R1是反馈电阻(一般≥1MΩ),它使反相器在振荡初始时处于线性工作区,R2与匹配电容组成网络,提供180度相移,同时起到限制振荡幅度,防止反向器输出对晶振过驱动将其损坏。
这里涉及到晶振的一个非常重要的参数,即负载电容CL(Load capacitance),它是电路中跨接晶体两端的总的有效电容(不是晶振外接的匹配电容),主要影响负载谐振频率和等效负载谐振电阻,与晶体一起决定振荡器电路的工作频率,通过调整负载电容,就可以将振荡器的工作频率微调到标称值。
负载电容的公式如下所示:
其中,CS为晶体两个管脚间的寄生电容(Shunt Capacitance)
CD表示晶体振荡电路输出管脚到地的总电容,包括PCB走线电容CPCB、芯片管脚寄生电容CO、外加匹配电容CL2,即CD=CPCB+CO+CL2
CG表示晶体振荡电路输入管脚到地的总电容,包括PCB走线电容CPCB、芯片管脚寄生电容CI、外加匹配电容CL1,即CG=CPCB+CI+CL1
一般CS为1pF左右,CI与CO一般为几个皮法,具体可参考芯片或晶振的数据手册
(这里假设CS=0.8pF,CI=CO=5pF,CPCB=4pF)。
比如规格书上的负载电容值为18pF,则有
则CD=CG=34.4pF,计算出来的匹配电容值CL1=CL2=25pF
好了,你现在可以把面试官KO了,祝一路顺风,么么哒~~