摘 要:介紹一種測(cè)頻儀的設(shè)計(jì)方案,并將此儀器應(yīng)用到云南天文臺(tái)麗江2.4 m望遠(yuǎn)鏡圓頂溫度的測(cè)量工作中。詳細(xì)闡述了PIC18F452自帶的CCP模塊的測(cè)頻原理,同時(shí)給出了儀器軟硬件的設(shè)計(jì)思路,最后在Proteus中對(duì)系統(tǒng)進(jìn)行了仿真測(cè)試。測(cè)試結(jié)果表明了該方案的可行性。該儀器的研制也為西部望遠(yuǎn)鏡的選址工作提供了一種有效的測(cè)量工具。
關(guān)鍵詞:測(cè)頻儀; PIC18F452; CCP模塊; Proteus
中圖分類號(hào):
TN874-33
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1004-373X(2011)19
-0121
-03
Design of Frequency-measurement Meter Based on PIC18F452
XU Guang, LI Xue-bao, ZHENG Yan-fang, YANG Hua-ju, LI Zhi
(Yunnan Observatory, National Astronomical Observatories, Chinese Academy of Sciences, Kunming 650011, China)
Abstract: A design of frequency-measurement meter is introduced. The instrument can be used in dome temperature measurement work in Lijiang, Yunnan Observation′s 2.4m telescope. The working principle of PIC18F452 CCP module is introduced, the software and hardware are proposed. The system is simulated in Proteus and the test result shows that the method is feasible. Apparatus can provide an effective measurement tool for the western location of the telescope.
Keywords: frequency-measurement meter; PIC18F452; CCP module; Proteus
通過(guò)頻率的測(cè)量來(lái)間接地獲取溫度數(shù)據(jù)是檢測(cè)天文望遠(yuǎn)鏡圓頂溫度的常用方法。頻率信號(hào)不但具有較強(qiáng)的抗干擾能力,而且易于傳輸。因此將望遠(yuǎn)鏡圓頂附近的溫度傳感器所產(chǎn)生的電信號(hào)轉(zhuǎn)換為頻率信號(hào),然后對(duì)頻率信號(hào)進(jìn)行測(cè)量和采集,最終再通過(guò)一些確定的函數(shù)關(guān)系把頻率值轉(zhuǎn)換為溫度值[1]。該方案與直接測(cè)量溫度的方法相比,可操作性更強(qiáng)。
1 PIC18F452的測(cè)頻原理
PIC18F452是美國(guó)Microchip公司生產(chǎn)的一款高性能的8位單片機(jī),其片上資源十分豐富,本文設(shè)計(jì)的測(cè)頻儀就是使用該單片機(jī)的CCP1(捕捉/比較/脈寬調(diào)制)模塊的捕捉功能來(lái)實(shí)現(xiàn)的,CCP1模塊工作在捕捉模式下的功能框圖如圖1所示[2]。
在捕捉模式下,每當(dāng)CCP引腳上有下列事件之一發(fā)生時(shí):每個(gè)下降沿發(fā)生、每個(gè)上升沿發(fā)生、每4個(gè)上升沿發(fā)生、每16個(gè)上升沿發(fā)生,CCPR1H:CCPR1L就會(huì)捕捉TMR1或TMR3寄存器的16位計(jì)數(shù)值,即記錄下事件發(fā)生的時(shí)刻,使用CCP模塊的這個(gè)功能就可以實(shí)現(xiàn)頻率的測(cè)量。
使用PIC18F452進(jìn)行頻率測(cè)量的原理如圖2所示:設(shè)置CCP模塊工作于捕捉模式,并且讓它在每個(gè)上升沿捕捉一次數(shù)據(jù),由相鄰兩個(gè)上升沿到來(lái)的時(shí)間差就可以得到被測(cè)脈沖的周期,從而也就得到了脈沖的頻率[3]。
圖1 CCP模塊捕捉模式功能圖
圖2 CCP模塊的測(cè)頻原理
2 測(cè)頻儀的軟硬件設(shè)計(jì)
2.1 硬件電路設(shè)計(jì)
測(cè)頻儀的硬件電路主要包括兩個(gè)方面:頻率測(cè)量電路和數(shù)據(jù)通信電路。頻率測(cè)量是指使用PIC18F452的CCP模塊測(cè)量外部脈沖信號(hào)的頻率;數(shù)據(jù)通信是指將測(cè)量得到的數(shù)據(jù)通過(guò)串口傳至PC機(jī)進(jìn)行處理。測(cè)頻儀的硬件電路如圖3所示[4]。
圖3 測(cè)頻儀的硬件電路原理圖
2.2 軟件設(shè)計(jì)
軟件的主要功能就是設(shè)置相關(guān)的功能模塊來(lái)配合硬件實(shí)現(xiàn)頻率的采集與數(shù)據(jù)的上傳,為了達(dá)到實(shí)時(shí)采集的目的,CCP模塊使用中斷方式進(jìn)行捕捉。測(cè)頻儀與PC機(jī)采用主從式通信,PIC18F452根據(jù)PC機(jī)發(fā)來(lái)的不同指令進(jìn)行相關(guān)的操作,指令共有兩種:開(kāi)始采集和停止采集。當(dāng)接收到“開(kāi)始采集”命令時(shí),PIC18F452就啟動(dòng)CCP模塊進(jìn)行頻率的測(cè)量并把測(cè)量結(jié)果通過(guò)串口上傳到PC機(jī);當(dāng)接收到“停止采集”的命令時(shí),PIC18F452就關(guān)閉CCP模塊,同時(shí)停止上傳數(shù)據(jù),然后繼續(xù)等待上位機(jī)的命令。測(cè)頻儀的軟件流程圖如圖4所示[5]。
圖4 軟件流程圖
3 仿真分析
使用軟件仿真的方法不但可以在理論上驗(yàn)證設(shè)計(jì)的可行性,而且也降低了開(kāi)發(fā)的成本和開(kāi)發(fā)難度,這種技術(shù)在基于單片機(jī)的開(kāi)發(fā)中是非常有用的。
Proteus是英國(guó)Labcenter公司開(kāi)發(fā)的一款電路分析與實(shí)物仿真軟件,可以仿真、分析多種模擬器件和集成電路,功能非常強(qiáng)大,同時(shí)該軟件還支持多種型號(hào)的單片機(jī),如AVR,PIC,MCS-51等。更可貴的是該軟件可以與Microchip公司的MPLAB集成開(kāi)發(fā)環(huán)境進(jìn)行無(wú)縫連接,從而也可以進(jìn)行程序的單步調(diào)試,整個(gè)操作也十分簡(jiǎn)單,只要用MPLAB將源程序編譯成HEX文件導(dǎo)入到Proteus中的電路圖中即可繼續(xù)仿真測(cè)試,測(cè)試所用的電路原理圖如圖5所示[6-7]。
圖5 測(cè)頻儀的仿真電路原理圖
關(guān)于這個(gè)仿真原理圖有以下幾點(diǎn)需要說(shuō)明:
(1) 仿真的目的是為了驗(yàn)證所關(guān)心的CCP模塊的工作情況,所以圖中省略了PIC18F452的晶振電路和復(fù)位電路,其實(shí)它們都不會(huì)影響程序運(yùn)行的結(jié)果。
(2) 串口通信部分所使用的仿真元件(COMPIM)不需要進(jìn)行電平轉(zhuǎn)換,只要安裝上虛擬串口并設(shè)置仿真元件的相關(guān)屬性就可以實(shí)現(xiàn)Proteus中的PIC18F452與PC機(jī)進(jìn)行通信,所以圖中省略了MAX232電平轉(zhuǎn)換芯片。
(3) COMPIM僅僅是提供一種物理連接上的映射關(guān)系[8],所以這里的RxD引腳和TxD引腳的連接方式是按照對(duì)應(yīng)關(guān)系連接的,在實(shí)際的硬件電路中還是要按照硬件電路圖(見(jiàn)圖3)去連線。
當(dāng)以上工作進(jìn)行完畢之后,就可以對(duì)設(shè)計(jì)的電路進(jìn)行仿真調(diào)試了,程序的仿真結(jié)果如圖6所示。
圖6 測(cè)頻儀的仿真結(jié)果
從圖6可以看出,PIC18F452已經(jīng)測(cè)出了設(shè)定的幾個(gè)輸入頻率的數(shù)值,仿真結(jié)果表明該方案可行。
4 硬件電路的測(cè)試
仿真通過(guò)之后,就可以按照?qǐng)D3搭建硬件電路來(lái)進(jìn)行硬件的運(yùn)行測(cè)試。在此使用VB 6.0來(lái)編寫(xiě)上位機(jī)軟件,同時(shí)配合Access數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)PIC18F452上傳的頻率數(shù)據(jù)[9-10]。系統(tǒng)的運(yùn)行效果如圖7,圖8所示。
5 結(jié) 語(yǔ)
目前,測(cè)頻儀已經(jīng)被成功地應(yīng)用到了云南天文臺(tái)麗江2.4 m圓頂?shù)臏囟炔杉ぷ髦?。今后還會(huì)對(duì)儀器進(jìn)行擴(kuò)展和完善(例如,在儀器上增加數(shù)據(jù)存儲(chǔ)模塊),到時(shí)該儀器將可以適應(yīng)野外的工作環(huán)境,這對(duì)于即將開(kāi)始的西部望遠(yuǎn)鏡的選址工作具有非常現(xiàn)實(shí)的意義。
參 考 文 獻(xiàn)
[1]DOGAN Ibrahim.PIC項(xiàng)目實(shí)戰(zhàn)[M].北京:人民郵電出版社,2010.
[2]WILMSHURST Tim.PIC嵌入式系統(tǒng)開(kāi)發(fā)[M].北京:人民郵電出版社,2008.
[3]趙化啟,閆廣明,孫小君.零基礎(chǔ)學(xué)PIC單片機(jī)[M].北京:機(jī)械工業(yè)出版社,2010.
[4]周堅(jiān).PIC單片機(jī)輕松入門(mén)[M].北京:北京航空航天大學(xué)出版社,2009.
[5]王洪帥.用于測(cè)量圓頂視寧度的微溫脈動(dòng)儀的研制[J].天文研究與技術(shù),2010,7(1):60-64.
[6]武凌.基于PIC單片機(jī)的直流電壓測(cè)量計(jì)[J].現(xiàn)代電子技術(shù),2003,26(20):9-11.
[7]張亞軍.PIC系列單片機(jī)在低頻率脈沖信號(hào)測(cè)量中的應(yīng)用[J].電子與封裝,2003(3):54-59.
[8]羅洪達(dá).基于Proteus的VB程序與51單片機(jī)串口通信的仿真設(shè)計(jì)[J].電子制作,2008(12):20-22.
[9]劉文濤.Visual Basic+Access數(shù)據(jù)庫(kù)開(kāi)發(fā)與實(shí)例[M].北京:清華大學(xué)出版社,2006.
[10]許永和.Visual Basic接口設(shè)計(jì)與工程實(shí)踐[M].北京:人民郵電出版社,2007.