单片机晶振电容为什么要取固定值?

作者: 扬兴科技 日期:2021-09-23 浏览量:

  很多刚入行的朋友会问,单片机晶振使用的负载电容是多少?其实,这个很容易记,因为单片机晶振的电路电容不是22pf,就是30pf。这是为什么呢?本文将通过实例为大家讲解为什么要这么取值,单片机取值的原理是什么?

  本文的实例采用了一个ATMEGAL16单片机的温度采集系统,焊接之后事实却并不容易,即便使用万用表也无法发现错误,之后怀疑是不是单片机锁死,在更换了几块单片机后情况也并未得到改善。经过仔细排查才发现有两个0.1uf的电容焊在了晶振电路中,导致晶振不起振所以整个电路就表现异常,再换成22pf的电容便马上正常。

  所以究竟是什么原因造成了异常呢?

  其实单片机和其他一些IC的振荡电路的真名叫“三点式电容振荡电路”,如图1。

单片机晶振电容为什么要取固定值?

  Y1是晶体,相当于三点式里面的电感,C1和C2就是电容,5404非门和R1实现一个NPN的三极管,接下来分析一下这个电路。

  5404必需要一个电阻,否则它会处于饱和截止区而不是放大区。R1相当于三极管的偏置作用,让5404处于放大区域,那么5404就是一个反相器,实现了NPN三极管的作用,NPN三极管在共发射极接法时也是一个反相器。

  一个正弦振荡电路要振荡的条件是系统放大倍数大于1。这个容易实现,相位满足360度,与晶振振荡频率相同的很小的振荡就被放大了。

  接下来主要讲解相位问题:

  5404因为是反相器,也就是说实现了180°移相,那么就需要C1,C2和Y1实现180°移相就可以,恰好,当C1,C2,Y1形成谐振时,能够实现180移相,这个大家可以解方程等,把Y1当作一个电感来做。也可以用电容电感的特性,比如电容电压落后电流90°,电感电压超前电流90°来进行分析都是可以的。当C1增大时,C2端的振幅增强,当C2降低时,振幅也增强。

  有些时候C1、C2不焊也能起振,这个不是说没有C1、C2,而是因为芯片引脚的分布电容引起的,因为本来C1、C2就不需要很大,所以这一点很重要。接下来分析这两个电容对振荡稳定性的影响。

  因为5404的电压反馈是靠C2的,假设C2过大,反馈电压过低。假设C2过小,反馈电压过高,储存能量过少容易受外界干扰,也会辐射影响外界。C1的作用对C2恰好相反。因为布板的时候,假设双面板比较厚,那么分布电容的影响不是很大,假设在高密度多层板时,就需要考虑分布电容。

  需要给大家说明的是,在用于工控设计的时候建议不要用无源晶振来起振,而是直接接有源晶振。因为工控项目对稳定性的要求较高,而无源晶振不能直接起振。在有频率越高的频率的晶振,稳定度不高,所以在速度要求不高的情况下会使用频率较低的晶振。

推荐阅读

样品申请