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