基于SoC方案的智能電表時(shí)鐘校準
該諧振器具有串聯(lián)諧振頻率fq和并聯(lián)諧振頻率fp兩個(gè)諧振頻率,分別為:
???????? (3)?

單片機振蕩電路除了晶體振蕩器之外還包括放大器[3],如圖4所示,兩者形成閉環(huán),晶體起到選頻反饋作用,放大器輸入阻抗較大。為達到匹配效果,晶振工作在并聯(lián)諧振狀態(tài)下,并聯(lián)電容C0對頻率響應有較大影響,通過(guò)在外圍增加旁路電容CL,減小電容C0對并聯(lián)諧振頻率的影響,并聯(lián)電容后諧振頻率變?yōu)?
???????? ?? (4)?
由式(4)還可以看出晶體的并聯(lián)諧振頻率隨著(zhù)負載電容的變化會(huì )產(chǎn)生微小變化,可以通過(guò)改變負載電容的大小抵消晶體頻率隨溫度的偏移[4],這就是電容補償時(shí)鐘精度的基本原理,修調靈敏度S用來(lái)表示晶體的中心頻率與負載電容CL的關(guān)系:
???????? ??? (5)?
修調靈敏度與負載電容CL有關(guān),CL越大修調靈敏度越小,如果希望得到一個(gè)相對穩定的頻率信號,需要一個(gè)大的CL值;如果希望得到一個(gè)頻率可變的振蕩器,需要一個(gè)相對較小的CL值[5]。所以CL需要控制在一定范圍內,同時(shí)保證頻率精度和工作穩定性。
數字補償
電容補償的優(yōu)勢在于精細,可以實(shí)現步距小于±1ppm的校準,實(shí)現精確微調,但為保證晶振起振和穩定運行,旁路電容的大小有一定限制,電容補償的偏差范圍通常限定在±40ppm范圍內,為增加補償量,需要采用數字補償的方式。電表輸出的秒脈沖是通過(guò)一個(gè)計數器對32.768kHz時(shí)鐘計數,計數值滿(mǎn)32768時(shí)溢出,計為一個(gè)秒周期。如將計數器溢出值改為32769,則秒周期改變量為:
???????? ?
因此通過(guò)改變計數器溢出值即可獲得30.5ppm整數倍的頻率補償量。
補償數據計算
為實(shí)現晶體振蕩器全溫度范圍內輸出精確頻率,需要通過(guò)調節負載電容和數據補償寄存器,獲得一定頻率補償量?fcal ,保證其與晶體在這一溫度下的振蕩偏移值大小相等符號相反,即?fcal=-?f 。為實(shí)現調節負載電容大小的目的,單片機中設計了11位的電容控制寄存器,用以控制11個(gè)并聯(lián)電容的通斷,其中第n顆電容的大小為:
???????? ?
通過(guò)對相應寄存器的bit位置1或0,實(shí)現相應位置的電容與晶振并聯(lián)或斷開(kāi),達到改變負載電容大小的目的,電容并聯(lián)后的值:
???????? ??? (8)?
其中bn為寄存器相應bit位的值,Dreg為寄存器值。
通過(guò)單片機自帶的溫度傳感器,可以獲得當前晶振溫度,利用式1計算出晶體振蕩的偏差?f,通過(guò)修改負載電容補償頻率偏差,為此需要建立電容與頻率改變之間的關(guān)系,圖5顯示了電容與頻率改變量的關(guān)系,橫軸為并聯(lián)電容值,縱軸為頻率改變量?! ?/p>

評論