微控制器內部是RC振盪電路,精度不高,溫度漂移也大
雖然現在大部分微控制器都有內部的RC振盪電路。但比較老舊的51微控制器其實是沒有內建振盪電路的。並且內部的振盪電路公差非常大,最高可能去到20%,一般都會有2%的公差;溫度對內部振盪的頻率影響也非常大。所基微控制器基本上都有外接晶振的引腳。
微控制器內部的振盪電路為RC振盪電路,公差相對較大。使用內建振盪電路,可以降低產品的成本。外部晶振不使用時,還可以把晶振引腳設定為普通IO。對於時間要求不高的應用,配置使用內建RC振盪電路是完全沒有問題的。比如設計一個攪拌機,使用者設定攪拌時間為1分種,實際上只攪拌了55秒或者65秒,並不會影響到使用者體驗。
使用外部晶振必須注意晶振頻率的選擇,比如4MHz和4.1943MHz的晶振是有很大差別的。如果一個指令周為12個時鐘週期,用4MHz晶振時,一個指令為3us,計算起來比較容易。但在數位電路中是以二制進計數的,2^22(2的22次方)=4,194,304,所以使用4.194Mhz的晶振計時會更精確。在需要設計時鐘的應用,我們一般都會選擇32.768KHz的低速晶振進行計時,因為2^15(2的15次方)剛好為32.768K,不會產生累計誤差。
在使用外部晶振的時候,選擇合適的負載電容和負載電阻也相當重要!可能會影響到時鐘的起振和計時的精度!
微控制器內部是RC振盪電路,精度不高,溫度漂移也大
雖然現在大部分微控制器都有內部的RC振盪電路。但比較老舊的51微控制器其實是沒有內建振盪電路的。並且內部的振盪電路公差非常大,最高可能去到20%,一般都會有2%的公差;溫度對內部振盪的頻率影響也非常大。所基微控制器基本上都有外接晶振的引腳。
時間精度要求不高可以使用內建振盪電路微控制器內部的振盪電路為RC振盪電路,公差相對較大。使用內建振盪電路,可以降低產品的成本。外部晶振不使用時,還可以把晶振引腳設定為普通IO。對於時間要求不高的應用,配置使用內建RC振盪電路是完全沒有問題的。比如設計一個攪拌機,使用者設定攪拌時間為1分種,實際上只攪拌了55秒或者65秒,並不會影響到使用者體驗。
時間要求較高的設計必須使用外接晶振使用外部晶振必須注意晶振頻率的選擇,比如4MHz和4.1943MHz的晶振是有很大差別的。如果一個指令周為12個時鐘週期,用4MHz晶振時,一個指令為3us,計算起來比較容易。但在數位電路中是以二制進計數的,2^22(2的22次方)=4,194,304,所以使用4.194Mhz的晶振計時會更精確。在需要設計時鐘的應用,我們一般都會選擇32.768KHz的低速晶振進行計時,因為2^15(2的15次方)剛好為32.768K,不會產生累計誤差。
在使用外部晶振的時候,選擇合適的負載電容和負載電阻也相當重要!可能會影響到時鐘的起振和計時的精度!