愛伊米

乾貨|為什麼MCU晶體兩邊要各接一個對地電容?

很多MCU開發者對MCU晶體兩邊要各接一個對地電容的做法表示不理解,因為這個電容有時可以去掉。

參考很多書籍,卻發現書中講解的很少,提到最多的往往是:對地電容具穩定作用或相當於負載電容等,都沒有很深入地去進行理論分析。

另外一方面,很多愛好者都直接忽略了晶體旁邊的這兩個電容,他們認為按參考設計做就行了。但事實上,這是MCU的振盪電路,又稱“三點式電容振盪電路”,如圖1所示。

乾貨|為什麼MCU晶體兩邊要各接一個對地電容?

圖1:MCU的三點式電容振盪電路

其中,Y1是晶體,相當於三點式裡面的電感;C1和C2是電容,而5404和R1則實現了一個NPN型三極體(大家可以對照高頻書裡的三點式電容振盪電路)。

接下來將為大家分析一下這個電路:

首先,5404必須搭一個電阻,不然它將處於飽和截止區,而不是放大區,因為R1相當於三極體的偏置作用,能讓5404處於放大區域並充當一個反相器,從而實現NPN三極體的作用,且NPN三極體在共發射極接法時也是一個反相器。

其次將用通俗的方法為大家講解一下這個三點式振盪電路的工作原理。

眾所周知,一個正弦振盪電路的振盪條件為:系統放大倍數大於1,這個條件較容易實現;但另一方面,還需使相位滿足360°。

而問題就在於這個相位:由於5404是一個反相器,因此已實現了180°移相,那麼就只需C1、C2和Y1再次實現 180°移相就可以了。

恰好,當C1、C2和Y1形成諧振時,就能實現180移相;最簡單的實現方式就是以地作為參考,諧振的時候,由於C1、C2中透過的電流相同,而地則在C1、C2之間,所以恰好電壓相反,從而實現180移相。

再則,當C1增大時,C2端的振幅增強;當C2降低時,振幅也增強。有時即使不焊接C1、C2也能起振,但這種現象不是由不焊接C1、C2的做法造成的,而是由晶片引腳的分佈電容引起,因為C1、C2的電容值本來就不需要很大,這一點很重要。

那麼,這兩個電容對振盪穩定性到底有什麼影響呢?

由於5404的電壓反饋依靠C2,假設C2過大,反饋電壓過低,這時振盪並不穩定;假設C2過小,反饋電壓過高,儲存能量過少,則容易受外界干擾,還會輻射影響外界。而C1的作用與C2的則恰好相反。

在布板的時候,假設為雙面板且比較厚,那麼分佈電容的影響則不是很大;

但假設為高密度多層板時,就需要考慮分佈電容,尤其是VCO之類的振盪電路,更應該考慮分佈電容。

因此,那些用於工控的專案,建議最好不要使用晶體振盪,而是直接接一個有源的晶振。

很多時候大家會採用32。768K的時鐘晶體來做時鐘,而不是透過微控制器的晶體分頻來做時鐘,其中原因想必很多人也不明白,其實上這是和晶體的穩定度有關:頻率越高的晶體,Q值一般難以做高,頻率穩定度也比較差;而 32。768K晶體在穩定度等各方面的效能表現都不錯,還形成了一個工業標準,比較容易做高。

另外值得一提的是,32。768K是16 bit資料的一半,預留最高1 bit進位標誌,用作定時計數器內部數字計算處理也非常方便。