晶振是諸多電子器件不可缺少的組成之一,如單片機便需配備晶振??墒?,單片機為什么需要晶振?晶振在單片機中發(fā)揮何種作用?
一、何為晶振
晶振一般叫做晶體諧振器,是一種機電器件,是用電損耗很小的石英晶體經(jīng)精密切割磨削并鍍上電極焊上引線做成。
對于單片機來說晶振是很重要的,可以說是沒有晶振就沒有時鐘周期,沒有時鐘周期就無法執(zhí)行程序代碼,那樣的話單片機就無法工作。接下來跟隨小編詳細的了解一下單片機晶振的電路原理及作用。
二、單片機晶振的必要性
單片機工作時,是一條一條地從ROM中取指令,然后一步一步地執(zhí)行。單片機訪問一次存儲器的時間,稱之為一個機器周期,這是一個時間基準(zhǔn)。一個機器周期包括12個時鐘周期。如果一個單片機選擇了12MHZ晶振,它的時鐘周期是1/12us,它的一個機器周期是12x(1/12)us,也就是1US。
MCS-51單片機的所有指令中,有一些完成得比較快,只要一個機器周期就行了,有一些完成得比較饅,得要2個機器周期,還有兩條指令要4個機器周期才行。為了衡量指令執(zhí)行時間的長短,又引|入一個新的概念: 指令周期。所謂指令周期就是指執(zhí)行條指令的時間。例如,當(dāng)需要計算DJNZ指令完成所需要的時間時,首先必須要知道晶振的頻率,設(shè)所用晶振為12MHZ,則一個機器周期就是1US。而DJNZ指令是雙周期指令,所以執(zhí)行一次要2US。如果該指令需要執(zhí)行500次,正好1000us,也就是1ms。
機器周期不僅對于指令執(zhí)打有著重要的意義,而且機器周期也是單片機定時器和計數(shù)器的時間基準(zhǔn)。例如一個單片機選擇了12MHZ晶振,那么當(dāng)定時器的數(shù)值加1時,實際經(jīng)過的時間就是1us,這就是單片機的定時原理。
三、單片機晶振的作用
單片機晶振的作用是為系統(tǒng)提供基本的時鐘信號。通常一個系統(tǒng)共用一個晶振,便于各部分保持同步。有些通訊系統(tǒng)的基頻和射頻使用不同的晶振,而通過電子調(diào)整頻率的方法保持同步。
晶振通常與鎖相環(huán)電路配合使用,以提供系統(tǒng)所需的時鐘頻率。如果不同子系統(tǒng)需要不同頻率的時鐘信號,可以用與同一個晶振相連的不同鎖相環(huán)來提供。
在通常工作條件下,普通的晶振頻率絕對精度可達百萬分之五十。高級的精度更高。有些晶振還可以由外加電壓在一定范圍內(nèi)調(diào)整頻率,稱為壓控振蕩器(VCO)。晶振用一種能把電能和機械能相互轉(zhuǎn)化的晶體在共振的狀態(tài)下工作,以提供穩(wěn)定,精確的單頻振蕩。
四、單片機晶振常見問題
1、PIC單片機振蕩電路中如何選擇晶體?
對于一個高可靠性的系統(tǒng)設(shè)計,晶體的選擇非常重要,尤其設(shè)計帶有睡眠喚醒,往往用低電壓以求低功耗的系統(tǒng),這是因為低供電電壓使提供給晶體的激勵功率減少,造成晶體起振很慢或根本就不能起振,這一現(xiàn)象在上電復(fù)位時并不特別明顯,原因時上電時電路有足夠的擾動,很容易建立振蕩,在睡眠喚醒時,電路的擾動要比上電時小得多,起振變得很不容易,在振蕩回路中,晶體既不能過激勵,容易振到高次諧波上,也不能欠激勵不容易起振,晶體的選擇至少必須考慮、諧振頻點、負載電容、激勵功率、溫度特性長期穩(wěn)定性。
2、如何判斷電路中晶振是否被過分驅(qū)動?
電阻RS常用來防止晶振被過分驅(qū)動,過分驅(qū)動晶振會漸漸損耗減少晶振的接觸電鍍這將引起頻率的上升,可用一臺示波器檢測,OSC,輸出腳,如果檢測一非常清晰的正弦波且正弦波的上限值和下限值都符合時鐘輸入需要,則晶振未被過分驅(qū)動,相反,如果正弦波形的波峰,波谷兩端被削平,而使波形成為方形,則晶振被過分驅(qū)動,這時就需要用電阻RS來防止晶振被過分驅(qū)動,判斷電阻RS值大小的最簡單的方法就是串聯(lián)一個5k或10k的微調(diào)電阻,從0開始慢慢調(diào)高,一直到正弦波不再被削平為止,通過此辦法就可以找到最接近的電阻RS值。
3、晶振電路中如何選擇電容?
(1)C1,C21,因為每一種晶振都有各自的特性,所以最好按制造廠商所提供的數(shù)值選擇外部元器件。
(2)在許可范圍內(nèi),C1,C2值越低越好,C值偏大雖有利于振蕩器的穩(wěn)定,但將會增加起振時間。
(3)應(yīng)使C2值大于C1值,這樣可使上電時,加快晶振起振。