基于MCU的鎖相環(huán)鎖定時(shí)間測(cè)量系統(tǒng)設(shè)計(jì)
2 硬件設(shè)計(jì)
本系統(tǒng)中的單片機(jī)選擇AT89C51,主要基于2點(diǎn)考慮:AT89C51內(nèi)置RS 232串口控制器,系統(tǒng)僅需外接串口驅(qū)動(dòng)器即可完成與上位機(jī)的硬件連接;鎖相環(huán)的鎖定時(shí)間范圍一般位于1μs~1 ms之間,AT89C51內(nèi)有兩路定時(shí)器可選擇,若外接12 MHz的晶振,則可實(shí)現(xiàn)精度為1μs范圍為65.536 ms的定時(shí)器,滿足測(cè)量要求。
系統(tǒng)使用單片機(jī)的外部中端INIT0來(lái)檢測(cè)環(huán)路是否鎖定,INIT0中斷可配置為下降沿觸發(fā)。串口驅(qū)動(dòng)器采用MAX232,該芯片主要負(fù)責(zé)將單片機(jī)的輸出電平轉(zhuǎn)化為差分電平以便與PC機(jī)通信。該芯片中有兩路獨(dú)立的通道,這里使用其中的T2/R2。
3 軟件設(shè)計(jì)
3.1 上位機(jī)設(shè)計(jì)
系統(tǒng)的整個(gè)軟件部分包括PC中的上位機(jī)和單片機(jī)中的下位機(jī)。上位機(jī)設(shè)計(jì)基于VC6.0中的MFC應(yīng)用軟件框架。上位機(jī)流程圖如圖3所示。本文引用地址:http://m.butianyuan.cn/article/171566.htm
上位機(jī)流程主要基于一個(gè)前后臺(tái)系統(tǒng),用一個(gè)死循環(huán)來(lái)不停的監(jiān)聽(tīng)用戶輸入和串口中斷。如前文所述,鎖相環(huán)芯片的控制數(shù)據(jù)都是以串行方式送入DATA引腳的,不同廠商的鎖相環(huán)芯片控制數(shù)據(jù)的接收順序會(huì)不同。因此在上位機(jī)軟件中需添加一個(gè)接口來(lái)讓用戶來(lái)告知下位機(jī)控制數(shù)據(jù)的發(fā)送順序。同時(shí)控制數(shù)據(jù)的長(zhǎng)度也需預(yù)先確定,以防止下位機(jī)在控制數(shù)據(jù)傳輸完畢前便將控制數(shù)據(jù)送與鎖相環(huán)。因?yàn)榇谑且宰止?jié)為單位傳輸,所以數(shù)據(jù)長(zhǎng)度以字節(jié)為單位。上位機(jī)界面如圖4所示。
接地電阻相關(guān)文章:接地電阻測(cè)試方法
評(píng)論