基于MCU的鎖相環(huán)鎖定時間測量系統(tǒng)設計
3.2 下位機設計
單片機中的下位機負責控制鎖相環(huán)并測量鎖定時間。流程圖如圖5所示。本文引用地址:http://www.biyoush.com/article/171566.htm
下位機也是基于一個前后臺系統(tǒng),在一個死循環(huán)內等待各中斷響應。在單片機向鎖相環(huán)發(fā)送完控制數(shù)據(jù)后開啟外部中斷,若有外部中斷響應則在中斷服務程序中讀取定時器的值,即為鎖定時間,中斷結束后將定時器清零,以便再次測量;若當定時器溢出時仍未收到外部中斷,表明鎖相環(huán)未能鎖定,則發(fā)送未鎖定信息給上位機。這里設置了3個中斷向量分別為外部中斷、定時器T0中斷、串口中斷。在默認情況下它們的中斷優(yōu)先級依次從高到低,為防止不必要的中斷嵌套,在響應其中一個中斷服務時應將另兩個中斷關掉,中斷服務結束后再開啟。
AT89C51有兩路定時/計數(shù)器T0,T1。本系統(tǒng)中T1用來設置串口的波特率,串口有4種工作方式,本文使用方式1,即8位異步通信接口,一幀數(shù)據(jù)有10位,1位起始位,一位停止位。T0用來測量鎖定時間,T0定時器使用系統(tǒng)時鐘的12分頻作為時鐘源,將T0配置為16位定時器模式,所以環(huán)路鎖定時間可由下式確定,單位為μs。
T=(TH0×256+TL0)×Tosc×12 (1)
式中:TH0,TL0分別是在外部中斷服務程序中讀到的定時器T0的數(shù)據(jù)寄存器高8和低8位;Tosc是單片機外接晶振的振蕩周期,本文外接晶振為12 MHz,即為1/12μs,因此本系統(tǒng)可實現(xiàn)精度為1μs的時間測量。根據(jù)圖2所示的時序圖,單片機向鎖相環(huán)發(fā)送控制數(shù)據(jù)的子程序如下:
4 結語
本文采用MFC、串口、AT89C51所設計的測量系統(tǒng)能準確測量鎖相環(huán)的鎖定時間,精度達到1μs;并且有很強的通用性,能兼容常見的各類鎖相環(huán)芯片。系統(tǒng)上位機的人機操作界友好,硬件電路結構簡單。
接地電阻相關文章:接地電阻測試方法
評論