PIC18F452的設(shè)計研究
介紹一種測頻儀的設(shè)計方案,并將此儀器應(yīng)用到云南天文臺麗江2.4m望遠(yuǎn)鏡圓頂溫度的測量工作中。詳細(xì)闡述了PIC18F452自帶的CCP模塊的測頻原理,同時給出了儀器軟硬件的設(shè)計思路,最后在Proteus中對系統(tǒng)進(jìn)行了仿真測試。測試結(jié)果表明了該方案的可行性。該儀器的研制也為西部望遠(yuǎn)鏡的選址工作提供了一種有效的測量工具。
本文引用地址:http://www.ex-cimer.com/article/194386.htm通過頻率的測量來間接地獲取溫度數(shù)據(jù)是檢測天文望遠(yuǎn)鏡圓頂溫度的常用方法。頻率信號不但具有較強(qiáng)的抗干擾能力,而且易于傳輸。因此將望遠(yuǎn)鏡圓頂附近的溫度傳感器所產(chǎn)生的電信號轉(zhuǎn)換為頻率信號,然后對頻率信號進(jìn)行測量和采集,最終再通過一些確定的函數(shù)關(guān)系把頻率值轉(zhuǎn)換為溫度值。該方案與直接測量溫度的方法相比,可操作性更強(qiáng)。
PIC18F452是美國Microchip公司生產(chǎn)的一款高性能的8位單片機(jī),其片上資源十分豐富,本文設(shè)計的測頻儀就是使用該單片機(jī)的CCP1(捕捉/比較/脈寬調(diào)制)模塊的捕捉功能來實現(xiàn)的,CCP1模塊工作在捕捉模式下的功能框圖如圖1所示。
在捕捉模式下,每當(dāng)CCP引腳上有下列事件之一發(fā)生時:每個下降沿發(fā)生、每個上升沿發(fā)生、每4個上升沿發(fā)生、每16個上升沿發(fā)生,CCP R1H:CCPR1L就會捕捉TMR1或TMR3寄存器的16位計數(shù)值,即記錄下事件發(fā)生的時刻,使用CCP模塊的這個功能就可以實現(xiàn)頻率的測量。
使用PIC18F452進(jìn)行頻率測量的原理如圖2所示:設(shè)置CCP模塊工作于捕捉模式,并且讓它在每個上升沿捕捉一次數(shù)據(jù),由相鄰兩個上升沿到來的時間差就可以得到被測脈沖的周期,從而也就得到了脈沖的頻率。
2 測頻儀的軟硬件設(shè)計
2.1 硬件電路設(shè)計
測頻儀的硬件電路主要包括兩個方面:頻率測量電路和數(shù)據(jù)通信電路。頻率測量是指使用PIC18F452的CCP模塊測量外部脈沖信號的頻率;數(shù)據(jù)通信是指將測量得到的數(shù)據(jù)通過串口傳至PC機(jī)進(jìn)行處理。測頻儀的硬件電路如圖3所示。
2.2 軟件設(shè)計
軟件的主要功能就是設(shè)置相關(guān)的功能模塊來配合硬件實現(xiàn)頻率的采集與數(shù)據(jù)的上傳,為了達(dá)到實時采集的目的,CCP模塊使用中斷方式進(jìn)行捕捉。測頻儀與PC機(jī)采用主從式通信,PIC18F452根據(jù)PC機(jī)發(fā)來的不同指令進(jìn)行相關(guān)的操作,指令共有兩種:開始采集和停止采集。當(dāng)接收到“開始采集”命令時,PIC18F452就啟動CCP模塊進(jìn)行頻率的測量并把測量結(jié)果通過串口上傳到PC機(jī);當(dāng)接收到“停止采集”的命令時,PIC18F452就關(guān)閉CCP模塊,同時停止上傳數(shù)據(jù),然后繼續(xù)等待上位機(jī)的命令。測頻儀的軟件流程圖如圖4所示。
3 仿真分析
使用軟件仿真的方法不但可以在理論上驗證設(shè)計的可行性,而且也降低了開發(fā)的成本和開發(fā)難度,這種技術(shù)在基于單片機(jī)的開發(fā)中是非常有用的。
Proteus是英國Labcenter公司開發(fā)的一款電路分析與實物仿真軟件,可以仿真、分析多種模擬器件和集成電路,功能非常強(qiáng)大,同時該軟件還支持多種型號的單片機(jī),如AVR,PIC,MCS-51等。更可貴的是該軟件可以與Microchip公司的MPLAB集成開發(fā)環(huán)境進(jìn)行無縫連接,從而也可以進(jìn)行程序的單步調(diào)試,整個操作也十分簡單,只要用MPLAB將源程序編譯成HEX文件導(dǎo)人到Proteus中的電路圖中即可繼續(xù)仿真測試,測試所用的電路原理圖如圖5所示。
關(guān)于這個仿真原理圖有以下幾點(diǎn)需要說明:
(1)仿真的目的是為了驗證所關(guān)心的CCP模塊的工作情況,所以圖中省略了PIC18F452的晶振電路和復(fù)位電路,其實它們都不會影響程序運(yùn)行的結(jié)果。
(2)串口通信部分所使用的仿真元件(COMPIM)不需要進(jìn)行電平轉(zhuǎn)換,只要安裝上虛擬串口并設(shè)置仿真元件的相關(guān)屬性就可以實現(xiàn)Proteus中的PIC18F452與PC機(jī)進(jìn)行通信,所以圖中省略了MAX232電平轉(zhuǎn)換芯片。
(3)COMPIM僅僅是提供一種物理連接上的映射關(guān)系,所以這里的RxD引腳和TxD引腳的連接方式是按照對應(yīng)關(guān)系連接的,在實際的硬件電路中還是要按照硬件電路圖(見圖3)去連線。
當(dāng)以上工作進(jìn)行完畢之后,就可以對設(shè)計的電路進(jìn)行仿真調(diào)試了,程序的仿真結(jié)果如圖6所示。
從圖6可以看出,PIC18F452已經(jīng)測出了設(shè)定的幾個輸入頻率的數(shù)值,仿真結(jié)果表明該方案可行。
4 硬件電路的測試
仿真通過之后,就可以按照圖3搭建硬件電路來進(jìn)行硬件的運(yùn)行測試。在此使用VB 6.0來編寫上位機(jī)軟件,同時配合Access數(shù)據(jù)庫來存儲PIC18F452上傳的頻率數(shù)據(jù)。系統(tǒng)的運(yùn)行效果如圖7,圖8所示。
5 結(jié)語
目前,測頻儀已經(jīng)被成功地應(yīng)用到了云南天文臺麗江2.4 m圓頂?shù)臏囟炔杉ぷ髦?。今后還會對儀器進(jìn)行擴(kuò)展和完善(例如,在儀器上增加數(shù)據(jù)存儲模塊),到時該儀器將可以適應(yīng)野外的工作環(huán)境,這對于即將開始的西部望遠(yuǎn)鏡的選址工作具有非?,F(xiàn)實的意義。
評論