摘 要:給出基于8098單片機的脈沖測量儀的硬件、 軟件及 抗干擾措施。實際使用證明該測量儀穩定、可靠、精度高、測量速度快。 關鍵詞:脈沖測量;8098單片機;高速輸入/輸出通道(HSI/HSO )
1測量原理 8098單片機具有性能十分優良的高速輸入輸出通道,HSO0~HSO5為高速輸出通道,能產 生輸出寬度與周期均可調的脈沖波(PWM)。HSI0~HSI3為高速輸入通道,CPU通過它們可 以同時接受來自外部的4個脈沖信號,并且隨時記錄脈沖信號中的高、低電平出現的時間, 非常適用于對脈沖參數的檢測。 以高速輸入通道HSI為例,HSI部件有自己的中斷功能,當控制寄存器IOC1,7=1時,F IFO存儲區裝滿事件后發出中斷請求,如果IOC1,7=0,則保持寄存器在裝入事件后發 出中斷請求,兩種原因引起的中斷請求可通過查詢狀態寄存器IOS1而鑒別:如果FIFO 存儲區滿時,IOS1,6=1,反之,IOS1,6=0;如果保持寄存器內有值時,IOS 1,7=1,反之,IOS1,7=0。同時,HSI0也有自己的中斷,只要HSI0引腳 上有事件發生,便可以提出中斷請求。HSI有方式寄存器HSIMODE、狀態寄存器HSI STATUS和時間寄存器HSITIME。HSI的方式寄存器HSIMODE可以 規定每個通道的四種工作方式如下: ①方式0:每8次正跳變后即觸發; ②方式1:每次正跳變時即觸發; ③方式2:每次負跳變時即觸發; ④方式3:每次跳變(正或負)時即觸發。 跳變檢測器按HSIMODE寄存器規定的工作方式對HSI0~HSI3共4個通道的輸入 信號進行監視與檢測,并將有關引腳電平狀態的檢測結果送狀態寄存器HSISTATUS ,同時還將有關事件是否發生的信息送入FIFO單元。時間寄存器HSITIME的內容為 事件發生時記錄下來的定時器T1的當前值。 1.1硬件電路 圖1是由8098單片機組成的脈沖測量儀的電路原理圖。脈沖測量的結果由8個數碼管顯示,左 邊4個用于脈沖寬度(μs)的顯示,右邊4個用于脈沖周期(μs)的顯示。

顯示電路由數碼管(CS5137T)、數據鎖存器(74LS273)、譯碼器(74LS138)和驅動電路(74LS48 )等組成。 脈沖測量儀的輸入端,即單片機的HSI0引腳與脈沖信號發生器的輸出端(Vout)連接 ,單片機的Vss與脈沖信號發生器的GND相連。 1.2軟件設計 整個軟件由兩大部分組成:主程序和HSI位0中斷服務程序。主程序如下: HSI位0中斷服務程序的框圖如圖2所示。
 
在脈沖測量過程中,有時會出現這種情況,即連續發生兩個事件的時間間隔(如窄脈沖)很短 時,此時如果一個通道測外部發生的事件,則這個通道正在處理第一個事件時,不可能響應 第二個事件,要解決這樣的問題,可以用多通道測量法。比如,采用兩個高速輸入通道(如H SI0和HSI1),一個用于測量外來信號的上升沿,另一個用于測量外來信號的下降沿,即 一個通道工作于方式1,另一個通道工作于方式2,彼此分工協作,共同完成脈沖寬度和周期 的測定,但須重新編輯與之相應的軟件。
2系統中的抗干擾措施 系統中有一個16位的看門狗(WDT)硬件定時電路,當系統復位時,WDT停止工作,可在軟件中 設定WDT清零指令,當軟件運行時即起動WDT,如果軟件有故障時,會造成WDT溢出而復位, 從而防止程序跑飛。另外,單片機的電源采用了隔離變壓器和低通濾波網絡。在單 片機的復位電路中,為防止毛刺和雜波的干擾,在其RESET引腳與地之間,接入了一個提高 抗干擾能力的容值很小的電容。同時,8098單片機為提高供電的可靠性,其Vpd還單 獨接到一個+5V的電池上,一旦+Vcc消失時,可以起到掉電保護的作用。
3結束語 本系統經過使用,具有穩定、可靠、精度高、測量速度快等特點。在硬件上不需作改變,只 是將脈沖發生器的輸出Vout同時接到單片機的HSI0和HSI1,再運行相應的程序即 可對連續發生的兩個事件在時間間隔(如窄脈沖)很短時的連續脈沖使用多通道法進行測量。
參考文獻
[1]方建淳.8098單片機原理與應用技術[M].天津:天津科學技術出版社,1990 . [2]余永權,汪明慧,黃英.單片機在控制系統中的應用[M].北京:北京航空航 天大學出版社,2003. [3]李恩林,陳斌生.微機接口技術300例[M].北京:機械工業出版社,2003. |